From 9cd1e599ee58d84fd294559a86121dc51a2e1229 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:07 +0000 Subject: [PATCH 01/29] feat(aiplatform)!: update the API BREAKING CHANGE: This release has breaking changes. #### aiplatform:v1beta1 The following keys were deleted: - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.id - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.path - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.id - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.path - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.id - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.path - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.get.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.id - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.filter.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.filter.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.filter.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.format - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageToken.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageToken.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.returnPartialSuccess.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.returnPartialSuccess.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.returnPartialSuccess.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.path - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.list.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.id - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.format - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.path - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.scopes - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.flatPath - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.httpMethod - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.id - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameterOrder - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.pattern - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.required - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.parameters.name.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.path - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.response.$ref - resources.semanticGovernancePolicyEngine.resources.operations.methods.cancel.scopes - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.flatPath - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.httpMethod - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.id - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameterOrder - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.pattern - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.required - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.parameters.name.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.path - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.response.$ref - resources.semanticGovernancePolicyEngine.resources.operations.methods.delete.scopes - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.flatPath - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.httpMethod - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.id - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameterOrder - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.pattern - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.required - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.parameters.name.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.path - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.response.$ref - resources.semanticGovernancePolicyEngine.resources.operations.methods.get.scopes - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.flatPath - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.httpMethod - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.id - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameterOrder - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.filter.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.filter.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.filter.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.pattern - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.required - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.name.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.format - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageSize.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageToken.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageToken.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.pageToken.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.returnPartialSuccess.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.returnPartialSuccess.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.parameters.returnPartialSuccess.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.path - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.response.$ref - resources.semanticGovernancePolicyEngine.resources.operations.methods.list.scopes - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.flatPath - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.httpMethod - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.id - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameterOrder - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.pattern - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.required - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.name.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.description - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.format - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.location - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.parameters.timeout.type - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.path - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.response.$ref - resources.semanticGovernancePolicyEngine.resources.operations.methods.wait.scopes - schemas.GenaiVertexV1beta1ArgumentsDelta.properties.partial_arguments.type - schemas.GenaiVertexV1beta1ResponseFormat.properties.video.$ref - schemas.GenaiVertexV1beta1UserInputStep.properties.content.items.$ref - schemas.GenaiVertexV1beta1UserInputStep.properties.content.type - schemas.GenaiVertexV1beta1VideoResponseFormat.description - schemas.GenaiVertexV1beta1VideoResponseFormat.id - schemas.GenaiVertexV1beta1VideoResponseFormat.type The following keys were added: - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.description - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.flatPath - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.httpMethod - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.id - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.parameterOrder - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.parameters.name.description - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.parameters.name.location - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.parameters.name.pattern - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.parameters.name.required - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.parameters.name.type - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.path - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.response.$ref - resources.projects.resources.locations.methods.getSemanticGovernancePolicyEngine.scopes - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.description - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.flatPath - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.httpMethod - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.id - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameterOrder - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.name.description - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.name.location - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.name.pattern - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.name.required - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.name.type - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.updateMask.description - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.updateMask.format - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.updateMask.location - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.parameters.updateMask.type - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.path - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.request.$ref - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.response.$ref - resources.projects.resources.locations.methods.updateSemanticGovernancePolicyEngine.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.id - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.parent.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.parent.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.parent.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.parent.required - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.parent.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.semanticGovernancePolicyId.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.semanticGovernancePolicyId.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.parameters.semanticGovernancePolicyId.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.path - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.request.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.create.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.id - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.etag.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.etag.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.etag.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.path - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.delete.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.id - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.path - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.get.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.id - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageSize.format - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageSize.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageSize.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageToken.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.pageToken.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.parent.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.parent.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.parent.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.parent.required - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.parameters.parent.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.path - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.list.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.id - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.updateMask.format - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.updateMask.location - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.parameters.updateMask.type - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.path - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.request.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicies.methods.patch.scopes - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.flatPath - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.httpMethod - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.id - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.parameterOrder - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.parameters.name.description - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.parameters.name.location - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.parameters.name.pattern - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.parameters.name.required - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.parameters.name.type - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.path - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.request.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.response.$ref - resources.projects.resources.locations.resources.semanticGovernancePolicyEngine.methods.deprovision.scopes - resources.projects.resources.locations.resources.tuningJobs.methods.processData.description - resources.projects.resources.locations.resources.tuningJobs.methods.processData.flatPath - resources.projects.resources.locations.resources.tuningJobs.methods.processData.httpMethod - resources.projects.resources.locations.resources.tuningJobs.methods.processData.id - resources.projects.resources.locations.resources.tuningJobs.methods.processData.parameterOrder - resources.projects.resources.locations.resources.tuningJobs.methods.processData.parameters.parent.description - resources.projects.resources.locations.resources.tuningJobs.methods.processData.parameters.parent.location - resources.projects.resources.locations.resources.tuningJobs.methods.processData.parameters.parent.pattern - resources.projects.resources.locations.resources.tuningJobs.methods.processData.parameters.parent.required - resources.projects.resources.locations.resources.tuningJobs.methods.processData.parameters.parent.type - resources.projects.resources.locations.resources.tuningJobs.methods.processData.path - resources.projects.resources.locations.resources.tuningJobs.methods.processData.request.$ref - resources.projects.resources.locations.resources.tuningJobs.methods.processData.response.$ref - resources.projects.resources.locations.resources.tuningJobs.methods.processData.scopes - schemas.CloudAiLargeModelsVisionGenerateVideoExperiments.properties.originalRequestJson.description - schemas.CloudAiLargeModelsVisionGenerateVideoExperiments.properties.originalRequestJson.type - schemas.GenaiVertexV1beta1ArgumentsDelta.properties.arguments.type - schemas.GenaiVertexV1beta1EnvironmentConfig.description - schemas.GenaiVertexV1beta1EnvironmentConfig.id - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.networkAllowlist.$ref - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.networkAllowlist.description - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.networkMode.description - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.networkMode.enum - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.networkMode.enumDescriptions - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.networkMode.type - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.sources.items.$ref - schemas.GenaiVertexV1beta1EnvironmentConfig.properties.sources.type - schemas.GenaiVertexV1beta1EnvironmentConfig.type - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.description - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.id - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.properties.domain.description - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.properties.domain.type - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.properties.transform.additionalProperties.type - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.properties.transform.description - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.properties.transform.type - schemas.GenaiVertexV1beta1EnvironmentConfigEgressRule.type - schemas.GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist.description - schemas.GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist.id - schemas.GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist.properties.allowlist.description - schemas.GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist.properties.allowlist.items.$ref - schemas.GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist.properties.allowlist.type - schemas.GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist.type - schemas.GenaiVertexV1beta1EnvironmentConfigSource.description - schemas.GenaiVertexV1beta1EnvironmentConfigSource.id - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.content.description - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.content.type - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.encoding.description - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.encoding.type - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.source.description - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.source.type - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.target.description - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.target.type - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.type.enum - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.type.enumDescriptions - schemas.GenaiVertexV1beta1EnvironmentConfigSource.properties.type.type - schemas.GenaiVertexV1beta1EnvironmentConfigSource.type - schemas.GenaiVertexV1beta1GenerationConfig.properties.image_config.deprecated - schemas.GenaiVertexV1beta1Interaction.properties.env_id.description - schemas.GenaiVertexV1beta1Interaction.properties.env_id.type - schemas.GenaiVertexV1beta1Interaction.properties.environment_id.description - schemas.GenaiVertexV1beta1Interaction.properties.environment_id.readOnly - schemas.GenaiVertexV1beta1Interaction.properties.environment_id.type - schemas.GenaiVertexV1beta1Interaction.properties.remoteEnvironment.$ref - schemas.GenaiVertexV1beta1Interaction.properties.response_mime_type.deprecated - schemas.GenaiVertexV1beta1InteractionStreamingEvent.properties.metadata.$ref - schemas.GenaiVertexV1beta1InteractionStreamingEvent.properties.metadata.description - schemas.GenaiVertexV1beta1ServerToolCallDelta.id - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.codeExecutionCall.$ref - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.fileSearchCall.$ref - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.googleMapsCall.$ref - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.googleSearchCall.$ref - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.mcpServerToolCall.$ref - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.signature.description - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.signature.format - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.signature.type - schemas.GenaiVertexV1beta1ServerToolCallDelta.properties.urlContextCall.$ref - schemas.GenaiVertexV1beta1ServerToolCallDelta.type - schemas.GenaiVertexV1beta1ServerToolResultDelta.id - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.codeExecutionResult.$ref - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.fileSearchResult.$ref - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.googleMapsResult.$ref - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.googleSearchResult.$ref - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.mcpServerToolResult.$ref - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.signature.description - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.signature.format - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.signature.type - schemas.GenaiVertexV1beta1ServerToolResultDelta.properties.urlContextResult.$ref - schemas.GenaiVertexV1beta1ServerToolResultDelta.type - schemas.GenaiVertexV1beta1StepDeltaData.properties.functionResult.$ref - schemas.GenaiVertexV1beta1StepDeltaData.properties.serverToolCall.$ref - schemas.GenaiVertexV1beta1StepDeltaData.properties.serverToolResult.$ref - schemas.GenaiVertexV1beta1StreamMetadata.id - schemas.GenaiVertexV1beta1StreamMetadata.properties.usage.$ref - schemas.GenaiVertexV1beta1StreamMetadata.type - schemas.GenaiVertexV1beta1UserInputStep.properties.contentList.$ref - schemas.GenaiVertexV1beta1UserInputStep.properties.contentList.description - schemas.GenaiVertexV1beta1UserInputStep.properties.contentString.description - schemas.GenaiVertexV1beta1UserInputStep.properties.contentString.type - schemas.GoogleCloudAiplatformV1beta1DeprovisionSemanticGovernancePolicyEngineRequest.description - schemas.GoogleCloudAiplatformV1beta1DeprovisionSemanticGovernancePolicyEngineRequest.id - schemas.GoogleCloudAiplatformV1beta1DeprovisionSemanticGovernancePolicyEngineRequest.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.id - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.dnsRecord.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.dnsRecord.readOnly - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.dnsRecord.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.dnsZoneName.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.dnsZoneName.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.ipAddress.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.ipAddress.readOnly - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.ipAddress.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.network.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.network.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.pscEndpoint.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.pscEndpoint.readOnly - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.pscEndpoint.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.state.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.state.enum - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.state.enumDescriptions - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.state.readOnly - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.state.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.subnetwork.description - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.properties.subnetwork.type - schemas.GoogleCloudAiplatformV1beta1GatewayConfig.type - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.description - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.id - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.properties.nextPageToken.description - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.properties.nextPageToken.type - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.properties.semanticGovernancePolicies.description - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.properties.semanticGovernancePolicies.items.$ref - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.properties.semanticGovernancePolicies.type - schemas.GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse.type - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.description - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.id - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.properties.gcsDestination.$ref - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.properties.gcsDestination.description - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.properties.gcsSource.$ref - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.properties.gcsSource.description - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.properties.veoSpec.$ref - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.properties.veoSpec.description - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequest.type - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.description - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.id - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.properties.processType.description - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.properties.processType.enum - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.properties.processType.enumDescriptions - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.properties.processType.type - schemas.GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec.type - schemas.GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateDefaultContainerEnvironment.properties.resources.$ref - schemas.GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateDefaultContainerEnvironment.properties.resources.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.id - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.agent.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.agent.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.agentIdentity.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.agentIdentity.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.agentIdentity.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.createTime.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.createTime.format - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.createTime.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.createTime.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.description.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.description.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.displayName.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.displayName.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.etag.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.etag.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.mcpTools.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.mcpTools.items.$ref - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.mcpTools.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.name.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.name.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.naturalLanguageConstraint.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.naturalLanguageConstraint.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.updateTime.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.updateTime.format - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.updateTime.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.properties.updateTime.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicy.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.id - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.createTime.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.createTime.format - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.createTime.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.createTime.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.gatewayConfigs.additionalProperties.$ref - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.gatewayConfigs.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.gatewayConfigs.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.ipAddress.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.ipAddress.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.ipAddress.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.name.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.name.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.pscForwardingRule.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.pscForwardingRule.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.pscForwardingRule.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.pscServiceAttachment.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.pscServiceAttachment.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.pscServiceAttachment.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.state.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.state.enum - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.state.enumDescriptions - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.state.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.state.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.targetProject.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.targetProject.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.updateTime.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.updateTime.format - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.updateTime.readOnly - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.properties.updateTime.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.id - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.properties.mcpServer.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.properties.mcpServer.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.properties.tools.description - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.properties.tools.items.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.properties.tools.type - schemas.GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool.type - schemas.GoogleCloudAiplatformV1beta1Tool.properties.exaAiSearch.$ref - schemas.GoogleCloudAiplatformV1beta1Tool.properties.exaAiSearch.description - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.description - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.id - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.properties.apiKey.description - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.properties.apiKey.type - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.properties.customConfigs.additionalProperties.description - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.properties.customConfigs.additionalProperties.type - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.properties.customConfigs.description - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.properties.customConfigs.type - schemas.GoogleCloudAiplatformV1beta1ToolExaAiSearch.type The following keys were changed: - resources.projects.resources.locations.resources.agents.methods.create.description - resources.projects.resources.locations.resources.agents.methods.delete.description - resources.projects.resources.locations.resources.agents.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.agents.methods.get.description - resources.projects.resources.locations.resources.agents.methods.get.parameters.name.description - resources.projects.resources.locations.resources.agents.methods.list.description - resources.projects.resources.locations.resources.agents.methods.list.parameters.orderBy.description - resources.projects.resources.locations.resources.agents.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.agents.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.agents.methods.list.parameters.parent.description - resources.projects.resources.locations.resources.agents.methods.patch.description - resources.projects.resources.locations.resources.agents.methods.patch.parameters.name.description - resources.projects.resources.locations.resources.agents.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.reasoningEngines.resources.memories.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.skills.methods.create.parameters.skillId.description - resources.reasoningEngines.resources.memories.methods.patch.parameters.updateMask.description - schemas.GenaiVertexV1beta1AudioResponseFormat.properties.delivery.enum - schemas.GenaiVertexV1beta1AudioResponseFormat.properties.delivery.enumDescriptions - schemas.GenaiVertexV1beta1ImageResponseFormat.properties.delivery.enum - schemas.GenaiVertexV1beta1ImageResponseFormat.properties.delivery.enumDescriptions - schemas.GenaiVertexV1beta1Interaction.properties.status.enum - schemas.GenaiVertexV1beta1Interaction.properties.status.enumDescriptions - schemas.GenaiVertexV1beta1Interaction.properties.steps.description - schemas.GenaiVertexV1beta1InteractionStatusUpdate.properties.status.enum - schemas.GenaiVertexV1beta1InteractionStatusUpdate.properties.status.enumDescriptions - schemas.GoogleCloudAiplatformV1beta1Agent.properties.base_agent.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.base_environment.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.created.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.id.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.metadata.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.name.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.object.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.system_instruction.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.tools.description - schemas.GoogleCloudAiplatformV1beta1Agent.properties.updated.description - schemas.GoogleCloudAiplatformV1beta1AgentTool.description - schemas.GoogleCloudAiplatformV1beta1AgentTool.properties.headers.description - schemas.GoogleCloudAiplatformV1beta1AgentTool.properties.name.description - schemas.GoogleCloudAiplatformV1beta1AgentTool.properties.type.description - schemas.GoogleCloudAiplatformV1beta1AgentTool.properties.url.description - schemas.GoogleCloudAiplatformV1beta1ListAgentsResponse.properties.agents.description - schemas.GoogleCloudAiplatformV1beta1ListAgentsResponse.properties.nextPageToken.description - schemas.GoogleCloudAiplatformV1beta1PersistentDiskSpec.description - schemas.GoogleCloudAiplatformV1beta1PersistentDiskSpec.properties.diskType.description - schemas.GoogleCloudAiplatformV1beta1SkillRevision.properties.skill.description #### aiplatform:v1 The following keys were added: - schemas.CloudAiLargeModelsVisionGenerateVideoExperiments.properties.originalRequestJson.description - schemas.CloudAiLargeModelsVisionGenerateVideoExperiments.properties.originalRequestJson.type - schemas.GoogleCloudAiplatformV1CreateServingProfileOperationMetadata.description - schemas.GoogleCloudAiplatformV1CreateServingProfileOperationMetadata.id - schemas.GoogleCloudAiplatformV1CreateServingProfileOperationMetadata.properties.genericMetadata.$ref - schemas.GoogleCloudAiplatformV1CreateServingProfileOperationMetadata.properties.genericMetadata.description - schemas.GoogleCloudAiplatformV1CreateServingProfileOperationMetadata.properties.genericMetadata.readOnly - schemas.GoogleCloudAiplatformV1CreateServingProfileOperationMetadata.type - schemas.GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment.properties.resources.$ref - schemas.GoogleCloudAiplatformV1SandboxEnvironmentTemplateDefaultContainerEnvironment.properties.resources.description - schemas.GoogleCloudAiplatformV1Tool.properties.exaAiSearch.$ref - schemas.GoogleCloudAiplatformV1Tool.properties.exaAiSearch.description - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.description - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.id - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.properties.apiKey.description - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.properties.apiKey.type - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.properties.customConfigs.additionalProperties.description - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.properties.customConfigs.additionalProperties.type - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.properties.customConfigs.description - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.properties.customConfigs.type - schemas.GoogleCloudAiplatformV1ToolExaAiSearch.type The following keys were changed: - resources.projects.resources.locations.resources.reasoningEngines.resources.memories.methods.patch.parameters.updateMask.description - schemas.GoogleCloudAiplatformV1PersistentDiskSpec.description - schemas.GoogleCloudAiplatformV1PersistentDiskSpec.properties.diskType.description --- discovery/aiplatform-v1.json | 51 +- discovery/aiplatform-v1beta1.json | 1210 ++++++++++++++++++++--------- src/apis/aiplatform/v1.ts | 42 +- 3 files changed, 911 insertions(+), 392 deletions(-) diff --git a/discovery/aiplatform-v1.json b/discovery/aiplatform-v1.json index a641b00c5b..622d8b9af4 100644 --- a/discovery/aiplatform-v1.json +++ b/discovery/aiplatform-v1.json @@ -22751,7 +22751,7 @@ "type": "string" }, "updateMask": { - "description": "Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact`", + "description": "Optional. Mask specifying which fields to update. The following fields are immutable: * `scope` * `memory_type`", "format": "google-fieldmask", "location": "query", "type": "string" @@ -32357,7 +32357,7 @@ } } }, - "revision": "20260509", + "revision": "20260523", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { "CloudAiLargeModelsVisionGenerateVideoExperiments": { @@ -32398,6 +32398,10 @@ "format": "int32", "type": "integer" }, + "originalRequestJson": { + "description": "The original REST API request JSON sent by the user, in the instances/parameters format. Preserved for saving alongside output artifacts so users can reproduce their requests. This field is populated by the API handler and is not user-settable.", + "type": "string" + }, "promptInputs": { "$ref": "CloudAiLargeModelsVisionPromptInputs", "description": "Prompt chunks for \"ProModel\" prompting. If set, the prompt will not be rewritten, and top-level prompt ignored." @@ -36063,6 +36067,18 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1CreateServingProfileOperationMetadata": { + "description": "Runtime operation metadata for ServingProfileService.CreateServingProfile.", + "id": "GoogleCloudAiplatformV1CreateServingProfileOperationMetadata", + "properties": { + "genericMetadata": { + "$ref": "GoogleCloudAiplatformV1GenericOperationMetadata", + "description": "Output only. The standard operation metadata for Vertex AI.", + "readOnly": true + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1CreateSpecialistPoolOperationMetadata": { "description": "Runtime operation information for SpecialistPoolService.CreateSpecialistPool.", "id": "GoogleCloudAiplatformV1CreateSpecialistPoolOperationMetadata", @@ -50959,7 +50975,7 @@ "type": "object" }, "GoogleCloudAiplatformV1PersistentDiskSpec": { - "description": "Represents the spec of persistent disk options.", + "description": "Represents the spec of persistent disk and hyperdisk options.", "id": "GoogleCloudAiplatformV1PersistentDiskSpec", "properties": { "diskSizeGb": { @@ -50968,7 +50984,7 @@ "type": "string" }, "diskType": { - "description": "Type of the disk (default is \"pd-standard\"). Valid values: \"pd-ssd\" (Persistent Disk Solid State Drive) \"pd-standard\" (Persistent Disk Hard Disk Drive) \"pd-balanced\" (Balanced Persistent Disk) \"pd-extreme\" (Extreme Persistent Disk)", + "description": "Type of the disk (default is \"pd-standard\"). Valid values: \"pd-ssd\" (Persistent Disk Solid State Drive) \"pd-standard\" (Persistent Disk Hard Disk Drive) \"pd-balanced\" (Balanced Persistent Disk) \"pd-extreme\" (Extreme Persistent Disk) \"hyperdisk-balanced\" (Hyperdisk Balanced) \"hyperdisk-extreme\" (Hyperdisk Extreme) \"hyperdisk-balanced-high-availability\" (Hyperdisk Balanced High Availability) \"hyperdisk-ml\" (Hyperdisk ML) \"hyperdisk-throughput\" (Hyperdisk Throughput)", "type": "string" } }, @@ -55998,6 +56014,10 @@ "The default container image for Computer Use." ], "type": "string" + }, + "resources": { + "$ref": "GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements", + "description": "Optional. Resource requests and limits for the default container." } }, "type": "object" @@ -63186,6 +63206,10 @@ "$ref": "GoogleCloudAiplatformV1EnterpriseWebSearch", "description": "Optional. Tool to support searching public web data, powered by Vertex AI Search and Sec4 compliance." }, + "exaAiSearch": { + "$ref": "GoogleCloudAiplatformV1ToolExaAiSearch", + "description": "Optional. Uses Exa.ai to search for information to answer user queries. The search results will be grounded on Exa.ai and presented to the model for response generation" + }, "functionDeclarations": { "description": "Optional. Function tool type. One or more function declarations to be passed to the model along with the current user query. Model may decide to call a subset of these functions by populating FunctionCall in the response. User should provide a FunctionResponse for each function call in the next turn. Based on the function responses, Model will generate the final response back to the user. Maximum 512 function declarations can be provided.", "items": { @@ -63350,6 +63374,25 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1ToolExaAiSearch": { + "description": "ExaAiSearch tool type. A tool that uses the Exa.ai search engine for grounding.", + "id": "GoogleCloudAiplatformV1ToolExaAiSearch", + "properties": { + "apiKey": { + "description": "Required. The API key for ExaAiSearch.", + "type": "string" + }, + "customConfigs": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field can be used to pass any parameter from the Exa.ai Search API.", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1ToolGoogleSearch": { "description": "GoogleSearch tool type. Tool to support Google Search in Model. Powered by Google.", "id": "GoogleCloudAiplatformV1ToolGoogleSearch", diff --git a/discovery/aiplatform-v1beta1.json b/discovery/aiplatform-v1beta1.json index 5ab500959a..bc03fbe70f 100644 --- a/discovery/aiplatform-v1beta1.json +++ b/discovery/aiplatform-v1beta1.json @@ -8951,6 +8951,31 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getSemanticGovernancePolicyEngine": { + "description": "Gets a SemanticGovernancePolicyEngine. A SemanticGovernancePolicyEngine is a singleton resource that is created when its parent is created, and deleted when its parent is deleted. This method retrieves the current state of the Semantic Governance Policy Engine.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.getSemanticGovernancePolicyEngine", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SemanticGovernancePolicyEngine to retrieve. Format: projects/{project}/locations/{location}/semanticGovernancePolicyEngine", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "list": { "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", @@ -9081,13 +9106,47 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "updateSemanticGovernancePolicyEngine": { + "description": "Updates a SemanticGovernancePolicyEngine. This method performs an upsert operation. If the SemanticGovernancePolicyEngine resource does not exist, it will be created. Otherwise, it will be updated.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.updateSemanticGovernancePolicyEngine", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. The resource name of the SemanticGovernancePolicyEngine. Format: projects/{project}/locations/{location}/semanticGovernancePolicyEngine", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Specifies the fields to be overwritten in the SemanticGovernancePolicyEngine resource by the update. The fields specified in the update_mask are relative to the resource itself. If no update_mask is provided, all fields are overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { "agents": { "methods": { "create": { - "description": "Creates a new Agent in a given location.", + "description": "Creates an agent.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agents", "httpMethod": "POST", "id": "aiplatform.projects.locations.agents.create", @@ -9115,7 +9174,7 @@ ] }, "delete": { - "description": "Deletes the specific Agent.", + "description": "Deletes an agent.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}", "httpMethod": "DELETE", "id": "aiplatform.projects.locations.agents.delete", @@ -9124,7 +9183,7 @@ ], "parameters": { "name": { - "description": "Required. The resource name of the agent. Format: `projects/{project}/locations/{location}/agents/{agent}`", + "description": "Required. The resource name of the agent to delete. Format: `projects/{project}/locations/{location}/agents/{agent}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$", "required": true, @@ -9140,7 +9199,7 @@ ] }, "get": { - "description": "Gets details of the specific Agent.", + "description": "Retrieves an agent.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}", "httpMethod": "GET", "id": "aiplatform.projects.locations.agents.get", @@ -9149,7 +9208,7 @@ ], "parameters": { "name": { - "description": "Required. The resource name of the agent. Format: `projects/{project}/locations/{location}/agents/{agent}`.", + "description": "Required. The resource name of the agent to retrieve. Format: `projects/{project}/locations/{location}/agents/{agent}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$", "required": true, @@ -9165,7 +9224,7 @@ ] }, "list": { - "description": "Lists Agents in a given location.", + "description": "Lists agents in a location.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agents", "httpMethod": "GET", "id": "aiplatform.projects.locations.agents.list", @@ -9174,23 +9233,23 @@ ], "parameters": { "orderBy": { - "description": "Optional. A comma-separated list of fields to order by, sorted in ascending order. Use \"desc\" after a field name for descending. Supported fields: * `create_time` * `update_time` Example: `create_time desc`.", + "description": "Optional. A comma-separated list of fields to order by. Supported fields: * `create_time` * `update_time` Use `desc` after a field name for descending order. Example: `create_time desc`.", "location": "query", "type": "string" }, "pageSize": { - "description": "Optional. The maximum number of agents to return. The service may return fewer than this value. If unspecified, at most 100 agents will be returned.", + "description": "Optional. The maximum number of agents to return. The service may return fewer than this value. The maximum page size is 100; values above 100 will be coerced to 100. If unspecified, the default page size is 10.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list AgentService.ListAgents call.", + "description": "Optional. A page token, received from a previous AgentService.ListAgents call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The resource name of the location to list agents from. Format: `projects/{project}/locations/{location}", + "description": "Required. The resource name of the location to list agents from. Format: `projects/{project}/locations/{location}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+$", "required": true, @@ -9206,7 +9265,7 @@ ] }, "patch": { - "description": "Updates the specific Agent.", + "description": "Updates an agent.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}", "httpMethod": "PATCH", "id": "aiplatform.projects.locations.agents.patch", @@ -9215,14 +9274,14 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the Agent. Format: `projects/{project}/locations/{location}/agents/{agent}`.", + "description": "Identifier. The resource name of the agent. Format: `projects/{project}/locations/{location}/agents/{agent}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "Optional. Field mask is used to control which fields get updated. If the mask is not present, all fields will be updated.", + "description": "Optional. The list of fields to update. If not present, all fields are updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -31168,7 +31227,7 @@ "type": "string" }, "updateMask": { - "description": "Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact`", + "description": "Optional. Mask specifying which fields to update. The following fields are immutable: * `scope` * `memory_type`", "format": "google-fieldmask", "location": "query", "type": "string" @@ -34511,6 +34570,166 @@ } }, "semanticGovernancePolicies": { + "methods": { + "create": { + "description": "Creates a SemanticGovernancePolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location into which to create the SemanticGovernancePolicy. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "semanticGovernancePolicyId": { + "description": "Required. The ID to use for the SemanticGovernancePolicy, which will become the final component of the SemanticGovernancePolicy's resource name. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character cannot be a number or hyphen. The last character must be a letter or a number.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/semanticGovernancePolicies", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicy" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a SemanticGovernancePolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}", + "httpMethod": "DELETE", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. The etag of the SemanticGovernancePolicy. If an etag is provided and does not match the current etag of the SemanticGovernancePolicy, deletion will be blocked and an ABORTED error will be returned.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The name of the SemanticGovernancePolicy resource to be deleted. Format: `projects/{project}/locations/{location}/semanticGovernancePolicies/{semantic_governance_policy}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a SemanticGovernancePolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the SemanticGovernancePolicy resource. Format: `projects/{project}/locations/{location}/semanticGovernancePolicies/{semantic_governance_policy}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists SemanticGovernancePolicies in a given location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies", + "httpMethod": "GET", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. The list page size. If zero, a default page size of 10 is used.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The standard list page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location from which to list the SemanticGovernancePolicies. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/semanticGovernancePolicies", + "response": { + "$ref": "GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a SemanticGovernancePolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}", + "httpMethod": "PATCH", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Identifier. Resource name of the SemanticGovernancePolicy.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. `update_mask` is used to specify the fields to be overwritten in the SemanticGovernancePolicy 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 mask is not present, then all fields that are populated in the request message will be overwritten. Set the `update_mask` to `*` to override all fields.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicy" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, "resources": { "operations": { "methods": { @@ -34637,169 +34856,9 @@ }, "wait": { "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, - "semanticGovernancePolicyEngine": { - "resources": { - "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}/semanticGovernancePolicyEngine/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations", - "httpMethod": "GET", - "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.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/[^/]+/semanticGovernancePolicyEngine$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine/operations/{operationsId}:wait", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicies/{semanticGovernancePoliciesId}/operations/{operationsId}:wait", "httpMethod": "POST", - "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.operations.wait", + "id": "aiplatform.projects.locations.semanticGovernancePolicies.operations.wait", "parameterOrder": [ "name" ], @@ -34807,7 +34866,7 @@ "name": { "description": "The name of the operation resource to wait on.", "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicies/[^/]+/operations/[^/]+$", "required": true, "type": "string" }, @@ -34830,6 +34889,38 @@ } } }, + "semanticGovernancePolicyEngine": { + "methods": { + "deprovision": { + "description": "Deprovisions the SemanticGovernancePolicyEngine, tearing down the associated tenant project, GKE cluster, and PSC service attachments. This operation is irreversible. Returns a long-running operation; poll for completion. The response contains the SemanticGovernancePolicyEngine in DEPROVISIONING state.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/semanticGovernancePolicyEngine:deprovision", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.semanticGovernancePolicyEngine.deprovision", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the SemanticGovernancePolicyEngine to deprovision. Format: projects/{project}/locations/{location}/semanticGovernancePolicyEngine", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/semanticGovernancePolicyEngine$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:deprovision", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1DeprovisionSemanticGovernancePolicyEngineRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "servingProfiles": { "resources": { "operations": { @@ -35009,7 +35100,7 @@ "type": "string" }, "skillId": { - "description": "Optional. The ID to use for the Skill, which will become the final component of the Skill's resource name. If not provided, a system-generated ID will be used. This value must be 1-63 characters. Valid characters are lowercase letters, numbers, and hyphens. The first character must be a lowercase letter, and the last character must be a lowercase letter or a number. Specifically, the ID must match the regular expression: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$` See [AIP-122](https://aip.dev/122#resource-id-segments) for more details.", + "description": "Required. The ID to use for the Skill, which will become the final component of the Skill's resource name. If not provided, a system-generated ID will be used. This value must be 1-63 characters. Valid characters are lowercase letters, numbers, and hyphens. The first character must be a lowercase letter, and the last character must be a lowercase letter or a number. Specifically, the ID must match the regular expression: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$` See [AIP-122](https://aip.dev/122#resource-id-segments) for more details.", "location": "query", "type": "string" } @@ -38668,6 +38759,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "processData": { + "description": "Processes data from a user's Cloud Storage bucket and saves the result to a destination Cloud Storage bucket. This method returns a long-running operation, and the `ProcessDataResponse` will be returned upon completion.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs:processData", + "httpMethod": "POST", + "id": "aiplatform.projects.locations.tuningJobs.processData", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the Location to process the data in. Format: `projects/{project}/locations/{location}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/tuningJobs:processData", + "request": { + "$ref": "GoogleCloudAiplatformV1beta1ProcessDataRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "rebaseTunedModel": { "description": "Rebase a tuned model. A rebase operation takes a model that was previously tuned on a base model version, and retunes it on a new base model version. The rebase operation creates a new tuning job and a new tuned model.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/tuningJobs:rebaseTunedModel", @@ -41300,7 +41419,7 @@ "type": "string" }, "updateMask": { - "description": "Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact`", + "description": "Optional. Mask specifying which fields to update. The following fields are immutable: * `scope` * `memory_type`", "format": "google-fieldmask", "location": "query", "type": "string" @@ -44495,166 +44614,6 @@ } } }, - "semanticGovernancePolicyEngine": { - "resources": { - "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/semanticGovernancePolicyEngine/operations/{operationsId}:cancel", - "httpMethod": "POST", - "id": "aiplatform.semanticGovernancePolicyEngine.operations.cancel", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "location": "path", - "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}:cancel", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", - "flatPath": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}", - "httpMethod": "DELETE", - "id": "aiplatform.semanticGovernancePolicyEngine.operations.delete", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "location": "path", - "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - "flatPath": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}", - "httpMethod": "GET", - "id": "aiplatform.semanticGovernancePolicyEngine.operations.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "location": "path", - "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", - "flatPath": "v1beta1/semanticGovernancePolicyEngine/operations", - "httpMethod": "GET", - "id": "aiplatform.semanticGovernancePolicyEngine.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": "^semanticGovernancePolicyEngine$", - "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" - }, - "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", - "location": "query", - "type": "boolean" - } - }, - "path": "v1beta1/{+name}/operations", - "response": { - "$ref": "GoogleLongrunningListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "wait": { - "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", - "flatPath": "v1beta1/semanticGovernancePolicyEngine/operations/{operationsId}:wait", - "httpMethod": "POST", - "id": "aiplatform.semanticGovernancePolicyEngine.operations.wait", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The name of the operation resource to wait on.", - "location": "path", - "pattern": "^semanticGovernancePolicyEngine/operations/[^/]+$", - "required": true, - "type": "string" - }, - "timeout": { - "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", - "format": "google-duration", - "location": "query", - "type": "string" - } - }, - "path": "v1beta1/{+name}:wait", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - }, "servingProfiles": { "resources": { "operations": { @@ -46515,7 +46474,7 @@ } } }, - "revision": "20260515", + "revision": "20260523", "rootUrl": "https://aiplatform.googleapis.com/", "schemas": { "CloudAiLargeModelsVisionGenerateVideoExperiments": { @@ -46556,6 +46515,10 @@ "format": "int32", "type": "integer" }, + "originalRequestJson": { + "description": "The original REST API request JSON sent by the user, in the instances/parameters format. Preserved for saving alongside output artifacts so users can reproduce their requests. This field is populated by the API handler and is not user-settable.", + "type": "string" + }, "promptInputs": { "$ref": "CloudAiLargeModelsVisionPromptInputs", "description": "Prompt chunks for \"ProModel\" prompting. If set, the prompt will not be rewritten, and top-level prompt ignored." @@ -47213,7 +47176,7 @@ "GenaiVertexV1beta1ArgumentsDelta": { "id": "GenaiVertexV1beta1ArgumentsDelta", "properties": { - "partial_arguments": { + "arguments": { "type": "string" } }, @@ -47355,12 +47318,12 @@ "enum": [ "DELIVERY_UNSPECIFIED", "INLINE", - "URL" + "URI" ], "enumDescriptions": [ "Default value. This value is unused.", "Audio data is returned inline in the response.", - "Audio data is returned as a URL." + "Audio data is returned as a URI." ], "type": "string" }, @@ -47791,6 +47754,107 @@ }, "type": "object" }, + "GenaiVertexV1beta1EnvironmentConfig": { + "description": "Configuration for a custom environment.", + "id": "GenaiVertexV1beta1EnvironmentConfig", + "properties": { + "networkAllowlist": { + "$ref": "GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist", + "description": "Allow only specific domains." + }, + "networkMode": { + "description": "Network egress mode.", + "enum": [ + "NETWORK_MODE_UNSPECIFIED", + "DISABLED" + ], + "enumDescriptions": [ + "Default value. Unused.", + "All network egress is blocked." + ], + "type": "string" + }, + "sources": { + "items": { + "$ref": "GenaiVertexV1beta1EnvironmentConfigSource" + }, + "type": "array" + } + }, + "type": "object" + }, + "GenaiVertexV1beta1EnvironmentConfigEgressRule": { + "description": "A network egress rule that controls which external domains the environment is allowed to reach. Each rule identifies a target domain and, optionally, a set of HTTP headers to inject into every matching outbound request.", + "id": "GenaiVertexV1beta1EnvironmentConfigEgressRule", + "properties": { + "domain": { + "description": "The domain pattern to match for this rule. Use an exact hostname (e.g., `github.com`), a wildcard prefix (e.g., `*.googleapis.com`), or `*` to match all domains.", + "type": "string" + }, + "transform": { + "additionalProperties": { + "type": "string" + }, + "description": "Headers to inject into requests matching this rule. Key: header name (e.g., \"Authorization\"). Value: header value (e.g., \"Bearer your-token\").", + "type": "object" + } + }, + "type": "object" + }, + "GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist": { + "description": "Network egress configuration for the environment.", + "id": "GenaiVertexV1beta1EnvironmentConfigEnvironmentNetworkEgressAllowlist", + "properties": { + "allowlist": { + "description": "List of allowed domains and their configurations.", + "items": { + "$ref": "GenaiVertexV1beta1EnvironmentConfigEgressRule" + }, + "type": "array" + } + }, + "type": "object" + }, + "GenaiVertexV1beta1EnvironmentConfigSource": { + "description": "A source to be mounted into the environment.", + "id": "GenaiVertexV1beta1EnvironmentConfigSource", + "properties": { + "content": { + "description": "The inline content if `type` is `INLINE`.", + "type": "string" + }, + "encoding": { + "description": "Optional encoding for inline content (e.g. `base64`).", + "type": "string" + }, + "source": { + "description": "The source of the environment. For GCS, this is the GCS path. For GitHub, this is the GitHub path.", + "type": "string" + }, + "target": { + "description": "Where the source should appear in the environment.", + "type": "string" + }, + "type": { + "enum": [ + "TYPE_UNSPECIFIED", + "GCS", + "INLINE", + "REPOSITORY", + "SKILL_REGISTRY" + ], + "enumDescriptions": [ + "", + "A GCS bucket.", + "Inline content.", + "A generic repository. The protocol prefix in the source URL identifies the provider (e.g., github://, gcs://).", + "A skill resource from the Skill Registry Service. Skill: projects/{project}/locations/{location}/skills/{skill} SkillRevision: projects/{project}/locations/{location}/skills/{skill}/revisions/{revision} Support mounting all skills under a project: projects/{project}/locations/{location}/skills." + ], + "type": "string" + } + }, + "type": "object" + }, "GenaiVertexV1beta1Error": { "description": "Error message from an interaction.", "id": "GenaiVertexV1beta1Error", @@ -48085,6 +48149,7 @@ "properties": { "image_config": { "$ref": "GenaiVertexV1beta1ImageConfig", + "deprecated": true, "description": "Configuration for image interaction." }, "max_output_tokens": { @@ -48747,12 +48812,12 @@ "enum": [ "DELIVERY_UNSPECIFIED", "INLINE", - "URL" + "URI" ], "enumDescriptions": [ "Default value. This value is unused.", "Image data is returned inline in the response.", - "Image data is returned as a URL." + "Image data is returned as a URI." ], "type": "string" }, @@ -48811,6 +48876,15 @@ "readOnly": true, "type": "string" }, + "env_id": { + "description": "The environment ID for the interaction. Can be 'remote' for default environment.", + "type": "string" + }, + "environment_id": { + "description": "Output only. The environment ID for the interaction. Only populated if environment config is set in the request.", + "readOnly": true, + "type": "string" + }, "id": { "description": "Required. Output only. A unique identifier for the interaction completion.", "readOnly": true, @@ -48833,6 +48907,9 @@ "description": "The ID of the previous interaction, if any.", "type": "string" }, + "remoteEnvironment": { + "$ref": "GenaiVertexV1beta1EnvironmentConfig" + }, "responseFormatList": { "$ref": "GenaiVertexV1beta1ResponseFormatList" }, @@ -48845,6 +48922,7 @@ "description": "Enforces that the generated response is a JSON object that complies with the JSON schema specified in this field." }, "response_mime_type": { + "deprecated": true, "description": "The mime type of the response. This is required if response_format is set.", "type": "string" }, @@ -48886,7 +48964,8 @@ "COMPLETED", "FAILED", "CANCELLED", - "INCOMPLETE" + "INCOMPLETE", + "BUDGET_EXCEEDED" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -48895,7 +48974,8 @@ "The interaction is completed.", "The interaction failed.", "The interaction was cancelled.", - "The interaction is completed, but contains incomplete results (e.g. hitting max_tokens)." + "The interaction is completed, but contains incomplete results (e.g. hitting max_tokens).", + "The interaction was halted because the token budget was exceeded." ], "readOnly": true, "type": "string" @@ -48905,7 +48985,7 @@ "description": "Input only. The steps for the interaction." }, "steps": { - "description": "Output only. The steps that make up the interaction.", + "description": "Required. Output only. The steps that make up the interaction.", "items": { "$ref": "GenaiVertexV1beta1Step" }, @@ -48999,7 +49079,8 @@ "COMPLETED", "FAILED", "CANCELLED", - "INCOMPLETE" + "INCOMPLETE", + "BUDGET_EXCEEDED" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -49008,7 +49089,8 @@ "The interaction is completed.", "The interaction failed.", "The interaction was cancelled.", - "The interaction is completed, but contains incomplete results (e.g. hitting max_tokens)." + "The interaction is completed, but contains incomplete results (e.g. hitting max_tokens).", + "The interaction was halted because the token budget was exceeded." ], "type": "string" } @@ -49060,6 +49142,10 @@ "$ref": "GenaiVertexV1beta1InteractionStatusUpdate", "description": "The interaction status data, used for interaction.status_update events." }, + "metadata": { + "$ref": "GenaiVertexV1beta1StreamMetadata", + "description": "Optional metadata accompanying ANY streamed event." + }, "stepDelta": { "$ref": "GenaiVertexV1beta1StepDelta", "description": "The step delta data, used for step.delta events." @@ -49427,9 +49513,6 @@ }, "text": { "$ref": "GenaiVertexV1beta1TextResponseFormat" - }, - "video": { - "$ref": "GenaiVertexV1beta1VideoResponseFormat" } }, "type": "object" @@ -49491,6 +49574,64 @@ }, "type": "object" }, + "GenaiVertexV1beta1ServerToolCallDelta": { + "id": "GenaiVertexV1beta1ServerToolCallDelta", + "properties": { + "codeExecutionCall": { + "$ref": "GenaiVertexV1beta1CodeExecutionCallDelta" + }, + "fileSearchCall": { + "$ref": "GenaiVertexV1beta1FileSearchCallDelta" + }, + "googleMapsCall": { + "$ref": "GenaiVertexV1beta1GoogleMapsCallDelta" + }, + "googleSearchCall": { + "$ref": "GenaiVertexV1beta1GoogleSearchCallDelta" + }, + "mcpServerToolCall": { + "$ref": "GenaiVertexV1beta1McpServerToolCallDelta" + }, + "signature": { + "description": "A signature hash for backend validation.", + "format": "byte", + "type": "string" + }, + "urlContextCall": { + "$ref": "GenaiVertexV1beta1UrlContextCallDelta" + } + }, + "type": "object" + }, + "GenaiVertexV1beta1ServerToolResultDelta": { + "id": "GenaiVertexV1beta1ServerToolResultDelta", + "properties": { + "codeExecutionResult": { + "$ref": "GenaiVertexV1beta1CodeExecutionResultDelta" + }, + "fileSearchResult": { + "$ref": "GenaiVertexV1beta1FileSearchResultDelta" + }, + "googleMapsResult": { + "$ref": "GenaiVertexV1beta1GoogleMapsResultDelta" + }, + "googleSearchResult": { + "$ref": "GenaiVertexV1beta1GoogleSearchResultDelta" + }, + "mcpServerToolResult": { + "$ref": "GenaiVertexV1beta1McpServerToolResultDelta" + }, + "signature": { + "description": "A signature hash for backend validation.", + "format": "byte", + "type": "string" + }, + "urlContextResult": { + "$ref": "GenaiVertexV1beta1UrlContextResultDelta" + } + }, + "type": "object" + }, "GenaiVertexV1beta1SpeechConfig": { "description": "The configuration for speech interaction.", "id": "GenaiVertexV1beta1SpeechConfig", @@ -49557,9 +49698,18 @@ "document": { "$ref": "GenaiVertexV1beta1DocumentDelta" }, + "functionResult": { + "$ref": "GenaiVertexV1beta1FunctionResultDelta" + }, "image": { "$ref": "GenaiVertexV1beta1ImageDelta" }, + "serverToolCall": { + "$ref": "GenaiVertexV1beta1ServerToolCallDelta" + }, + "serverToolResult": { + "$ref": "GenaiVertexV1beta1ServerToolResultDelta" + }, "text": { "$ref": "GenaiVertexV1beta1TextDelta" }, @@ -49615,6 +49765,15 @@ }, "type": "object" }, + "GenaiVertexV1beta1StreamMetadata": { + "id": "GenaiVertexV1beta1StreamMetadata", + "properties": { + "usage": { + "$ref": "GenaiVertexV1beta1InteractionUsage" + } + }, + "type": "object" + }, "GenaiVertexV1beta1TextAnnotationDelta": { "id": "GenaiVertexV1beta1TextAnnotationDelta", "properties": { @@ -50280,11 +50439,13 @@ "description": "Input provided by the user.", "id": "GenaiVertexV1beta1UserInputStep", "properties": { - "content": { - "items": { - "$ref": "GenaiVertexV1beta1Content" - }, - "type": "array" + "contentList": { + "$ref": "GenaiVertexV1beta1ContentList", + "description": "The content of the step. An array of Content objects." + }, + "contentString": { + "description": "The content of the step. A single string.", + "type": "string" } }, "type": "object" @@ -50427,12 +50588,6 @@ }, "type": "object" }, - "GenaiVertexV1beta1VideoResponseFormat": { - "description": "Configuration for video output format.", - "id": "GenaiVertexV1beta1VideoResponseFormat", - "properties": {}, - "type": "object" - }, "GoogleApiHttpBody": { "description": "Message that represents an arbitrary HTTP body. It should only be used for payload formats that can't be represented as JSON, such as raw binary or an HTML page. This message can be used both in streaming and non-streaming API methods in the request as well as the response. It can be used as a top-level request field, which is convenient if one wants to extract parameters from either the URL or HTTP template into the request fields and also want access to the raw HTTP body. Example: message GetResourceRequest { // A unique request id. string request_id = 1; // The raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service ResourceService { rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming methods: service CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); } Use of this type only changes how the request and response bodies are handled, all other features will continue to work unchanged.", "id": "GoogleApiHttpBody", @@ -50684,15 +50839,15 @@ "id": "GoogleCloudAiplatformV1beta1Agent", "properties": { "base_agent": { - "description": "Required. The base agent of the agent. Supported values: - \"antigravity-preview-05-2026\"", + "description": "Required. The base agent for the agent. Supported values: * `antigravity-preview-05-2026`", "type": "string" }, "base_environment": { - "description": "Optional. The environment config of the agent. Valid types are: - string value for environment_id, or 'remote' for default - struct value for EnvironmentConfig.", + "description": "Optional. The base environment configuration for the agent. Valid types: * A string value for the environment ID, or `remote` for the default. * A struct value for the `environment_config`.", "type": "any" }, "created": { - "description": "Output only. Timestamp when the agent was created.", + "description": "Output only. The time the agent was created.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -50702,38 +50857,38 @@ "type": "string" }, "id": { - "description": "Immutable. The ID to use for agent, which will become the final component of the agent resource name. If not provided, Vertex AI will generate a value for this ID. This value may be up to 63 characters, and valid characters are `[a-z0-9-]`. The first character must be a letter, the last character must be a letter or number.", + "description": "Immutable. The user-specified ID for the agent. This ID becomes the final component of the agent resource name. If not provided, Vertex AI will generate a value for this ID. The ID can be up to 63 characters and must match the regular expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.", "type": "string" }, "metadata": { "additionalProperties": { "type": "string" }, - "description": "Optional. The metadata of the agent.", + "description": "Optional. The metadata for the agent.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the Agent. Format: `projects/{project}/locations/{location}/agents/{agent}`.", + "description": "Identifier. The resource name of the agent. Format: `projects/{project}/locations/{location}/agents/{agent}`.", "type": "string" }, "object": { - "description": "Output only. The object type of this resource. Always set to \"agent\" in this case.", + "description": "Output only. The object type of the resource. For agents, the value is `agent`.", "readOnly": true, "type": "string" }, "system_instruction": { - "description": "Optional. The detailed struction that the agent should follow. The instruction is passed to LLM as system instruction.", + "description": "Optional. The instructions for the agent to follow. These instructions are passed to the LLM as a system instruction.", "type": "string" }, "tools": { - "description": "Optional. A list of tools that are available for the agent during the process of execucting the task.", + "description": "Optional. The tools available to the agent.", "items": { "$ref": "GoogleCloudAiplatformV1beta1AgentTool" }, "type": "array" }, "updated": { - "description": "Output only. Timestamp when the agent was last updated.", + "description": "Output only. The time the agent was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -50835,26 +50990,26 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1AgentTool": { - "description": "A tool provides a list of actions that are available for the Agent during the process of executing the task.", + "description": "A tool provides a list of actions available to the Agent during the process of executing a task.", "id": "GoogleCloudAiplatformV1beta1AgentTool", "properties": { "headers": { "additionalProperties": { "type": "string" }, - "description": "Optional. Headers for the MCP server (e.g., authentication). Only applicable when `type` is \"mcp\".", + "description": "Optional. The headers for the MCP server, such as for authentication. Only applicable when `type` is `mcp_server`.", "type": "object" }, "name": { - "description": "Optional. The name of the MCP server. Only applicable when `type` is \"mcp\".", + "description": "Optional. The name of the MCP server. Only applicable when `type` is `mcp_server`.", "type": "string" }, "type": { - "description": "Required. Type of the tool. Supported types: - \"code_execution\" - \"filesystem\" - \"google_search\" - \"mcp\" - \"url_context\"", + "description": "Required. The type of the tool. Supported types: * `code_execution` * `filesystem` * `google_search` * `mcp_server` * `url_context`", "type": "string" }, "url": { - "description": "Optional. The full URL for the MCP server endpoint. Only applicable when `type` is \"mcp\".", + "description": "Optional. The URL for the MCP server endpoint. Only applicable when `type` is `mcp_server`.", "type": "string" } }, @@ -56005,6 +56160,12 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1DeprovisionSemanticGovernancePolicyEngineRequest": { + "description": "Request message for SemanticGovernancePolicyEngineService.DeprovisionSemanticGovernancePolicyEngine.", + "id": "GoogleCloudAiplatformV1beta1DeprovisionSemanticGovernancePolicyEngineRequest", + "properties": {}, + "type": "object" + }, "GoogleCloudAiplatformV1beta1DestinationFeatureSetting": { "id": "GoogleCloudAiplatformV1beta1DestinationFeatureSetting", "properties": { @@ -62408,6 +62569,61 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1GatewayConfig": { + "description": "Configuration for a single gateway.", + "id": "GoogleCloudAiplatformV1beta1GatewayConfig", + "properties": { + "dnsRecord": { + "description": "Output only. The fully qualified record name of the created A-record in Cloud DNS.", + "readOnly": true, + "type": "string" + }, + "dnsZoneName": { + "description": "Optional. FQDN of the private DNS zone to create DNS record set for PSC endpoint.", + "type": "string" + }, + "ipAddress": { + "description": "Output only. The private IP address of the PSC endpoint.", + "readOnly": true, + "type": "string" + }, + "network": { + "description": "Optional. The URI of the network resource where PSC-E will be provisioned. if not provided `default` network will be used. Format: projects/{project}/global/networks/{network}", + "type": "string" + }, + "pscEndpoint": { + "description": "Output only. The self-link or name of the Private Service Connect endpoint forwarding rule.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the Gateway configuration.", + "enum": [ + "STATE_UNSPECIFIED", + "PROVISIONING", + "ACTIVE", + "DEPROVISIONING", + "INACTIVE", + "FAILED" + ], + "enumDescriptions": [ + "The default value. This value is used if the state is omitted.", + "The Gateway is being provisioned.", + "The Gateway is active and ready to use.", + "The Gateway is being de-provisioned.", + "The Gateway is inactive.", + "The Gateway failed to be provisioned." + ], + "readOnly": true, + "type": "string" + }, + "subnetwork": { + "description": "Optional. The URI of the subnetwork resource where PSC-E will be provisioned. if not provided `default` subnet will be used from the same {location} Format: projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1GcsDestination": { "description": "The Google Cloud Storage location where the output is to be written to.", "id": "GoogleCloudAiplatformV1beta1GcsDestination", @@ -65483,14 +65699,14 @@ "id": "GoogleCloudAiplatformV1beta1ListAgentsResponse", "properties": { "agents": { - "description": "A list of agents matching the request.", + "description": "The agents matching the request.", "items": { "$ref": "GoogleCloudAiplatformV1beta1Agent" }, "type": "array" }, "nextPageToken": { - "description": "A token, which can be sent as ListAgentsRequest.page_token to retrieve the next page. Absence of this field indicates there are no subsequent pages.", + "description": "A token to retrieve the next page of results. Pass this value as ListAgentsRequest.page_token in a subsequent call.", "type": "string" } }, @@ -66667,6 +66883,24 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse": { + "description": "Response message for SemanticGovernancePolicyService.ListSemanticGovernancePolicies.", + "id": "GoogleCloudAiplatformV1beta1ListSemanticGovernancePoliciesResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. Pass to ListSemanticGovernancePoliciesRequest.page_token to obtain that page.", + "type": "string" + }, + "semanticGovernancePolicies": { + "description": "The list of SemanticGovernancePolicies.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicy" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ListSessionsResponse": { "description": "Response message for SessionService.ListSessions.", "id": "GoogleCloudAiplatformV1beta1ListSessionsResponse", @@ -72587,7 +72821,7 @@ "type": "object" }, "GoogleCloudAiplatformV1beta1PersistentDiskSpec": { - "description": "Represents the spec of persistent disk options.", + "description": "Represents the spec of persistent disk and hyperdisk options.", "id": "GoogleCloudAiplatformV1beta1PersistentDiskSpec", "properties": { "diskSizeGb": { @@ -72596,7 +72830,7 @@ "type": "string" }, "diskType": { - "description": "Type of the disk (default is \"pd-standard\"). Valid values: \"pd-ssd\" (Persistent Disk Solid State Drive) \"pd-standard\" (Persistent Disk Hard Disk Drive) \"pd-balanced\" (Balanced Persistent Disk) \"pd-extreme\" (Extreme Persistent Disk)", + "description": "Type of the disk (default is \"pd-standard\"). Valid values: \"pd-ssd\" (Persistent Disk Solid State Drive) \"pd-standard\" (Persistent Disk Hard Disk Drive) \"pd-balanced\" (Balanced Persistent Disk) \"pd-extreme\" (Extreme Persistent Disk) \"hyperdisk-balanced\" (Hyperdisk Balanced) \"hyperdisk-extreme\" (Hyperdisk Extreme) \"hyperdisk-balanced-high-availability\" (Hyperdisk Balanced High Availability) \"hyperdisk-ml\" (Hyperdisk ML) \"hyperdisk-throughput\" (Hyperdisk Throughput)", "type": "string" } }, @@ -74030,6 +74264,44 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ProcessDataRequest": { + "description": "Request message for GenAiTuningService.ProcessData.", + "id": "GoogleCloudAiplatformV1beta1ProcessDataRequest", + "properties": { + "gcsDestination": { + "$ref": "GoogleCloudAiplatformV1beta1GcsDestination", + "description": "Optional. The GCS bucket to store the processed videos and captions data." + }, + "gcsSource": { + "$ref": "GoogleCloudAiplatformV1beta1GcsSource", + "description": "Optional. A JSONL file containing a list of files to process stored in the user's GCS bucket." + }, + "veoSpec": { + "$ref": "GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec", + "description": "Optional. Spec for Veo data processing." + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec": { + "description": "Spec for Veo data processing.", + "id": "GoogleCloudAiplatformV1beta1ProcessDataRequestVeoSpec", + "properties": { + "processType": { + "description": "Optional. The type of data processing to perform.", + "enum": [ + "VEO_V1_AND_V2_DEFAULT", + "VEO_V3" + ], + "enumDescriptions": [ + "Process type for Veo 1 and 2.", + "Process type for Veo 3." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1PscAutomatedEndpoints": { "description": "PscAutomatedEndpoints defines the output of the forwarding rule automatically created by each PscAutomationConfig.", "id": "GoogleCloudAiplatformV1beta1PscAutomatedEndpoints", @@ -78919,6 +79191,10 @@ "The default container image for Computer Use." ], "type": "string" + }, + "resources": { + "$ref": "GoogleCloudAiplatformV1beta1SandboxEnvironmentTemplateResourceRequirements", + "description": "Optional. Resource requests and limits for the default container." } }, "type": "object" @@ -84063,6 +84339,149 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1SemanticGovernancePolicy": { + "description": "Represents a governance policy applied to a specific Agent and optionally a specific Tool within that Agent.", + "id": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicy", + "properties": { + "agent": { + "description": "Required. The name of the agent in Agent Registry that is affected by this policy.", + "type": "string" + }, + "agentIdentity": { + "description": "Output only. Represents the principal of the agent, used by the Policy Decision Point (PDP) for governance checks. For more information, see https://docs.cloud.google.com/agent-builder/agent-engine/agent-identity Format: `principal://TRUST_DOMAIN/NAMESPACE/AGENT_NAME` Example: `principal://agents.global.org-ORGANIZATION_ID.system.id.goog/resources/aiplatform/projects/PROJECT_NUMBER/locations/LOCATION/reasoningEngines/AGENT_ENGINE_ID`", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. Timestamp when this SemanticGovernancePolicy was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. The description of the SemanticGovernancePolicy.", + "type": "string" + }, + "displayName": { + "description": "Optional. The user-defined name of the SemanticGovernancePolicy.", + "type": "string" + }, + "etag": { + "description": "Optional. Used to perform consistent read-modify-write transactions. If provided, the request will only succeed if the etag matches the current value. Otherwise, an ABORTED error will be returned.", + "type": "string" + }, + "mcpTools": { + "description": "Optional. The McpTools that are affected by this policy.", + "items": { + "$ref": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool" + }, + "type": "array" + }, + "name": { + "description": "Identifier. Resource name of the SemanticGovernancePolicy.", + "type": "string" + }, + "naturalLanguageConstraint": { + "description": "Required. The natural language constraint of the SemanticGovernancePolicy.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Timestamp when this SemanticGovernancePolicy was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine": { + "description": "Define a singleton SemanticGovernancePolicyEngine resource under a project and location.", + "id": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyEngine", + "properties": { + "createTime": { + "description": "Output only. Timestamp when this SemanticGovernancePolicyEngine was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "gatewayConfigs": { + "additionalProperties": { + "$ref": "GoogleCloudAiplatformV1beta1GatewayConfig" + }, + "description": "Optional. Configurations for gateways. The keys are user-defined names for each gateway.", + "type": "object" + }, + "ipAddress": { + "description": "Output only. The private IPv4 address of the PSC endpoint.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Identifier. The resource name of the SemanticGovernancePolicyEngine. Format: projects/{project}/locations/{location}/semanticGovernancePolicyEngine", + "type": "string" + }, + "pscForwardingRule": { + "description": "Output only. The URI of the PSC endpoint resource created in customer project. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}", + "readOnly": true, + "type": "string" + }, + "pscServiceAttachment": { + "description": "Output only. URI of the PSC attachment resource provided by SGP. Format: projects/{project}/regions/{region}/serviceAttachments/{service_attachment}", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The state of the SemanticGovernancePolicyEngine.", + "enum": [ + "STATE_UNSPECIFIED", + "PROVISIONING", + "ACTIVE", + "DEPROVISIONING", + "INACTIVE", + "FAILED" + ], + "enumDescriptions": [ + "Default value. This value is unused.", + "A provisioning operation is in progress. The engine will transition to ACTIVE on success or FAILED on failure.", + "The engine and all of its gateway configurations are provisioned and ready to serve traffic.", + "A deprovisioning operation is in progress. The engine will transition to INACTIVE on success or FAILED on failure.", + "The engine has no provisioned infrastructure: either never provisioned, or successfully deprovisioned.", + "The most recent provisioning or deprovisioning operation failed. The engine may have partial infrastructure that needs explicit deprovision; the engine may be either re-provisioned or deprovisioned to recover." + ], + "readOnly": true, + "type": "string" + }, + "targetProject": { + "description": "Optional. The project where network, subnetwork and dns resources are located. If not provided, it is assumed to be the same project of SemanticGovernancePolicyEngine. This field is for Shared VPC scenarios, where network resources may be in a target project and SGP engine in a service project.", + "type": "string" + }, + "updateTime": { + "description": "Output only. Timestamp when this SemanticGovernancePolicyEngine was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool": { + "description": "Represents a governance policy applied to MCP tools used by an Agent.", + "id": "GoogleCloudAiplatformV1beta1SemanticGovernancePolicyMcpTool", + "properties": { + "mcpServer": { + "description": "Required. The resource name of the McpServer in Agent Registry that is affected by this policy. Format: `projects/{project}/locations/{location}/mcpServers/{mcp_server}`", + "type": "string" + }, + "tools": { + "description": "Optional. The resource names of the McpTools used by the Agent that is affected by this policy. If not specified, the policy applies to all McpTools in the McpServer.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ServiceAccountSpec": { "description": "Configuration for the use of custom service account to run the workloads.", "id": "GoogleCloudAiplatformV1beta1ServiceAccountSpec", @@ -84391,7 +84810,7 @@ }, "skill": { "$ref": "GoogleCloudAiplatformV1beta1Skill", - "description": "Output only. The state of the Skill at this revision. TODO(b/503772996) Use a different proto for skill data included in skill revision", + "description": "Output only. The state of the Skill at this revision.", "readOnly": true }, "state": { @@ -87035,6 +87454,10 @@ "$ref": "GoogleCloudAiplatformV1beta1EnterpriseWebSearch", "description": "Optional. Tool to support searching public web data, powered by Vertex AI Search and Sec4 compliance." }, + "exaAiSearch": { + "$ref": "GoogleCloudAiplatformV1beta1ToolExaAiSearch", + "description": "Optional. Uses Exa.ai to search for information to answer user queries. The search results will be grounded on Exa.ai and presented to the model for response generation" + }, "functionDeclarations": { "description": "Optional. Function tool type. One or more function declarations to be passed to the model along with the current user query. Model may decide to call a subset of these functions by populating FunctionCall in the response. User should provide a FunctionResponse for each function call in the next turn. Based on the function responses, Model will generate the final response back to the user. Maximum 512 function declarations can be provided.", "items": { @@ -87199,6 +87622,25 @@ }, "type": "object" }, + "GoogleCloudAiplatformV1beta1ToolExaAiSearch": { + "description": "ExaAiSearch tool type. A tool that uses the Exa.ai search engine for grounding.", + "id": "GoogleCloudAiplatformV1beta1ToolExaAiSearch", + "properties": { + "apiKey": { + "description": "Required. The API key for ExaAiSearch.", + "type": "string" + }, + "customConfigs": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This field can be used to pass any parameter from the Exa.ai Search API.", + "type": "object" + } + }, + "type": "object" + }, "GoogleCloudAiplatformV1beta1ToolGoogleSearch": { "description": "GoogleSearch tool type. Tool to support Google Search in Model. Powered by Google.", "id": "GoogleCloudAiplatformV1beta1ToolGoogleSearch", diff --git a/src/apis/aiplatform/v1.ts b/src/apis/aiplatform/v1.ts index 5db1be6fc3..c620fdac99 100644 --- a/src/apis/aiplatform/v1.ts +++ b/src/apis/aiplatform/v1.ts @@ -227,6 +227,10 @@ export namespace aiplatform_v1 { * Number of diffusion steps */ numDiffusionSteps?: number | null; + /** + * The original REST API request JSON sent by the user, in the instances/parameters format. Preserved for saving alongside output artifacts so users can reproduce their requests. This field is populated by the API handler and is not user-settable. + */ + originalRequestJson?: string | null; /** * Prompt chunks for "ProModel" prompting. If set, the prompt will not be rewritten, and top-level prompt ignored. */ @@ -2835,6 +2839,15 @@ export namespace aiplatform_v1 { */ genericMetadata?: Schema$GoogleCloudAiplatformV1GenericOperationMetadata; } + /** + * Runtime operation metadata for ServingProfileService.CreateServingProfile. + */ + export interface Schema$GoogleCloudAiplatformV1CreateServingProfileOperationMetadata { + /** + * Output only. The standard operation metadata for Vertex AI. + */ + genericMetadata?: Schema$GoogleCloudAiplatformV1GenericOperationMetadata; + } /** * Runtime operation information for SpecialistPoolService.CreateSpecialistPool. */ @@ -13526,7 +13539,7 @@ export namespace aiplatform_v1 { */ export interface Schema$GoogleCloudAiplatformV1PauseScheduleRequest {} /** - * Represents the spec of persistent disk options. + * Represents the spec of persistent disk and hyperdisk options. */ export interface Schema$GoogleCloudAiplatformV1PersistentDiskSpec { /** @@ -13534,7 +13547,7 @@ export namespace aiplatform_v1 { */ diskSizeGb?: string | null; /** - * Type of the disk (default is "pd-standard"). Valid values: "pd-ssd" (Persistent Disk Solid State Drive) "pd-standard" (Persistent Disk Hard Disk Drive) "pd-balanced" (Balanced Persistent Disk) "pd-extreme" (Extreme Persistent Disk) + * Type of the disk (default is "pd-standard"). Valid values: "pd-ssd" (Persistent Disk Solid State Drive) "pd-standard" (Persistent Disk Hard Disk Drive) "pd-balanced" (Balanced Persistent Disk) "pd-extreme" (Extreme Persistent Disk) "hyperdisk-balanced" (Hyperdisk Balanced) "hyperdisk-extreme" (Hyperdisk Extreme) "hyperdisk-balanced-high-availability" (Hyperdisk Balanced High Availability) "hyperdisk-ml" (Hyperdisk ML) "hyperdisk-throughput" (Hyperdisk Throughput) */ diskType?: string | null; } @@ -17191,6 +17204,10 @@ export namespace aiplatform_v1 { * Required. The category of the default container image. */ defaultContainerCategory?: string | null; + /** + * Optional. Resource requests and limits for the default container. + */ + resources?: Schema$GoogleCloudAiplatformV1SandboxEnvironmentTemplateResourceRequirements; } /** * Configuration for egress control of sandbox instances. @@ -22245,6 +22262,10 @@ export namespace aiplatform_v1 { * Optional. Tool to support searching public web data, powered by Vertex AI Search and Sec4 compliance. */ enterpriseWebSearch?: Schema$GoogleCloudAiplatformV1EnterpriseWebSearch; + /** + * Optional. Uses Exa.ai to search for information to answer user queries. The search results will be grounded on Exa.ai and presented to the model for response generation + */ + exaAiSearch?: Schema$GoogleCloudAiplatformV1ToolExaAiSearch; /** * Optional. Function tool type. One or more function declarations to be passed to the model along with the current user query. Model may decide to call a subset of these functions by populating FunctionCall in the response. User should provide a FunctionResponse for each function call in the next turn. Based on the function responses, Model will generate the final response back to the user. Maximum 512 function declarations can be provided. */ @@ -22365,6 +22386,19 @@ export namespace aiplatform_v1 { */ retrievalConfig?: Schema$GoogleCloudAiplatformV1RetrievalConfig; } + /** + * ExaAiSearch tool type. A tool that uses the Exa.ai search engine for grounding. + */ + export interface Schema$GoogleCloudAiplatformV1ToolExaAiSearch { + /** + * Required. The API key for ExaAiSearch. + */ + apiKey?: string | null; + /** + * Optional. This field can be used to pass any parameter from the Exa.ai Search API. + */ + customConfigs?: {[key: string]: any} | null; + } /** * GoogleSearch tool type. Tool to support Google Search in Model. Powered by Google. */ @@ -138906,7 +138940,7 @@ export namespace aiplatform_v1 { * await aiplatform.projects.locations.reasoningEngines.memories.patch({ * // Identifier. Represents the resource name of the Memory. Format: `projects/{project\}/locations/{location\}/reasoningEngines/{reasoning_engine\}/memories/{memory\}` * name: 'projects/my-project/locations/my-location/reasoningEngines/my-reasoningEngine/memories/my-memorie', - * // Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact` + * // Optional. Mask specifying which fields to update. The following fields are immutable: * `scope` * `memory_type` * updateMask: 'placeholder-value', * * // Request body metadata @@ -139584,7 +139618,7 @@ export namespace aiplatform_v1 { */ name?: string; /** - * Optional. Mask specifying which fields to update. Supported fields: * `display_name` * `description` * `fact` + * Optional. Mask specifying which fields to update. The following fields are immutable: * `scope` * `memory_type` */ updateMask?: string; From ea47b9411bd056d76f6989751e33dc6048cdc266 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 02/29] feat(alloydb): update the API #### alloydb:v1alpha The following keys were added: - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.ipAddress.$ref - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.ipAddress.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.id - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.privateIp.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.privateIp.type - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.publicIp.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.publicIp.type - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.type The following keys were changed: - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.description - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enum - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enumDeprecated - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enumDescriptions #### alloydb:v1beta The following keys were added: - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.ipAddress.$ref - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.ipAddress.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.id - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.privateIp.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.privateIp.type - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.publicIp.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.publicIp.type - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.type The following keys were changed: - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.description - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enum - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enumDeprecated - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enumDescriptions #### alloydb:v1 The following keys were added: - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.additionalMetadata.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.description - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.internalAdditionalMetadata.type - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.ipAddress.$ref - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.properties.ipAddress.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.id - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.privateIp.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.privateIp.type - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.publicIp.description - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.properties.publicIp.type - schemas.StorageDatabasecenterPartnerapiV1mainIpAddress.type The following keys were changed: - schemas.StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata.description - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enum - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enumDeprecated - schemas.StorageDatabasecenterProtoCommonProduct.properties.engine.enumDescriptions --- discovery/alloydb-v1.json | 42 ++++++++++++++++++++++++++++++++-- discovery/alloydb-v1alpha.json | 42 ++++++++++++++++++++++++++++++++-- discovery/alloydb-v1beta.json | 42 ++++++++++++++++++++++++++++++++-- src/apis/alloydb/v1.ts | 27 +++++++++++++++++++++- src/apis/alloydb/v1alpha.ts | 27 +++++++++++++++++++++- src/apis/alloydb/v1beta.ts | 27 +++++++++++++++++++++- 6 files changed, 198 insertions(+), 9 deletions(-) diff --git a/discovery/alloydb-v1.json b/discovery/alloydb-v1.json index 282da4240d..0a5d7ac3c7 100644 --- a/discovery/alloydb-v1.json +++ b/discovery/alloydb-v1.json @@ -1879,7 +1879,7 @@ } } }, - "revision": "20260507", + "revision": "20260520", "rootUrl": "https://alloydb.googleapis.com/", "schemas": { "AuthorizedNetwork": { @@ -5280,9 +5280,17 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 32", + "description": "Common model for database resource instance metadata. Next ID: 35", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", "properties": { + "additionalMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Field to ingest additional metadata whichd does not support proto format.", + "type": "object" + }, "availabilityConfiguration": { "$ref": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", "description": "Availability configuration for this instance" @@ -5436,6 +5444,18 @@ ], "type": "string" }, + "internalAdditionalMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Field to ingest additional metadata which support proto format.", + "type": "object" + }, + "ipAddress": { + "$ref": "StorageDatabasecenterPartnerapiV1mainIpAddress", + "description": "Optional. Private and public IP address of the resource." + }, "isDeletionProtectionEnabled": { "description": "Optional. Whether deletion protection is enabled for this resource.", "type": "boolean" @@ -6098,6 +6118,21 @@ }, "type": "object" }, + "StorageDatabasecenterPartnerapiV1mainIpAddress": { + "description": "Used to send IP address information for a database resource.", + "id": "StorageDatabasecenterPartnerapiV1mainIpAddress", + "properties": { + "privateIp": { + "description": "The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., \"10.0.0.2\").", + "type": "string" + }, + "publicIp": { + "description": "The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., \"34.72.1.1\").", + "type": "string" + } + }, + "type": "object" + }, "StorageDatabasecenterPartnerapiV1mainMachineConfiguration": { "description": "MachineConfiguration describes the configuration of a machine specific to Database Resource.", "id": "StorageDatabasecenterPartnerapiV1mainMachineConfiguration", @@ -6502,6 +6537,7 @@ "ENGINE_CLOUD_SPANNER_WITH_GOOGLESQL_DIALECT", "ENGINE_MEMORYSTORE_FOR_REDIS", "ENGINE_MEMORYSTORE_FOR_REDIS_CLUSTER", + "ENGINE_MEMORSTORE_FOR_VALKEY", "ENGINE_OTHER", "ENGINE_FIRESTORE_WITH_NATIVE_MODE", "ENGINE_FIRESTORE_WITH_DATASTORE_MODE", @@ -6528,6 +6564,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -6544,6 +6581,7 @@ "Cloud Spanner with Google SQL dialect.", "Memorystore with Redis dialect.", "Memorystore with Redis cluster dialect.", + "Memorystore with Valkey dialect.", "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum.", "Firestore with native mode.", "Firestore with datastore mode.", diff --git a/discovery/alloydb-v1alpha.json b/discovery/alloydb-v1alpha.json index 4f70a3afa1..1f0a4d1e66 100644 --- a/discovery/alloydb-v1alpha.json +++ b/discovery/alloydb-v1alpha.json @@ -2086,7 +2086,7 @@ } } }, - "revision": "20260507", + "revision": "20260520", "rootUrl": "https://alloydb.googleapis.com/", "schemas": { "AuthorizedNetwork": { @@ -5830,9 +5830,17 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 32", + "description": "Common model for database resource instance metadata. Next ID: 35", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", "properties": { + "additionalMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Field to ingest additional metadata whichd does not support proto format.", + "type": "object" + }, "availabilityConfiguration": { "$ref": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", "description": "Availability configuration for this instance" @@ -5986,6 +5994,18 @@ ], "type": "string" }, + "internalAdditionalMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Field to ingest additional metadata which support proto format.", + "type": "object" + }, + "ipAddress": { + "$ref": "StorageDatabasecenterPartnerapiV1mainIpAddress", + "description": "Optional. Private and public IP address of the resource." + }, "isDeletionProtectionEnabled": { "description": "Optional. Whether deletion protection is enabled for this resource.", "type": "boolean" @@ -6648,6 +6668,21 @@ }, "type": "object" }, + "StorageDatabasecenterPartnerapiV1mainIpAddress": { + "description": "Used to send IP address information for a database resource.", + "id": "StorageDatabasecenterPartnerapiV1mainIpAddress", + "properties": { + "privateIp": { + "description": "The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., \"10.0.0.2\").", + "type": "string" + }, + "publicIp": { + "description": "The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., \"34.72.1.1\").", + "type": "string" + } + }, + "type": "object" + }, "StorageDatabasecenterPartnerapiV1mainMachineConfiguration": { "description": "MachineConfiguration describes the configuration of a machine specific to Database Resource.", "id": "StorageDatabasecenterPartnerapiV1mainMachineConfiguration", @@ -7052,6 +7087,7 @@ "ENGINE_CLOUD_SPANNER_WITH_GOOGLESQL_DIALECT", "ENGINE_MEMORYSTORE_FOR_REDIS", "ENGINE_MEMORYSTORE_FOR_REDIS_CLUSTER", + "ENGINE_MEMORSTORE_FOR_VALKEY", "ENGINE_OTHER", "ENGINE_FIRESTORE_WITH_NATIVE_MODE", "ENGINE_FIRESTORE_WITH_DATASTORE_MODE", @@ -7078,6 +7114,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -7094,6 +7131,7 @@ "Cloud Spanner with Google SQL dialect.", "Memorystore with Redis dialect.", "Memorystore with Redis cluster dialect.", + "Memorystore with Valkey dialect.", "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum.", "Firestore with native mode.", "Firestore with datastore mode.", diff --git a/discovery/alloydb-v1beta.json b/discovery/alloydb-v1beta.json index 22f3753c66..504d038937 100644 --- a/discovery/alloydb-v1beta.json +++ b/discovery/alloydb-v1beta.json @@ -2083,7 +2083,7 @@ } } }, - "revision": "20260507", + "revision": "20260520", "rootUrl": "https://alloydb.googleapis.com/", "schemas": { "AuthorizedNetwork": { @@ -5806,9 +5806,17 @@ "type": "object" }, "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 32", + "description": "Common model for database resource instance metadata. Next ID: 35", "id": "StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata", "properties": { + "additionalMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Field to ingest additional metadata whichd does not support proto format.", + "type": "object" + }, "availabilityConfiguration": { "$ref": "StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration", "description": "Availability configuration for this instance" @@ -5962,6 +5970,18 @@ ], "type": "string" }, + "internalAdditionalMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Field to ingest additional metadata which support proto format.", + "type": "object" + }, + "ipAddress": { + "$ref": "StorageDatabasecenterPartnerapiV1mainIpAddress", + "description": "Optional. Private and public IP address of the resource." + }, "isDeletionProtectionEnabled": { "description": "Optional. Whether deletion protection is enabled for this resource.", "type": "boolean" @@ -6624,6 +6644,21 @@ }, "type": "object" }, + "StorageDatabasecenterPartnerapiV1mainIpAddress": { + "description": "Used to send IP address information for a database resource.", + "id": "StorageDatabasecenterPartnerapiV1mainIpAddress", + "properties": { + "privateIp": { + "description": "The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., \"10.0.0.2\").", + "type": "string" + }, + "publicIp": { + "description": "The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., \"34.72.1.1\").", + "type": "string" + } + }, + "type": "object" + }, "StorageDatabasecenterPartnerapiV1mainMachineConfiguration": { "description": "MachineConfiguration describes the configuration of a machine specific to Database Resource.", "id": "StorageDatabasecenterPartnerapiV1mainMachineConfiguration", @@ -7028,6 +7063,7 @@ "ENGINE_CLOUD_SPANNER_WITH_GOOGLESQL_DIALECT", "ENGINE_MEMORYSTORE_FOR_REDIS", "ENGINE_MEMORYSTORE_FOR_REDIS_CLUSTER", + "ENGINE_MEMORSTORE_FOR_VALKEY", "ENGINE_OTHER", "ENGINE_FIRESTORE_WITH_NATIVE_MODE", "ENGINE_FIRESTORE_WITH_DATASTORE_MODE", @@ -7054,6 +7090,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -7070,6 +7107,7 @@ "Cloud Spanner with Google SQL dialect.", "Memorystore with Redis dialect.", "Memorystore with Redis cluster dialect.", + "Memorystore with Valkey dialect.", "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum.", "Firestore with native mode.", "Firestore with datastore mode.", diff --git a/src/apis/alloydb/v1.ts b/src/apis/alloydb/v1.ts index 14fcf0e572..558c31c3e9 100644 --- a/src/apis/alloydb/v1.ts +++ b/src/apis/alloydb/v1.ts @@ -2057,9 +2057,13 @@ export namespace alloydb_v1 { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 32 + * Common model for database resource instance metadata. Next ID: 35 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { + /** + * Field to ingest additional metadata whichd does not support proto format. + */ + additionalMetadata?: {[key: string]: any} | null; /** * Availability configuration for this instance */ @@ -2112,6 +2116,14 @@ export namespace alloydb_v1 { * The type of the instance. Specified at creation time. */ instanceType?: string | null; + /** + * Field to ingest additional metadata which support proto format. + */ + internalAdditionalMetadata?: {[key: string]: any} | null; + /** + * Optional. Private and public IP address of the resource. + */ + ipAddress?: Schema$StorageDatabasecenterPartnerapiV1mainIpAddress; /** * Optional. Whether deletion protection is enabled for this resource. */ @@ -2300,6 +2312,19 @@ export namespace alloydb_v1 { */ resourceName?: string | null; } + /** + * Used to send IP address information for a database resource. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainIpAddress { + /** + * The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., "10.0.0.2"). + */ + privateIp?: string | null; + /** + * The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., "34.72.1.1"). + */ + publicIp?: string | null; + } /** * MachineConfiguration describes the configuration of a machine specific to Database Resource. */ diff --git a/src/apis/alloydb/v1alpha.ts b/src/apis/alloydb/v1alpha.ts index f2b5c3c038..dbec839b15 100644 --- a/src/apis/alloydb/v1alpha.ts +++ b/src/apis/alloydb/v1alpha.ts @@ -2297,9 +2297,13 @@ export namespace alloydb_v1alpha { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 32 + * Common model for database resource instance metadata. Next ID: 35 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { + /** + * Field to ingest additional metadata whichd does not support proto format. + */ + additionalMetadata?: {[key: string]: any} | null; /** * Availability configuration for this instance */ @@ -2352,6 +2356,14 @@ export namespace alloydb_v1alpha { * The type of the instance. Specified at creation time. */ instanceType?: string | null; + /** + * Field to ingest additional metadata which support proto format. + */ + internalAdditionalMetadata?: {[key: string]: any} | null; + /** + * Optional. Private and public IP address of the resource. + */ + ipAddress?: Schema$StorageDatabasecenterPartnerapiV1mainIpAddress; /** * Optional. Whether deletion protection is enabled for this resource. */ @@ -2540,6 +2552,19 @@ export namespace alloydb_v1alpha { */ resourceName?: string | null; } + /** + * Used to send IP address information for a database resource. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainIpAddress { + /** + * The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., "10.0.0.2"). + */ + privateIp?: string | null; + /** + * The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., "34.72.1.1"). + */ + publicIp?: string | null; + } /** * MachineConfiguration describes the configuration of a machine specific to Database Resource. */ diff --git a/src/apis/alloydb/v1beta.ts b/src/apis/alloydb/v1beta.ts index 4a2e0bab0c..60f8f5bdd1 100644 --- a/src/apis/alloydb/v1beta.ts +++ b/src/apis/alloydb/v1beta.ts @@ -2281,9 +2281,13 @@ export namespace alloydb_v1beta { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 32 + * Common model for database resource instance metadata. Next ID: 35 */ export interface Schema$StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata { + /** + * Field to ingest additional metadata whichd does not support proto format. + */ + additionalMetadata?: {[key: string]: any} | null; /** * Availability configuration for this instance */ @@ -2336,6 +2340,14 @@ export namespace alloydb_v1beta { * The type of the instance. Specified at creation time. */ instanceType?: string | null; + /** + * Field to ingest additional metadata which support proto format. + */ + internalAdditionalMetadata?: {[key: string]: any} | null; + /** + * Optional. Private and public IP address of the resource. + */ + ipAddress?: Schema$StorageDatabasecenterPartnerapiV1mainIpAddress; /** * Optional. Whether deletion protection is enabled for this resource. */ @@ -2524,6 +2536,19 @@ export namespace alloydb_v1beta { */ resourceName?: string | null; } + /** + * Used to send IP address information for a database resource. + */ + export interface Schema$StorageDatabasecenterPartnerapiV1mainIpAddress { + /** + * The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., "10.0.0.2"). + */ + privateIp?: string | null; + /** + * The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., "34.72.1.1"). + */ + publicIp?: string | null; + } /** * MachineConfiguration describes the configuration of a machine specific to Database Resource. */ From f6de988ad1ea66fe62b0032ec44d1efe47a5578b Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 03/29] fix(analytics): update the API --- discovery/analytics-v3.json | 7459 -------------- src/apis/analytics/v3.ts | 18783 ---------------------------------- 2 files changed, 26242 deletions(-) delete mode 100644 discovery/analytics-v3.json delete mode 100644 src/apis/analytics/v3.ts diff --git a/discovery/analytics-v3.json b/discovery/analytics-v3.json deleted file mode 100644 index 25dfacefaf..0000000000 --- a/discovery/analytics-v3.json +++ /dev/null @@ -1,7459 +0,0 @@ -{ - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/analytics": { - "description": "View and manage your Google Analytics data" - }, - "https://www.googleapis.com/auth/analytics.edit": { - "description": "Edit Google Analytics management entities" - }, - "https://www.googleapis.com/auth/analytics.manage.users": { - "description": "Manage Google Analytics Account users by email address" - }, - "https://www.googleapis.com/auth/analytics.manage.users.readonly": { - "description": "View Google Analytics user permissions" - }, - "https://www.googleapis.com/auth/analytics.provision": { - "description": "Create a new Google Analytics account along with its default property and view" - }, - "https://www.googleapis.com/auth/analytics.readonly": { - "description": "View your Google Analytics data" - }, - "https://www.googleapis.com/auth/analytics.user.deletion": { - "description": "Manage Google Analytics user deletion requests" - } - } - } - }, - "basePath": "/analytics/v3/", - "baseUrl": "https://www.googleapis.com/analytics/v3/", - "batchPath": "batch/analytics/v3", - "description": "Views and manages your Google Analytics data.", - "discoveryVersion": "v1", - "documentationLink": "https://developers.google.com/analytics/", - "etag": "\"9eZ1uxVRThTDhLJCZHhqs3eQWz4/o_TVyaWurnALX6ZIQ952-U5m22Y\"", - "icons": { - "x16": "https://www.google.com/images/icons/product/analytics-16.png", - "x32": "https://www.google.com/images/icons/product/analytics-32.png" - }, - "id": "analytics:v3", - "kind": "discovery#restDescription", - "name": "analytics", - "ownerDomain": "google.com", - "ownerName": "Google", - "parameters": { - "alt": { - "default": "json", - "description": "Data format for the response.", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "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": "false", - "description": "Returns response with indentations and line breaks.", - "location": "query", - "type": "boolean" - }, - "quotaUser": { - "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.", - "location": "query", - "type": "string" - }, - "userIp": { - "description": "Deprecated. Please use quotaUser instead.", - "location": "query", - "type": "string" - } - }, - "protocol": "rest", - "resources": { - "data": { - "resources": { - "ga": { - "methods": { - "get": { - "description": "Returns Analytics data for a view (profile).", - "httpMethod": "GET", - "id": "analytics.data.ga.get", - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "parameters": { - "dimensions": { - "description": "A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'.", - "location": "query", - "pattern": "(ga:.+)?", - "type": "string" - }, - "end-date": { - "description": "End date for fetching Analytics data. Request can should specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is yesterday.", - "location": "query", - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "required": true, - "type": "string" - }, - "filters": { - "description": "A comma-separated list of dimension or metric filters to be applied to Analytics data.", - "location": "query", - "pattern": "ga:.+", - "type": "string" - }, - "ids": { - "description": "Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "location": "query", - "pattern": "ga:[0-9]+", - "required": true, - "type": "string" - }, - "include-empty-rows": { - "description": "The response will include empty rows if this parameter is set to true, the default is true", - "location": "query", - "type": "boolean" - }, - "max-results": { - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "metrics": { - "description": "A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified.", - "location": "query", - "pattern": "ga:.+", - "required": true, - "type": "string" - }, - "output": { - "description": "The selected format for the response. Default format is JSON.", - "enum": [ - "dataTable", - "json" - ], - "enumDescriptions": [ - "Returns the response in Google Charts Data Table format. This is useful in creating visualization using Google Charts.", - "Returns the response in standard JSON format." - ], - "location": "query", - "type": "string" - }, - "samplingLevel": { - "description": "The desired sampling level.", - "enum": [ - "DEFAULT", - "FASTER", - "HIGHER_PRECISION" - ], - "enumDescriptions": [ - "Returns response with a sample size that balances speed and accuracy.", - "Returns a fast response with a smaller sample size.", - "Returns a more accurate response using a large sample size, but this may result in the response being slower." - ], - "location": "query", - "type": "string" - }, - "segment": { - "description": "An Analytics segment to be applied to data.", - "location": "query", - "type": "string" - }, - "sort": { - "description": "A comma-separated list of dimensions or metrics that determine the sort order for Analytics data.", - "location": "query", - "pattern": "(-)?ga:.+", - "type": "string" - }, - "start-date": { - "description": "Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", - "location": "query", - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "data/ga", - "response": { - "$ref": "GaData" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "mcf": { - "methods": { - "get": { - "description": "Returns Analytics Multi-Channel Funnels data for a view (profile).", - "httpMethod": "GET", - "id": "analytics.data.mcf.get", - "parameterOrder": [ - "ids", - "start-date", - "end-date", - "metrics" - ], - "parameters": { - "dimensions": { - "description": "A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'.", - "location": "query", - "pattern": "(mcf:.+)?", - "type": "string" - }, - "end-date": { - "description": "End date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", - "location": "query", - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "required": true, - "type": "string" - }, - "filters": { - "description": "A comma-separated list of dimension or metric filters to be applied to the Analytics data.", - "location": "query", - "pattern": "mcf:.+", - "type": "string" - }, - "ids": { - "description": "Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "location": "query", - "pattern": "ga:[0-9]+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "metrics": { - "description": "A comma-separated list of Multi-Channel Funnels metrics. E.g., 'mcf:totalConversions,mcf:totalConversionValue'. At least one metric must be specified.", - "location": "query", - "pattern": "mcf:.+", - "required": true, - "type": "string" - }, - "samplingLevel": { - "description": "The desired sampling level.", - "enum": [ - "DEFAULT", - "FASTER", - "HIGHER_PRECISION" - ], - "enumDescriptions": [ - "Returns response with a sample size that balances speed and accuracy.", - "Returns a fast response with a smaller sample size.", - "Returns a more accurate response using a large sample size, but this may result in the response being slower." - ], - "location": "query", - "type": "string" - }, - "sort": { - "description": "A comma-separated list of dimensions or metrics that determine the sort order for the Analytics data.", - "location": "query", - "pattern": "(-)?mcf:.+", - "type": "string" - }, - "start-date": { - "description": "Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo.", - "location": "query", - "pattern": "[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "data/mcf", - "response": { - "$ref": "McfData" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "realtime": { - "methods": { - "get": { - "description": "Returns real time data for a view (profile).", - "httpMethod": "GET", - "id": "analytics.data.realtime.get", - "parameterOrder": [ - "ids", - "metrics" - ], - "parameters": { - "dimensions": { - "description": "A comma-separated list of real time dimensions. E.g., 'rt:medium,rt:city'.", - "location": "query", - "pattern": "(ga:.+)|(rt:.+)", - "type": "string" - }, - "filters": { - "description": "A comma-separated list of dimension or metric filters to be applied to real time data.", - "location": "query", - "pattern": "(ga:.+)|(rt:.+)", - "type": "string" - }, - "ids": { - "description": "Unique table ID for retrieving real time data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID.", - "location": "query", - "pattern": "ga:[0-9]+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of entries to include in this feed.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "metrics": { - "description": "A comma-separated list of real time metrics. E.g., 'rt:activeUsers'. At least one metric must be specified.", - "location": "query", - "pattern": "(ga:.+)|(rt:.+)", - "required": true, - "type": "string" - }, - "sort": { - "description": "A comma-separated list of dimensions or metrics that determine the sort order for real time data.", - "location": "query", - "pattern": "(-)?((ga:.+)|(rt:.+))", - "type": "string" - } - }, - "path": "data/realtime", - "response": { - "$ref": "RealtimeData" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - } - } - }, - "management": { - "resources": { - "accountSummaries": { - "methods": { - "list": { - "description": "Lists account summaries (lightweight tree comprised of accounts/properties/profiles) to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.accountSummaries.list", - "parameters": { - "max-results": { - "description": "The maximum number of account summaries to include in this response, where the largest acceptable value is 1000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "management/accountSummaries", - "response": { - "$ref": "AccountSummaries" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "accountUserLinks": { - "methods": { - "delete": { - "description": "Removes a user from the given account.", - "httpMethod": "DELETE", - "id": "analytics.management.accountUserLinks.delete", - "parameterOrder": [ - "accountId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "linkId": { - "description": "Link ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/entityUserLinks/{linkId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "insert": { - "description": "Adds a new user to the given account.", - "httpMethod": "POST", - "id": "analytics.management.accountUserLinks.insert", - "parameterOrder": [ - "accountId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/entityUserLinks", - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "list": { - "description": "Lists account-user links for a given account.", - "httpMethod": "GET", - "id": "analytics.management.accountUserLinks.list", - "parameterOrder": [ - "accountId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve the user links for.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of account-user links to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first account-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "management/accounts/{accountId}/entityUserLinks", - "response": { - "$ref": "EntityUserLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users", - "https://www.googleapis.com/auth/analytics.manage.users.readonly" - ] - }, - "update": { - "description": "Updates permissions for an existing user on the given account.", - "httpMethod": "PUT", - "id": "analytics.management.accountUserLinks.update", - "parameterOrder": [ - "accountId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to update the account-user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "linkId": { - "description": "Link ID to update the account-user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/entityUserLinks/{linkId}", - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - } - } - }, - "accounts": { - "methods": { - "list": { - "description": "Lists all accounts to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.accounts.list", - "parameters": { - "max-results": { - "description": "The maximum number of accounts to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "management/accounts", - "response": { - "$ref": "Accounts" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "clientId": { - "methods": { - "hashClientId": { - "description": "Hashes the given Client ID.", - "httpMethod": "POST", - "id": "analytics.management.clientId.hashClientId", - "path": "management/clientId:hashClientId", - "request": { - "$ref": "HashClientIdRequest" - }, - "response": { - "$ref": "HashClientIdResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "customDataSources": { - "methods": { - "list": { - "description": "List custom data sources to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.customDataSources.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account Id for the custom data sources to retrieve.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of custom data sources to include in this response.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "start-index": { - "description": "A 1-based index of the first custom data source to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property Id for the custom data sources to retrieve.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources", - "response": { - "$ref": "CustomDataSources" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "customDimensions": { - "methods": { - "get": { - "description": "Get a custom dimension to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.customDimensions.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDimensionId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom dimension to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "customDimensionId": { - "description": "The ID of the custom dimension to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID for the custom dimension to retrieve.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new custom dimension.", - "httpMethod": "POST", - "id": "analytics.management.customDimensions.insert", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom dimension to create.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID for the custom dimension to create.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions", - "request": { - "$ref": "CustomDimension" - }, - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists custom dimensions to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.customDimensions.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom dimensions to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of custom dimensions to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID for the custom dimensions to retrieve.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions", - "response": { - "$ref": "CustomDimensions" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing custom dimension. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.customDimensions.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDimensionId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom dimension to update.", - "location": "path", - "required": true, - "type": "string" - }, - "customDimensionId": { - "description": "Custom dimension ID for the custom dimension to update.", - "location": "path", - "required": true, - "type": "string" - }, - "ignoreCustomDataSourceLinks": { - "default": "false", - "description": "Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.", - "location": "query", - "type": "boolean" - }, - "webPropertyId": { - "description": "Web property ID for the custom dimension to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", - "request": { - "$ref": "CustomDimension" - }, - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing custom dimension.", - "httpMethod": "PUT", - "id": "analytics.management.customDimensions.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDimensionId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom dimension to update.", - "location": "path", - "required": true, - "type": "string" - }, - "customDimensionId": { - "description": "Custom dimension ID for the custom dimension to update.", - "location": "path", - "required": true, - "type": "string" - }, - "ignoreCustomDataSourceLinks": { - "default": "false", - "description": "Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set.", - "location": "query", - "type": "boolean" - }, - "webPropertyId": { - "description": "Web property ID for the custom dimension to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}", - "request": { - "$ref": "CustomDimension" - }, - "response": { - "$ref": "CustomDimension" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "customMetrics": { - "methods": { - "get": { - "description": "Get a custom metric to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.customMetrics.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customMetricId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom metric to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "customMetricId": { - "description": "The ID of the custom metric to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID for the custom metric to retrieve.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new custom metric.", - "httpMethod": "POST", - "id": "analytics.management.customMetrics.insert", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom metric to create.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID for the custom dimension to create.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics", - "request": { - "$ref": "CustomMetric" - }, - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists custom metrics to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.customMetrics.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom metrics to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of custom metrics to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID for the custom metrics to retrieve.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics", - "response": { - "$ref": "CustomMetrics" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing custom metric. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.customMetrics.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customMetricId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom metric to update.", - "location": "path", - "required": true, - "type": "string" - }, - "customMetricId": { - "description": "Custom metric ID for the custom metric to update.", - "location": "path", - "required": true, - "type": "string" - }, - "ignoreCustomDataSourceLinks": { - "default": "false", - "description": "Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.", - "location": "query", - "type": "boolean" - }, - "webPropertyId": { - "description": "Web property ID for the custom metric to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", - "request": { - "$ref": "CustomMetric" - }, - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing custom metric.", - "httpMethod": "PUT", - "id": "analytics.management.customMetrics.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customMetricId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the custom metric to update.", - "location": "path", - "required": true, - "type": "string" - }, - "customMetricId": { - "description": "Custom metric ID for the custom metric to update.", - "location": "path", - "required": true, - "type": "string" - }, - "ignoreCustomDataSourceLinks": { - "default": "false", - "description": "Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set.", - "location": "query", - "type": "boolean" - }, - "webPropertyId": { - "description": "Web property ID for the custom metric to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}", - "request": { - "$ref": "CustomMetric" - }, - "response": { - "$ref": "CustomMetric" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "experiments": { - "methods": { - "delete": { - "description": "Delete an experiment.", - "httpMethod": "DELETE", - "id": "analytics.management.experiments.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the experiment belongs", - "location": "path", - "required": true, - "type": "string" - }, - "experimentId": { - "description": "ID of the experiment to delete", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to which the experiment belongs", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to which the experiment belongs", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Returns an experiment to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.experiments.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve the experiment for.", - "location": "path", - "required": true, - "type": "string" - }, - "experimentId": { - "description": "Experiment ID to retrieve the experiment for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to retrieve the experiment for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the experiment for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new experiment.", - "httpMethod": "POST", - "id": "analytics.management.experiments.insert", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the experiment for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to create the experiment for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to create the experiment for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments", - "request": { - "$ref": "Experiment" - }, - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists experiments to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.experiments.list", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve experiments for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of experiments to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "profileId": { - "description": "View (Profile) ID to retrieve experiments for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first experiment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID to retrieve experiments for.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments", - "response": { - "$ref": "Experiments" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Update an existing experiment. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.experiments.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "parameters": { - "accountId": { - "description": "Account ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - }, - "experimentId": { - "description": "Experiment ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "request": { - "$ref": "Experiment" - }, - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Update an existing experiment.", - "httpMethod": "PUT", - "id": "analytics.management.experiments.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "experimentId" - ], - "parameters": { - "accountId": { - "description": "Account ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - }, - "experimentId": { - "description": "Experiment ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the experiment to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}", - "request": { - "$ref": "Experiment" - }, - "response": { - "$ref": "Experiment" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "filters": { - "methods": { - "delete": { - "description": "Delete a filter.", - "httpMethod": "DELETE", - "id": "analytics.management.filters.delete", - "parameterOrder": [ - "accountId", - "filterId" - ], - "parameters": { - "accountId": { - "description": "Account ID to delete the filter for.", - "location": "path", - "required": true, - "type": "string" - }, - "filterId": { - "description": "ID of the filter to be deleted.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/filters/{filterId}", - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Returns filters to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.filters.get", - "parameterOrder": [ - "accountId", - "filterId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve filters for.", - "location": "path", - "required": true, - "type": "string" - }, - "filterId": { - "description": "Filter ID to retrieve filters for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/filters/{filterId}", - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new filter.", - "httpMethod": "POST", - "id": "analytics.management.filters.insert", - "parameterOrder": [ - "accountId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create filter for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/filters", - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists all filters for an account", - "httpMethod": "GET", - "id": "analytics.management.filters.list", - "parameterOrder": [ - "accountId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve filters for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of filters to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "management/accounts/{accountId}/filters", - "response": { - "$ref": "Filters" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing filter. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.filters.patch", - "parameterOrder": [ - "accountId", - "filterId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the filter belongs.", - "location": "path", - "required": true, - "type": "string" - }, - "filterId": { - "description": "ID of the filter to be updated.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/filters/{filterId}", - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing filter.", - "httpMethod": "PUT", - "id": "analytics.management.filters.update", - "parameterOrder": [ - "accountId", - "filterId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the filter belongs.", - "location": "path", - "required": true, - "type": "string" - }, - "filterId": { - "description": "ID of the filter to be updated.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/filters/{filterId}", - "request": { - "$ref": "Filter" - }, - "response": { - "$ref": "Filter" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "goals": { - "methods": { - "get": { - "description": "Gets a goal to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.goals.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "goalId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve the goal for.", - "location": "path", - "required": true, - "type": "string" - }, - "goalId": { - "description": "Goal ID to retrieve the goal for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to retrieve the goal for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the goal for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new goal.", - "httpMethod": "POST", - "id": "analytics.management.goals.insert", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the goal for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to create the goal for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to create the goal for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", - "request": { - "$ref": "Goal" - }, - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists goals to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.goals.list", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of goals to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "profileId": { - "description": "View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to.", - "location": "path", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals", - "response": { - "$ref": "Goals" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing goal. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.goals.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "goalId" - ], - "parameters": { - "accountId": { - "description": "Account ID to update the goal.", - "location": "path", - "required": true, - "type": "string" - }, - "goalId": { - "description": "Index of the goal to be updated.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to update the goal.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to update the goal.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", - "request": { - "$ref": "Goal" - }, - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing goal.", - "httpMethod": "PUT", - "id": "analytics.management.goals.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "goalId" - ], - "parameters": { - "accountId": { - "description": "Account ID to update the goal.", - "location": "path", - "required": true, - "type": "string" - }, - "goalId": { - "description": "Index of the goal to be updated.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to update the goal.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to update the goal.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}", - "request": { - "$ref": "Goal" - }, - "response": { - "$ref": "Goal" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "profileFilterLinks": { - "methods": { - "delete": { - "description": "Delete a profile filter link.", - "httpMethod": "DELETE", - "id": "analytics.management.profileFilterLinks.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the profile filter link belongs.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "linkId": { - "description": "ID of the profile filter link to delete.", - "location": "path", - "pattern": "\\d+:\\d+", - "required": true, - "type": "string" - }, - "profileId": { - "description": "Profile ID to which the filter link belongs.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id to which the profile filter link belongs.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Returns a single profile filter link.", - "httpMethod": "GET", - "id": "analytics.management.profileFilterLinks.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve profile filter link for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "linkId": { - "description": "ID of the profile filter link.", - "location": "path", - "pattern": "\\d+:\\d+", - "required": true, - "type": "string" - }, - "profileId": { - "description": "Profile ID to retrieve filter link for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id to retrieve profile filter link for.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new profile filter link.", - "httpMethod": "POST", - "id": "analytics.management.profileFilterLinks.insert", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create profile filter link for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "profileId": { - "description": "Profile ID to create filter link for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id to create profile filter link for.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks", - "request": { - "$ref": "ProfileFilterLink" - }, - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists all profile filter links for a profile.", - "httpMethod": "GET", - "id": "analytics.management.profileFilterLinks.list", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve profile filter links for.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of profile filter links to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "profileId": { - "description": "Profile ID to retrieve filter links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.", - "location": "path", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property Id for profile filter links for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks", - "response": { - "$ref": "ProfileFilterLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Update an existing profile filter link. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.profileFilterLinks.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which profile filter link belongs.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "linkId": { - "description": "ID of the profile filter link to be updated.", - "location": "path", - "pattern": "\\d+:\\d+", - "required": true, - "type": "string" - }, - "profileId": { - "description": "Profile ID to which filter link belongs", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id to which profile filter link belongs", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "request": { - "$ref": "ProfileFilterLink" - }, - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Update an existing profile filter link.", - "httpMethod": "PUT", - "id": "analytics.management.profileFilterLinks.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which profile filter link belongs.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "linkId": { - "description": "ID of the profile filter link to be updated.", - "location": "path", - "pattern": "\\d+:\\d+", - "required": true, - "type": "string" - }, - "profileId": { - "description": "Profile ID to which filter link belongs", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id to which profile filter link belongs", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}", - "request": { - "$ref": "ProfileFilterLink" - }, - "response": { - "$ref": "ProfileFilterLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "profileUserLinks": { - "methods": { - "delete": { - "description": "Removes a user from the given view (profile).", - "httpMethod": "DELETE", - "id": "analytics.management.profileUserLinks.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "linkId": { - "description": "Link ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "insert": { - "description": "Adds a new user to the given view (profile).", - "httpMethod": "POST", - "id": "analytics.management.profileUserLinks.insert", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to create the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to create the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks", - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "list": { - "description": "Lists profile-user links for a given view (profile).", - "httpMethod": "GET", - "id": "analytics.management.profileUserLinks.list", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID which the given view (profile) belongs to.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of profile-user links to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "profileId": { - "description": "View (Profile) ID to retrieve the profile-user links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to.", - "location": "path", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first profile-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web Property ID which the given view (profile) belongs to. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks", - "response": { - "$ref": "EntityUserLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users", - "https://www.googleapis.com/auth/analytics.manage.users.readonly" - ] - }, - "update": { - "description": "Updates permissions for an existing user on the given view (profile).", - "httpMethod": "PUT", - "id": "analytics.management.profileUserLinks.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to update the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "linkId": { - "description": "Link ID to update the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile ID) to update the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to update the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}", - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - } - } - }, - "profiles": { - "methods": { - "delete": { - "description": "Deletes a view (profile).", - "httpMethod": "DELETE", - "id": "analytics.management.profiles.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to delete the view (profile) for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "ID of the view (profile) to be deleted.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to delete the view (profile) for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Gets a view (profile) to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.profiles.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve the view (profile) for.", - "location": "path", - "pattern": "[0-9]+", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to retrieve the view (profile) for.", - "location": "path", - "pattern": "[0-9]+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the view (profile) for.", - "location": "path", - "pattern": "UA-[0-9]+-[0-9]+", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new view (profile).", - "httpMethod": "POST", - "id": "analytics.management.profiles.insert", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the view (profile) for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to create the view (profile) for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", - "request": { - "$ref": "Profile" - }, - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists views (profiles) to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.profiles.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of views (profiles) to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles", - "response": { - "$ref": "Profiles" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing view (profile). This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.profiles.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the view (profile) belongs", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "ID of the view (profile) to be updated.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to which the view (profile) belongs", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "request": { - "$ref": "Profile" - }, - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing view (profile).", - "httpMethod": "PUT", - "id": "analytics.management.profiles.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the view (profile) belongs", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "ID of the view (profile) to be updated.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to which the view (profile) belongs", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}", - "request": { - "$ref": "Profile" - }, - "response": { - "$ref": "Profile" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "remarketingAudience": { - "methods": { - "delete": { - "description": "Delete a remarketing audience.", - "httpMethod": "DELETE", - "id": "analytics.management.remarketingAudience.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the remarketing audience belongs.", - "location": "path", - "required": true, - "type": "string" - }, - "remarketingAudienceId": { - "description": "The ID of the remarketing audience to delete.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to which the remarketing audience belongs.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Gets a remarketing audience to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.remarketingAudience.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "parameters": { - "accountId": { - "description": "The account ID of the remarketing audience to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "remarketingAudienceId": { - "description": "The ID of the remarketing audience to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "The web property ID of the remarketing audience to retrieve.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Creates a new remarketing audience.", - "httpMethod": "POST", - "id": "analytics.management.remarketingAudience.insert", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "The account ID for which to create the remarketing audience.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID for which to create the remarketing audience.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", - "request": { - "$ref": "RemarketingAudience" - }, - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists remarketing audiences to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.remarketingAudience.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "The account ID of the remarketing audiences to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of remarketing audiences to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "type": { - "default": "all", - "location": "query", - "type": "string" - }, - "webPropertyId": { - "description": "The web property ID of the remarketing audiences to retrieve.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", - "response": { - "$ref": "RemarketingAudiences" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing remarketing audience. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.remarketingAudience.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "parameters": { - "accountId": { - "description": "The account ID of the remarketing audience to update.", - "location": "path", - "required": true, - "type": "string" - }, - "remarketingAudienceId": { - "description": "The ID of the remarketing audience to update.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "The web property ID of the remarketing audience to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "request": { - "$ref": "RemarketingAudience" - }, - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing remarketing audience.", - "httpMethod": "PUT", - "id": "analytics.management.remarketingAudience.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "remarketingAudienceId" - ], - "parameters": { - "accountId": { - "description": "The account ID of the remarketing audience to update.", - "location": "path", - "required": true, - "type": "string" - }, - "remarketingAudienceId": { - "description": "The ID of the remarketing audience to update.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "The web property ID of the remarketing audience to update.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", - "request": { - "$ref": "RemarketingAudience" - }, - "response": { - "$ref": "RemarketingAudience" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "segments": { - "methods": { - "list": { - "description": "Lists segments to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.segments.list", - "parameters": { - "max-results": { - "description": "The maximum number of segments to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "management/segments", - "response": { - "$ref": "Segments" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "unsampledReports": { - "methods": { - "delete": { - "description": "Deletes an unsampled report.", - "httpMethod": "DELETE", - "id": "analytics.management.unsampledReports.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "unsampledReportId" - ], - "parameters": { - "accountId": { - "description": "Account ID to delete the unsampled report for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to delete the unsampled report for.", - "location": "path", - "required": true, - "type": "string" - }, - "unsampledReportId": { - "description": "ID of the unsampled report to be deleted.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to delete the unsampled reports for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Returns a single unsampled report.", - "httpMethod": "GET", - "id": "analytics.management.unsampledReports.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId", - "unsampledReportId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve unsampled report for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to retrieve unsampled report for.", - "location": "path", - "required": true, - "type": "string" - }, - "unsampledReportId": { - "description": "ID of the unsampled report to retrieve.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve unsampled reports for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}", - "response": { - "$ref": "UnsampledReport" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new unsampled report.", - "httpMethod": "POST", - "id": "analytics.management.unsampledReports.insert", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the unsampled report for.", - "location": "path", - "required": true, - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to create the unsampled report for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to create the unsampled report for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports", - "request": { - "$ref": "UnsampledReport" - }, - "response": { - "$ref": "UnsampledReport" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists unsampled reports to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.unsampledReports.list", - "parameterOrder": [ - "accountId", - "webPropertyId", - "profileId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve unsampled reports for. Must be a specific account ID, ~all is not supported.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of unsampled reports to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "profileId": { - "description": "View (Profile) ID to retrieve unsampled reports for. Must be a specific view (profile) ID, ~all is not supported.", - "location": "path", - "required": true, - "type": "string" - }, - "start-index": { - "description": "An index of the first unsampled report to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID to retrieve unsampled reports for. Must be a specific web property ID, ~all is not supported.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports", - "response": { - "$ref": "UnsampledReports" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - }, - "uploads": { - "methods": { - "deleteUploadData": { - "description": "Delete data associated with a previous upload.", - "httpMethod": "POST", - "id": "analytics.management.uploads.deleteUploadData", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId" - ], - "parameters": { - "accountId": { - "description": "Account Id for the uploads to be deleted.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "customDataSourceId": { - "description": "Custom data source Id for the uploads to be deleted.", - "location": "path", - "pattern": ".{22}", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id for the uploads to be deleted.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/deleteUploadData", - "request": { - "$ref": "AnalyticsDataimportDeleteUploadDataRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "List uploads to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.uploads.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId", - "uploadId" - ], - "parameters": { - "accountId": { - "description": "Account Id for the upload to retrieve.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "customDataSourceId": { - "description": "Custom data source Id for upload to retrieve.", - "location": "path", - "pattern": ".{22}", - "required": true, - "type": "string" - }, - "uploadId": { - "description": "Upload Id to retrieve.", - "location": "path", - "pattern": ".{22}", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property Id for the upload to retrieve.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads/{uploadId}", - "response": { - "$ref": "Upload" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "list": { - "description": "List uploads to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.uploads.list", - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId" - ], - "parameters": { - "accountId": { - "description": "Account Id for the uploads to retrieve.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "customDataSourceId": { - "description": "Custom data source Id for uploads to retrieve.", - "location": "path", - "pattern": ".{22}", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of uploads to include in this response.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "start-index": { - "description": "A 1-based index of the first upload to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property Id for the uploads to retrieve.", - "location": "path", - "pattern": "UA-(\\d+)-(\\d+)", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads", - "response": { - "$ref": "Uploads" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "uploadData": { - "description": "Upload data for a custom data source.", - "httpMethod": "POST", - "id": "analytics.management.uploads.uploadData", - "mediaUpload": { - "accept": [ - "application/octet-stream" - ], - "maxSize": "1GB", - "protocols": { - "resumable": { - "multipart": true, - "path": "/resumable/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads" - }, - "simple": { - "multipart": true, - "path": "/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads" - } - } - }, - "parameterOrder": [ - "accountId", - "webPropertyId", - "customDataSourceId" - ], - "parameters": { - "accountId": { - "description": "Account Id associated with the upload.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "customDataSourceId": { - "description": "Custom data source Id to which the data being uploaded belongs.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property UA-string associated with the upload.", - "location": "path", - "pattern": "UA-\\d+-\\d+", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads", - "response": { - "$ref": "Upload" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit" - ], - "supportsMediaUpload": true - } - } - }, - "webPropertyAdWordsLinks": { - "methods": { - "delete": { - "description": "Deletes a web property-Google Ads link.", - "httpMethod": "DELETE", - "id": "analytics.management.webPropertyAdWordsLinks.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "parameters": { - "accountId": { - "description": "ID of the account which the given web property belongs to.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyAdWordsLinkId": { - "description": "Web property Google Ads link ID.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to delete the Google Ads link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "get": { - "description": "Returns a web property-Google Ads link to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.webPropertyAdWordsLinks.get", - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "parameters": { - "accountId": { - "description": "ID of the account which the given web property belongs to.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyAdWordsLinkId": { - "description": "Web property-Google Ads link ID.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the Google Ads link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Creates a webProperty-Google Ads link.", - "httpMethod": "POST", - "id": "analytics.management.webPropertyAdWordsLinks.insert", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "ID of the Google Analytics account to create the link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to create the link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks", - "request": { - "$ref": "EntityAdWordsLink" - }, - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists webProperty-Google Ads links for a given web property.", - "httpMethod": "GET", - "id": "analytics.management.webPropertyAdWordsLinks.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "ID of the account which the given web property belongs to.", - "location": "path", - "pattern": "\\d+", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of webProperty-Google Ads links to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first webProperty-Google Ads link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the Google Ads links for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks", - "response": { - "$ref": "EntityAdWordsLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing webProperty-Google Ads link. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.webPropertyAdWordsLinks.patch", - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "parameters": { - "accountId": { - "description": "ID of the account which the given web property belongs to.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyAdWordsLinkId": { - "description": "Web property-Google Ads link ID.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the Google Ads link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "request": { - "$ref": "EntityAdWordsLink" - }, - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing webProperty-Google Ads link.", - "httpMethod": "PUT", - "id": "analytics.management.webPropertyAdWordsLinks.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "webPropertyAdWordsLinkId" - ], - "parameters": { - "accountId": { - "description": "ID of the account which the given web property belongs to.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyAdWordsLinkId": { - "description": "Web property-Google Ads link ID.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to retrieve the Google Ads link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}", - "request": { - "$ref": "EntityAdWordsLink" - }, - "response": { - "$ref": "EntityAdWordsLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "webproperties": { - "methods": { - "get": { - "description": "Gets a web property to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.webproperties.get", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve the web property for.", - "location": "path", - "pattern": "[0-9]+", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "ID to retrieve the web property for.", - "location": "path", - "pattern": "UA-[0-9]+-[0-9]+", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "insert": { - "description": "Create a new property if the account has fewer than 20 properties. Web properties are visible in the Google Analytics interface only if they have at least one profile.", - "httpMethod": "POST", - "id": "analytics.management.webproperties.insert", - "parameterOrder": [ - "accountId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the web property for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties", - "request": { - "$ref": "Webproperty" - }, - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "list": { - "description": "Lists web properties to which the user has access.", - "httpMethod": "GET", - "id": "analytics.management.webproperties.list", - "parameterOrder": [ - "accountId" - ], - "parameters": { - "accountId": { - "description": "Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of web properties to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - } - }, - "path": "management/accounts/{accountId}/webproperties", - "response": { - "$ref": "Webproperties" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - }, - "patch": { - "description": "Updates an existing web property. This method supports patch semantics.", - "httpMethod": "PATCH", - "id": "analytics.management.webproperties.patch", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the web property belongs", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", - "request": { - "$ref": "Webproperty" - }, - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - }, - "update": { - "description": "Updates an existing web property.", - "httpMethod": "PUT", - "id": "analytics.management.webproperties.update", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID to which the web property belongs", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}", - "request": { - "$ref": "Webproperty" - }, - "response": { - "$ref": "Webproperty" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.edit" - ] - } - } - }, - "webpropertyUserLinks": { - "methods": { - "delete": { - "description": "Removes a user from the given web property.", - "httpMethod": "DELETE", - "id": "analytics.management.webpropertyUserLinks.delete", - "parameterOrder": [ - "accountId", - "webPropertyId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "linkId": { - "description": "Link ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to delete the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}", - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "insert": { - "description": "Adds a new user to the given web property.", - "httpMethod": "POST", - "id": "analytics.management.webpropertyUserLinks.insert", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID to create the user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to create the user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks", - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - }, - "list": { - "description": "Lists webProperty-user links for a given web property.", - "httpMethod": "GET", - "id": "analytics.management.webpropertyUserLinks.list", - "parameterOrder": [ - "accountId", - "webPropertyId" - ], - "parameters": { - "accountId": { - "description": "Account ID which the given web property belongs to.", - "location": "path", - "required": true, - "type": "string" - }, - "max-results": { - "description": "The maximum number of webProperty-user Links to include in this response.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "start-index": { - "description": "An index of the first webProperty-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", - "format": "int32", - "location": "query", - "minimum": "1", - "type": "integer" - }, - "webPropertyId": { - "description": "Web Property ID for the webProperty-user links to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks", - "response": { - "$ref": "EntityUserLinks" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users", - "https://www.googleapis.com/auth/analytics.manage.users.readonly" - ] - }, - "update": { - "description": "Updates permissions for an existing user on the given web property.", - "httpMethod": "PUT", - "id": "analytics.management.webpropertyUserLinks.update", - "parameterOrder": [ - "accountId", - "webPropertyId", - "linkId" - ], - "parameters": { - "accountId": { - "description": "Account ID to update the account-user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "linkId": { - "description": "Link ID to update the account-user link for.", - "location": "path", - "required": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to update the account-user link for.", - "location": "path", - "required": true, - "type": "string" - } - }, - "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}", - "request": { - "$ref": "EntityUserLink" - }, - "response": { - "$ref": "EntityUserLink" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.manage.users" - ] - } - } - } - } - }, - "metadata": { - "resources": { - "columns": { - "methods": { - "list": { - "description": "Lists all columns for a report type", - "httpMethod": "GET", - "id": "analytics.metadata.columns.list", - "parameterOrder": [ - "reportType" - ], - "parameters": { - "reportType": { - "description": "Report type. Allowed Values: 'ga'. Where 'ga' corresponds to the Core Reporting API", - "location": "path", - "pattern": "ga", - "required": true, - "type": "string" - } - }, - "path": "metadata/{reportType}/columns", - "response": { - "$ref": "Columns" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics", - "https://www.googleapis.com/auth/analytics.edit", - "https://www.googleapis.com/auth/analytics.readonly" - ] - } - } - } - } - }, - "provisioning": { - "methods": { - "createAccountTicket": { - "description": "Creates an account ticket.", - "httpMethod": "POST", - "id": "analytics.provisioning.createAccountTicket", - "path": "provisioning/createAccountTicket", - "request": { - "$ref": "AccountTicket" - }, - "response": { - "$ref": "AccountTicket" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.provision" - ] - }, - "createAccountTree": { - "description": "Provision account.", - "httpMethod": "POST", - "id": "analytics.provisioning.createAccountTree", - "path": "provisioning/createAccountTree", - "request": { - "$ref": "AccountTreeRequest" - }, - "response": { - "$ref": "AccountTreeResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.provision" - ] - } - } - }, - "userDeletion": { - "resources": { - "userDeletionRequest": { - "methods": { - "upsert": { - "description": "Insert or update a user deletion requests.", - "httpMethod": "POST", - "id": "analytics.userDeletion.userDeletionRequest.upsert", - "path": "userDeletion/userDeletionRequests:upsert", - "request": { - "$ref": "UserDeletionRequest" - }, - "response": { - "$ref": "UserDeletionRequest" - }, - "scopes": [ - "https://www.googleapis.com/auth/analytics.user.deletion" - ] - } - } - } - } - } - }, - "revision": "20190807", - "rootUrl": "https://analytics.googleapis.com/", - "schemas": { - "Account": { - "description": "JSON template for Analytics account entry.", - "id": "Account", - "properties": { - "childLink": { - "description": "Child link for an account entry. Points to the list of web properties for this account.", - "properties": { - "href": { - "description": "Link to the list of web properties for this account.", - "type": "string" - }, - "type": { - "default": "analytics#webproperties", - "description": "Type of the child link. Its value is \"analytics#webproperties\".", - "type": "string" - } - }, - "type": "object" - }, - "created": { - "description": "Time the account was created.", - "format": "date-time", - "type": "string" - }, - "id": { - "description": "Account ID.", - "type": "string" - }, - "kind": { - "default": "analytics#account", - "description": "Resource type for Analytics account.", - "type": "string" - }, - "name": { - "description": "Account name.", - "type": "string" - }, - "permissions": { - "description": "Permissions the user has for this account.", - "properties": { - "effective": { - "description": "All the permissions that the user has for this account. These include any implied permissions (e.g., EDIT implies VIEW).", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - } - }, - "type": "object" - }, - "selfLink": { - "description": "Link for this account.", - "type": "string" - }, - "starred": { - "description": "Indicates whether this account is starred or not.", - "type": "boolean" - }, - "updated": { - "description": "Time the account was last modified.", - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "AccountRef": { - "description": "JSON template for a linked account.", - "id": "AccountRef", - "properties": { - "href": { - "description": "Link for this account.", - "type": "string" - }, - "id": { - "description": "Account ID.", - "type": "string" - }, - "kind": { - "default": "analytics#accountRef", - "description": "Analytics account reference.", - "type": "string" - }, - "name": { - "description": "Account name.", - "type": "string" - } - }, - "type": "object" - }, - "AccountSummaries": { - "description": "An AccountSummary collection lists a summary of accounts, properties and views (profiles) to which the user has access. Each resource in the collection corresponds to a single AccountSummary.", - "id": "AccountSummaries", - "properties": { - "items": { - "description": "A list of AccountSummaries.", - "items": { - "$ref": "AccountSummary" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#accountSummaries", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this AccountSummary collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this AccountSummary collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "AccountSummary": { - "description": "JSON template for an Analytics AccountSummary. An AccountSummary is a lightweight tree comprised of properties/profiles.", - "id": "AccountSummary", - "properties": { - "id": { - "description": "Account ID.", - "type": "string" - }, - "kind": { - "default": "analytics#accountSummary", - "description": "Resource type for Analytics AccountSummary.", - "type": "string" - }, - "name": { - "description": "Account name.", - "type": "string" - }, - "starred": { - "description": "Indicates whether this account is starred or not.", - "type": "boolean" - }, - "webProperties": { - "description": "List of web properties under this account.", - "items": { - "$ref": "WebPropertySummary" - }, - "type": "array" - } - }, - "type": "object" - }, - "AccountTicket": { - "description": "JSON template for an Analytics account ticket. The account ticket consists of the ticket ID and the basic information for the account, property and profile.", - "id": "AccountTicket", - "properties": { - "account": { - "$ref": "Account", - "description": "Account for this ticket." - }, - "id": { - "description": "Account ticket ID used to access the account ticket.", - "type": "string" - }, - "kind": { - "default": "analytics#accountTicket", - "description": "Resource type for account ticket.", - "type": "string" - }, - "profile": { - "$ref": "Profile", - "description": "View (Profile) for the account." - }, - "redirectUri": { - "description": "Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in APIs console as a callback URL.", - "type": "string" - }, - "webproperty": { - "$ref": "Webproperty", - "description": "Web property for the account." - } - }, - "type": "object" - }, - "AccountTreeRequest": { - "description": "JSON template for an Analytics account tree requests. The account tree request is used in the provisioning api to create an account, property, and view (profile). It contains the basic information required to make these fields.", - "id": "AccountTreeRequest", - "properties": { - "accountName": { - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - }, - "type": "string" - }, - "kind": { - "default": "analytics#accountTreeRequest", - "description": "Resource type for account ticket.", - "type": "string" - }, - "profileName": { - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - }, - "type": "string" - }, - "timezone": { - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - }, - "type": "string" - }, - "webpropertyName": { - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - }, - "type": "string" - }, - "websiteUrl": { - "annotations": { - "required": [ - "analytics.provisioning.createAccountTree" - ] - }, - "type": "string" - } - }, - "type": "object" - }, - "AccountTreeResponse": { - "description": "JSON template for an Analytics account tree response. The account tree response is used in the provisioning api to return the result of creating an account, property, and view (profile).", - "id": "AccountTreeResponse", - "properties": { - "account": { - "$ref": "Account", - "description": "The account created." - }, - "kind": { - "default": "analytics#accountTreeResponse", - "description": "Resource type for account ticket.", - "type": "string" - }, - "profile": { - "$ref": "Profile", - "description": "View (Profile) for the account." - }, - "webproperty": { - "$ref": "Webproperty", - "description": "Web property for the account." - } - }, - "type": "object" - }, - "Accounts": { - "description": "An account collection provides a list of Analytics accounts to which a user has access. The account collection is the entry point to all management information. Each resource in the collection corresponds to a single Analytics account.", - "id": "Accounts", - "properties": { - "items": { - "description": "A list of accounts.", - "items": { - "$ref": "Account" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#accounts", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Next link for this account collection.", - "type": "string" - }, - "previousLink": { - "description": "Previous link for this account collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "AdWordsAccount": { - "description": "JSON template for an Google Ads account.", - "id": "AdWordsAccount", - "properties": { - "autoTaggingEnabled": { - "description": "True if auto-tagging is enabled on the Google Ads account. Read-only after the insert operation.", - "type": "boolean" - }, - "customerId": { - "annotations": { - "required": [ - "analytics.management.webPropertyAdWordsLinks.insert", - "analytics.management.webPropertyAdWordsLinks.update" - ] - }, - "description": "Customer ID. This field is required when creating a Google Ads link.", - "type": "string" - }, - "kind": { - "default": "analytics#adWordsAccount", - "description": "Resource type for Google Ads account.", - "type": "string" - } - }, - "type": "object" - }, - "AnalyticsDataimportDeleteUploadDataRequest": { - "description": "Request template for the delete upload data request.", - "id": "AnalyticsDataimportDeleteUploadDataRequest", - "properties": { - "customDataImportUids": { - "description": "A list of upload UIDs.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "Column": { - "description": "JSON template for a metadata column.", - "id": "Column", - "properties": { - "attributes": { - "additionalProperties": { - "description": "The name of the attribute.", - "type": "string" - }, - "description": "Map of attribute name and value for this column.", - "type": "object" - }, - "id": { - "description": "Column id.", - "type": "string" - }, - "kind": { - "default": "analytics#column", - "description": "Resource type for Analytics column.", - "type": "string" - } - }, - "type": "object" - }, - "Columns": { - "description": "Lists columns (dimensions and metrics) for a particular report type.", - "id": "Columns", - "properties": { - "attributeNames": { - "description": "List of attributes names returned by columns.", - "items": { - "type": "string" - }, - "type": "array" - }, - "etag": { - "description": "Etag of collection. This etag can be compared with the last response etag to check if response has changed.", - "type": "string" - }, - "items": { - "description": "List of columns for a report type.", - "items": { - "$ref": "Column" - }, - "type": "array" - }, - "kind": { - "default": "analytics#columns", - "description": "Collection type.", - "type": "string" - }, - "totalResults": { - "description": "Total number of columns returned in the response.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "CustomDataSource": { - "description": "JSON template for an Analytics custom data source.", - "id": "CustomDataSource", - "properties": { - "accountId": { - "description": "Account ID to which this custom data source belongs.", - "type": "string" - }, - "childLink": { - "properties": { - "href": { - "description": "Link to the list of daily uploads for this custom data source. Link to the list of uploads for this custom data source.", - "type": "string" - }, - "type": { - "description": "Value is \"analytics#dailyUploads\". Value is \"analytics#uploads\".", - "type": "string" - } - }, - "type": "object" - }, - "created": { - "description": "Time this custom data source was created.", - "format": "date-time", - "type": "string" - }, - "description": { - "description": "Description of custom data source.", - "type": "string" - }, - "id": { - "description": "Custom data source ID.", - "type": "string" - }, - "importBehavior": { - "type": "string" - }, - "kind": { - "default": "analytics#customDataSource", - "description": "Resource type for Analytics custom data source.", - "type": "string" - }, - "name": { - "description": "Name of this custom data source.", - "type": "string" - }, - "parentLink": { - "description": "Parent link for this custom data source. Points to the web property to which this custom data source belongs.", - "properties": { - "href": { - "description": "Link to the web property to which this custom data source belongs.", - "type": "string" - }, - "type": { - "default": "analytics#webproperty", - "description": "Value is \"analytics#webproperty\".", - "type": "string" - } - }, - "type": "object" - }, - "profilesLinked": { - "description": "IDs of views (profiles) linked to the custom data source.", - "items": { - "type": "string" - }, - "type": "array" - }, - "schema": { - "description": "Collection of schema headers of the custom data source.", - "items": { - "type": "string" - }, - "type": "array" - }, - "selfLink": { - "description": "Link for this Analytics custom data source.", - "type": "string" - }, - "type": { - "description": "Type of the custom data source.", - "type": "string" - }, - "updated": { - "description": "Time this custom data source was last modified.", - "format": "date-time", - "type": "string" - }, - "uploadType": { - "description": "Upload type of the custom data source.", - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the form UA-XXXXX-YY to which this custom data source belongs.", - "type": "string" - } - }, - "type": "object" - }, - "CustomDataSources": { - "description": "Lists Analytics custom data sources to which the user has access. Each resource in the collection corresponds to a single Analytics custom data source.", - "id": "CustomDataSources", - "properties": { - "items": { - "description": "Collection of custom data sources.", - "items": { - "$ref": "CustomDataSource" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#customDataSources", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this custom data source collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this custom data source collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "CustomDimension": { - "description": "JSON template for Analytics Custom Dimension.", - "id": "CustomDimension", - "properties": { - "accountId": { - "description": "Account ID.", - "type": "string" - }, - "active": { - "description": "Boolean indicating whether the custom dimension is active.", - "type": "boolean" - }, - "created": { - "description": "Time the custom dimension was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "id": { - "description": "Custom dimension ID.", - "type": "string" - }, - "index": { - "description": "Index of the custom dimension.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "kind": { - "default": "analytics#customDimension", - "description": "Kind value for a custom dimension. Set to \"analytics#customDimension\". It is a read-only field.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of the custom dimension.", - "type": "string" - }, - "parentLink": { - "description": "Parent link for the custom dimension. Points to the property to which the custom dimension belongs.", - "properties": { - "href": { - "description": "Link to the property to which the custom dimension belongs.", - "type": "string" - }, - "type": { - "default": "analytics#webproperty", - "description": "Type of the parent link. Set to \"analytics#webproperty\".", - "type": "string" - } - }, - "type": "object" - }, - "scope": { - "description": "Scope of the custom dimension: HIT, SESSION, USER or PRODUCT.", - "type": "string" - }, - "selfLink": { - "description": "Link for the custom dimension", - "readOnly": true, - "type": "string" - }, - "updated": { - "description": "Time the custom dimension was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "webPropertyId": { - "description": "Property ID.", - "type": "string" - } - }, - "type": "object" - }, - "CustomDimensions": { - "description": "A custom dimension collection lists Analytics custom dimensions to which the user has access. Each resource in the collection corresponds to a single Analytics custom dimension.", - "id": "CustomDimensions", - "properties": { - "items": { - "description": "Collection of custom dimensions.", - "items": { - "$ref": "CustomDimension" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#customDimensions", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this custom dimension collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this custom dimension collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "CustomMetric": { - "description": "JSON template for Analytics Custom Metric.", - "id": "CustomMetric", - "properties": { - "accountId": { - "description": "Account ID.", - "type": "string" - }, - "active": { - "description": "Boolean indicating whether the custom metric is active.", - "type": "boolean" - }, - "created": { - "description": "Time the custom metric was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "id": { - "description": "Custom metric ID.", - "type": "string" - }, - "index": { - "description": "Index of the custom metric.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "kind": { - "default": "analytics#customMetric", - "description": "Kind value for a custom metric. Set to \"analytics#customMetric\". It is a read-only field.", - "readOnly": true, - "type": "string" - }, - "max_value": { - "description": "Max value of custom metric.", - "type": "string" - }, - "min_value": { - "description": "Min value of custom metric.", - "type": "string" - }, - "name": { - "description": "Name of the custom metric.", - "type": "string" - }, - "parentLink": { - "description": "Parent link for the custom metric. Points to the property to which the custom metric belongs.", - "properties": { - "href": { - "description": "Link to the property to which the custom metric belongs.", - "type": "string" - }, - "type": { - "default": "analytics#webproperty", - "description": "Type of the parent link. Set to \"analytics#webproperty\".", - "type": "string" - } - }, - "type": "object" - }, - "scope": { - "description": "Scope of the custom metric: HIT or PRODUCT.", - "type": "string" - }, - "selfLink": { - "description": "Link for the custom metric", - "readOnly": true, - "type": "string" - }, - "type": { - "description": "Data type of custom metric.", - "type": "string" - }, - "updated": { - "description": "Time the custom metric was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "webPropertyId": { - "description": "Property ID.", - "type": "string" - } - }, - "type": "object" - }, - "CustomMetrics": { - "description": "A custom metric collection lists Analytics custom metrics to which the user has access. Each resource in the collection corresponds to a single Analytics custom metric.", - "id": "CustomMetrics", - "properties": { - "items": { - "description": "Collection of custom metrics.", - "items": { - "$ref": "CustomMetric" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#customMetrics", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this custom metric collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this custom metric collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "EntityAdWordsLink": { - "description": "JSON template for Analytics Entity Google Ads Link.", - "id": "EntityAdWordsLink", - "properties": { - "adWordsAccounts": { - "annotations": { - "required": [ - "analytics.management.webPropertyAdWordsLinks.insert", - "analytics.management.webPropertyAdWordsLinks.update" - ] - }, - "description": "A list of Google Ads client accounts. These cannot be MCC accounts. This field is required when creating a Google Ads link. It cannot be empty.", - "items": { - "$ref": "AdWordsAccount" - }, - "type": "array" - }, - "entity": { - "description": "Web property being linked.", - "properties": { - "webPropertyRef": { - "$ref": "WebPropertyRef" - } - }, - "type": "object" - }, - "id": { - "description": "Entity Google Ads link ID", - "type": "string" - }, - "kind": { - "default": "analytics#entityAdWordsLink", - "description": "Resource type for entity Google Ads link.", - "type": "string" - }, - "name": { - "annotations": { - "required": [ - "analytics.management.webPropertyAdWordsLinks.insert", - "analytics.management.webPropertyAdWordsLinks.update" - ] - }, - "description": "Name of the link. This field is required when creating a Google Ads link.", - "type": "string" - }, - "profileIds": { - "description": "IDs of linked Views (Profiles) represented as strings.", - "items": { - "type": "string" - }, - "type": "array" - }, - "selfLink": { - "description": "URL link for this Google Analytics - Google Ads link.", - "type": "string" - } - }, - "type": "object" - }, - "EntityAdWordsLinks": { - "description": "An entity Google Ads link collection provides a list of GA-Google Ads links Each resource in this collection corresponds to a single link.", - "id": "EntityAdWordsLinks", - "properties": { - "items": { - "description": "A list of entity Google Ads links.", - "items": { - "$ref": "EntityAdWordsLink" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#entityAdWordsLinks", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Next link for this Google Ads link collection.", - "type": "string" - }, - "previousLink": { - "description": "Previous link for this Google Ads link collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "EntityUserLink": { - "description": "JSON template for an Analytics Entity-User Link. Returns permissions that a user has for an entity.", - "id": "EntityUserLink", - "properties": { - "entity": { - "description": "Entity for this link. It can be an account, a web property, or a view (profile).", - "properties": { - "accountRef": { - "$ref": "AccountRef", - "description": "Account for this link." - }, - "profileRef": { - "$ref": "ProfileRef", - "description": "View (Profile) for this link." - }, - "webPropertyRef": { - "$ref": "WebPropertyRef", - "description": "Web property for this link." - } - }, - "type": "object" - }, - "id": { - "description": "Entity user link ID", - "type": "string" - }, - "kind": { - "default": "analytics#entityUserLink", - "description": "Resource type for entity user link.", - "type": "string" - }, - "permissions": { - "description": "Permissions the user has for this entity.", - "properties": { - "effective": { - "description": "Effective permissions represent all the permissions that a user has for this entity. These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent entity. Effective permissions are read-only.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, - "local": { - "description": "Permissions that a user has been assigned at this very level. Does not include any implied or inherited permissions. Local permissions are modifiable.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "selfLink": { - "description": "Self link for this resource.", - "type": "string" - }, - "userRef": { - "$ref": "UserRef", - "description": "User reference." - } - }, - "type": "object" - }, - "EntityUserLinks": { - "description": "An entity user link collection provides a list of Analytics ACL links Each resource in this collection corresponds to a single link.", - "id": "EntityUserLinks", - "properties": { - "items": { - "description": "A list of entity user links.", - "items": { - "$ref": "EntityUserLink" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#entityUserLinks", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Next link for this account collection.", - "type": "string" - }, - "previousLink": { - "description": "Previous link for this account collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "Experiment": { - "description": "JSON template for Analytics experiment resource.", - "id": "Experiment", - "properties": { - "accountId": { - "description": "Account ID to which this experiment belongs. This field is read-only.", - "type": "string" - }, - "created": { - "description": "Time the experiment was created. This field is read-only.", - "format": "date-time", - "type": "string" - }, - "description": { - "description": "Notes about this experiment.", - "type": "string" - }, - "editableInGaUi": { - "description": "If true, the end user will be able to edit the experiment via the Google Analytics user interface.", - "type": "boolean" - }, - "endTime": { - "description": "The ending time of the experiment (the time the status changed from RUNNING to ENDED). This field is present only if the experiment has ended. This field is read-only.", - "format": "date-time", - "type": "string" - }, - "equalWeighting": { - "description": "Boolean specifying whether to distribute traffic evenly across all variations. If the value is False, content experiments follows the default behavior of adjusting traffic dynamically based on variation performance. Optional -- defaults to False. This field may not be changed for an experiment whose status is ENDED.", - "type": "boolean" - }, - "id": { - "annotations": { - "required": [ - "analytics.management.experiments.patch", - "analytics.management.experiments.update" - ] - }, - "description": "Experiment ID. Required for patch and update. Disallowed for create.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this experiment belongs. This field is read-only.", - "type": "string" - }, - "kind": { - "default": "analytics#experiment", - "description": "Resource type for an Analytics experiment. This field is read-only.", - "type": "string" - }, - "minimumExperimentLengthInDays": { - "description": "An integer number in [3, 90]. Specifies the minimum length of the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.", - "format": "int32", - "type": "integer" - }, - "name": { - "annotations": { - "required": [ - "analytics.management.experiments.insert", - "analytics.management.experiments.update" - ] - }, - "description": "Experiment name. This field may not be changed for an experiment whose status is ENDED. This field is required when creating an experiment.", - "type": "string" - }, - "objectiveMetric": { - "description": "The metric that the experiment is optimizing. Valid values: \"ga:goal(n)Completions\", \"ga:adsenseAdsClicks\", \"ga:adsenseAdsViewed\", \"ga:adsenseRevenue\", \"ga:bounces\", \"ga:pageviews\", \"ga:sessionDuration\", \"ga:transactions\", \"ga:transactionRevenue\". This field is required if status is \"RUNNING\" and servingFramework is one of \"REDIRECT\" or \"API\".", - "type": "string" - }, - "optimizationType": { - "description": "Whether the objectiveMetric should be minimized or maximized. Possible values: \"MAXIMUM\", \"MINIMUM\". Optional--defaults to \"MAXIMUM\". Cannot be specified without objectiveMetric. Cannot be modified when status is \"RUNNING\" or \"ENDED\".", - "type": "string" - }, - "parentLink": { - "description": "Parent link for an experiment. Points to the view (profile) to which this experiment belongs.", - "properties": { - "href": { - "description": "Link to the view (profile) to which this experiment belongs. This field is read-only.", - "type": "string" - }, - "type": { - "default": "analytics#profile", - "description": "Value is \"analytics#profile\". This field is read-only.", - "type": "string" - } - }, - "type": "object" - }, - "profileId": { - "description": "View (Profile) ID to which this experiment belongs. This field is read-only.", - "type": "string" - }, - "reasonExperimentEnded": { - "description": "Why the experiment ended. Possible values: \"STOPPED_BY_USER\", \"WINNER_FOUND\", \"EXPERIMENT_EXPIRED\", \"ENDED_WITH_NO_WINNER\", \"GOAL_OBJECTIVE_CHANGED\". \"ENDED_WITH_NO_WINNER\" means that the experiment didn't expire but no winner was projected to be found. If the experiment status is changed via the API to ENDED this field is set to STOPPED_BY_USER. This field is read-only.", - "type": "string" - }, - "rewriteVariationUrlsAsOriginal": { - "description": "Boolean specifying whether variations URLS are rewritten to match those of the original. This field may not be changed for an experiments whose status is ENDED.", - "type": "boolean" - }, - "selfLink": { - "description": "Link for this experiment. This field is read-only.", - "type": "string" - }, - "servingFramework": { - "description": "The framework used to serve the experiment variations and evaluate the results. One of: \n- REDIRECT: Google Analytics redirects traffic to different variation pages, reports the chosen variation and evaluates the results.\n- API: Google Analytics chooses and reports the variation to serve and evaluates the results; the caller is responsible for serving the selected variation.\n- EXTERNAL: The variations will be served externally and the chosen variation reported to Google Analytics. The caller is responsible for serving the selected variation and evaluating the results.", - "type": "string" - }, - "snippet": { - "description": "The snippet of code to include on the control page(s). This field is read-only.", - "type": "string" - }, - "startTime": { - "description": "The starting time of the experiment (the time the status changed from READY_TO_RUN to RUNNING). This field is present only if the experiment has started. This field is read-only.", - "format": "date-time", - "type": "string" - }, - "status": { - "annotations": { - "required": [ - "analytics.management.experiments.insert", - "analytics.management.experiments.update" - ] - }, - "description": "Experiment status. Possible values: \"DRAFT\", \"READY_TO_RUN\", \"RUNNING\", \"ENDED\". Experiments can be created in the \"DRAFT\", \"READY_TO_RUN\" or \"RUNNING\" state. This field is required when creating an experiment.", - "type": "string" - }, - "trafficCoverage": { - "description": "A floating-point number in (0, 1]. Specifies the fraction of the traffic that participates in the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED.", - "format": "double", - "type": "number" - }, - "updated": { - "description": "Time the experiment was last modified. This field is read-only.", - "format": "date-time", - "type": "string" - }, - "variations": { - "description": "Array of variations. The first variation in the array is the original. The number of variations may not change once an experiment is in the RUNNING state. At least two variations are required before status can be set to RUNNING.", - "items": { - "properties": { - "name": { - "annotations": { - "required": [ - "analytics.management.experiments.insert", - "analytics.management.experiments.update" - ] - }, - "description": "The name of the variation. This field is required when creating an experiment. This field may not be changed for an experiment whose status is ENDED.", - "type": "string" - }, - "status": { - "description": "Status of the variation. Possible values: \"ACTIVE\", \"INACTIVE\". INACTIVE variations are not served. This field may not be changed for an experiment whose status is ENDED.", - "type": "string" - }, - "url": { - "description": "The URL of the variation. This field may not be changed for an experiment whose status is RUNNING or ENDED.", - "type": "string" - }, - "weight": { - "description": "Weight that this variation should receive. Only present if the experiment is running. This field is read-only.", - "format": "double", - "type": "number" - }, - "won": { - "description": "True if the experiment has ended and this variation performed (statistically) significantly better than the original. This field is read-only.", - "type": "boolean" - } - }, - "type": "object" - }, - "type": "array" - }, - "webPropertyId": { - "description": "Web property ID to which this experiment belongs. The web property ID is of the form UA-XXXXX-YY. This field is read-only.", - "type": "string" - }, - "winnerConfidenceLevel": { - "description": "A floating-point number in (0, 1). Specifies the necessary confidence level to choose a winner. This field may not be changed for an experiments whose status is ENDED.", - "format": "double", - "type": "number" - }, - "winnerFound": { - "description": "Boolean specifying whether a winner has been found for this experiment. This field is read-only.", - "type": "boolean" - } - }, - "type": "object" - }, - "Experiments": { - "description": "An experiment collection lists Analytics experiments to which the user has access. Each view (profile) can have a set of experiments. Each resource in the Experiment collection corresponds to a single Analytics experiment.", - "id": "Experiments", - "properties": { - "items": { - "description": "A list of experiments.", - "items": { - "$ref": "Experiment" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#experiments", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this experiment collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this experiment collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "Filter": { - "description": "JSON template for an Analytics account filter.", - "id": "Filter", - "properties": { - "accountId": { - "description": "Account ID to which this filter belongs.", - "type": "string" - }, - "advancedDetails": { - "description": "Details for the filter of the type ADVANCED.", - "properties": { - "caseSensitive": { - "description": "Indicates if the filter expressions are case sensitive.", - "type": "boolean" - }, - "extractA": { - "description": "Expression to extract from field A.", - "type": "string" - }, - "extractB": { - "description": "Expression to extract from field B.", - "type": "string" - }, - "fieldA": { - "description": "Field A.", - "type": "string" - }, - "fieldAIndex": { - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - }, - "fieldARequired": { - "description": "Indicates if field A is required to match.", - "type": "boolean" - }, - "fieldB": { - "description": "Field B.", - "type": "string" - }, - "fieldBIndex": { - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - }, - "fieldBRequired": { - "description": "Indicates if field B is required to match.", - "type": "boolean" - }, - "outputConstructor": { - "description": "Expression used to construct the output value.", - "type": "string" - }, - "outputToField": { - "description": "Output field.", - "type": "string" - }, - "outputToFieldIndex": { - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - }, - "overrideOutputField": { - "description": "Indicates if the existing value of the output field, if any, should be overridden by the output expression.", - "type": "boolean" - } - }, - "type": "object" - }, - "created": { - "description": "Time this filter was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "excludeDetails": { - "$ref": "FilterExpression", - "description": "Details for the filter of the type EXCLUDE." - }, - "id": { - "description": "Filter ID.", - "type": "string" - }, - "includeDetails": { - "$ref": "FilterExpression", - "description": "Details for the filter of the type INCLUDE." - }, - "kind": { - "default": "analytics#filter", - "description": "Resource type for Analytics filter.", - "readOnly": true, - "type": "string" - }, - "lowercaseDetails": { - "description": "Details for the filter of the type LOWER.", - "properties": { - "field": { - "description": "Field to use in the filter.", - "type": "string" - }, - "fieldIndex": { - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "name": { - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.filters.update" - ] - }, - "description": "Name of this filter.", - "type": "string" - }, - "parentLink": { - "description": "Parent link for this filter. Points to the account to which this filter belongs.", - "properties": { - "href": { - "description": "Link to the account to which this filter belongs.", - "type": "string" - }, - "type": { - "default": "analytics#account", - "description": "Value is \"analytics#account\".", - "type": "string" - } - }, - "type": "object" - }, - "searchAndReplaceDetails": { - "description": "Details for the filter of the type SEARCH_AND_REPLACE.", - "properties": { - "caseSensitive": { - "description": "Determines if the filter is case sensitive.", - "type": "boolean" - }, - "field": { - "description": "Field to use in the filter.", - "type": "string" - }, - "fieldIndex": { - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - }, - "replaceString": { - "description": "Term to replace the search term with.", - "type": "string" - }, - "searchString": { - "description": "Term to search.", - "type": "string" - } - }, - "type": "object" - }, - "selfLink": { - "description": "Link for this filter.", - "readOnly": true, - "type": "string" - }, - "type": { - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.filters.update" - ] - }, - "description": "Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE, UPPERCASE, SEARCH_AND_REPLACE and ADVANCED.", - "type": "string" - }, - "updated": { - "description": "Time this filter was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "uppercaseDetails": { - "description": "Details for the filter of the type UPPER.", - "properties": { - "field": { - "description": "Field to use in the filter.", - "type": "string" - }, - "fieldIndex": { - "description": "The Index of the custom dimension. Required if field is a CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "FilterExpression": { - "description": "JSON template for an Analytics filter expression.", - "id": "FilterExpression", - "properties": { - "caseSensitive": { - "description": "Determines if the filter is case sensitive.", - "type": "boolean" - }, - "expressionValue": { - "description": "Filter expression value", - "type": "string" - }, - "field": { - "description": "Field to filter. Possible values: \n- Content and Traffic \n- PAGE_REQUEST_URI, \n- PAGE_HOSTNAME, \n- PAGE_TITLE, \n- REFERRAL, \n- COST_DATA_URI (Campaign target URL), \n- HIT_TYPE, \n- INTERNAL_SEARCH_TERM, \n- INTERNAL_SEARCH_TYPE, \n- SOURCE_PROPERTY_TRACKING_ID, \n- Campaign or AdGroup \n- CAMPAIGN_SOURCE, \n- CAMPAIGN_MEDIUM, \n- CAMPAIGN_NAME, \n- CAMPAIGN_AD_GROUP, \n- CAMPAIGN_TERM, \n- CAMPAIGN_CONTENT, \n- CAMPAIGN_CODE, \n- CAMPAIGN_REFERRAL_PATH, \n- E-Commerce \n- TRANSACTION_COUNTRY, \n- TRANSACTION_REGION, \n- TRANSACTION_CITY, \n- TRANSACTION_AFFILIATION (Store or order location), \n- ITEM_NAME, \n- ITEM_CODE, \n- ITEM_VARIATION, \n- TRANSACTION_ID, \n- TRANSACTION_CURRENCY_CODE, \n- PRODUCT_ACTION_TYPE, \n- Audience/Users \n- BROWSER, \n- BROWSER_VERSION, \n- BROWSER_SIZE, \n- PLATFORM, \n- PLATFORM_VERSION, \n- LANGUAGE, \n- SCREEN_RESOLUTION, \n- SCREEN_COLORS, \n- JAVA_ENABLED (Boolean Field), \n- FLASH_VERSION, \n- GEO_SPEED (Connection speed), \n- VISITOR_TYPE, \n- GEO_ORGANIZATION (ISP organization), \n- GEO_DOMAIN, \n- GEO_IP_ADDRESS, \n- GEO_IP_VERSION, \n- Location \n- GEO_COUNTRY, \n- GEO_REGION, \n- GEO_CITY, \n- Event \n- EVENT_CATEGORY, \n- EVENT_ACTION, \n- EVENT_LABEL, \n- Other \n- CUSTOM_FIELD_1, \n- CUSTOM_FIELD_2, \n- USER_DEFINED_VALUE, \n- Application \n- APP_ID, \n- APP_INSTALLER_ID, \n- APP_NAME, \n- APP_VERSION, \n- SCREEN, \n- IS_APP (Boolean Field), \n- IS_FATAL_EXCEPTION (Boolean Field), \n- EXCEPTION_DESCRIPTION, \n- Mobile device \n- IS_MOBILE (Boolean Field, Deprecated. Use DEVICE_CATEGORY=mobile), \n- IS_TABLET (Boolean Field, Deprecated. Use DEVICE_CATEGORY=tablet), \n- DEVICE_CATEGORY, \n- MOBILE_HAS_QWERTY_KEYBOARD (Boolean Field), \n- MOBILE_HAS_NFC_SUPPORT (Boolean Field), \n- MOBILE_HAS_CELLULAR_RADIO (Boolean Field), \n- MOBILE_HAS_WIFI_SUPPORT (Boolean Field), \n- MOBILE_BRAND_NAME, \n- MOBILE_MODEL_NAME, \n- MOBILE_MARKETING_NAME, \n- MOBILE_POINTING_METHOD, \n- Social \n- SOCIAL_NETWORK, \n- SOCIAL_ACTION, \n- SOCIAL_ACTION_TARGET, \n- Custom dimension \n- CUSTOM_DIMENSION (See accompanying field index),", - "type": "string" - }, - "fieldIndex": { - "description": "The Index of the custom dimension. Set only if the field is a is CUSTOM_DIMENSION.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#filterExpression", - "description": "Kind value for filter expression", - "type": "string" - }, - "matchType": { - "description": "Match type for this filter. Possible values are BEGINS_WITH, EQUAL, ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS, PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all other filters must use MATCHES.", - "type": "string" - } - }, - "type": "object" - }, - "FilterRef": { - "description": "JSON template for a profile filter link.", - "id": "FilterRef", - "properties": { - "accountId": { - "description": "Account ID to which this filter belongs.", - "readOnly": true, - "type": "string" - }, - "href": { - "description": "Link for this filter.", - "type": "string" - }, - "id": { - "annotations": { - "required": [ - "analytics.management.profileFilterLinks.insert" - ] - }, - "description": "Filter ID.", - "type": "string" - }, - "kind": { - "default": "analytics#filterRef", - "description": "Kind value for filter reference.", - "type": "string" - }, - "name": { - "description": "Name of this filter.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "Filters": { - "description": "A filter collection lists filters created by users in an Analytics account. Each resource in the collection corresponds to a filter.", - "id": "Filters", - "properties": { - "items": { - "description": "A list of filters.", - "items": { - "$ref": "Filter" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#filters", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this filter collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this filter collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "GaData": { - "description": "Analytics data for a given view (profile).", - "id": "GaData", - "properties": { - "columnHeaders": { - "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", - "items": { - "properties": { - "columnType": { - "description": "Column Type. Either DIMENSION or METRIC.", - "type": "string" - }, - "dataType": { - "description": "Data type. Dimension column headers have only STRING as the data type. Metric column headers have data types for metric values such as INTEGER, DOUBLE, CURRENCY etc.", - "type": "string" - }, - "name": { - "description": "Column name.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "containsSampledData": { - "description": "Determines if Analytics data contains samples.", - "type": "boolean" - }, - "dataLastRefreshed": { - "description": "The last refreshed time in seconds for Analytics data.", - "format": "int64", - "type": "string" - }, - "dataTable": { - "properties": { - "cols": { - "items": { - "properties": { - "id": { - "type": "string" - }, - "label": { - "type": "string" - }, - "type": { - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "rows": { - "items": { - "properties": { - "c": { - "items": { - "properties": { - "v": { - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - } - }, - "type": "object" - }, - "type": "array" - } - }, - "type": "object" - }, - "id": { - "description": "Unique ID for this data response.", - "type": "string" - }, - "itemsPerPage": { - "description": "The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#gaData", - "description": "Resource type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this Analytics data query.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this Analytics data query.", - "type": "string" - }, - "profileInfo": { - "description": "Information for the view (profile), for which the Analytics data was requested.", - "properties": { - "accountId": { - "description": "Account ID to which this view (profile) belongs.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this view (profile) belongs.", - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID.", - "type": "string" - }, - "profileName": { - "description": "View (Profile) name.", - "type": "string" - }, - "tableId": { - "description": "Table ID for view (profile).", - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to which this view (profile) belongs.", - "type": "string" - } - }, - "type": "object" - }, - "query": { - "description": "Analytics data request query parameters.", - "properties": { - "dimensions": { - "description": "List of analytics dimensions.", - "type": "string" - }, - "end-date": { - "description": "End date.", - "type": "string" - }, - "filters": { - "description": "Comma-separated list of dimension or metric filters.", - "type": "string" - }, - "ids": { - "description": "Unique table ID.", - "type": "string" - }, - "max-results": { - "description": "Maximum results per page.", - "format": "int32", - "type": "integer" - }, - "metrics": { - "description": "List of analytics metrics.", - "items": { - "type": "string" - }, - "type": "array" - }, - "samplingLevel": { - "description": "Desired sampling level", - "type": "string" - }, - "segment": { - "description": "Analytics advanced segment.", - "type": "string" - }, - "sort": { - "description": "List of dimensions or metrics based on which Analytics data is sorted.", - "items": { - "type": "string" - }, - "type": "array" - }, - "start-date": { - "description": "Start date.", - "type": "string" - }, - "start-index": { - "description": "Start index.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "rows": { - "description": "Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", - "items": { - "items": { - "type": "string" - }, - "type": "array" - }, - "type": "array" - }, - "sampleSize": { - "description": "The number of samples used to calculate the result.", - "format": "int64", - "type": "string" - }, - "sampleSpace": { - "description": "Total size of the sample space from which the samples were selected.", - "format": "int64", - "type": "string" - }, - "selfLink": { - "description": "Link to this page.", - "type": "string" - }, - "totalResults": { - "description": "The total number of rows for the query, regardless of the number of rows in the response.", - "format": "int32", - "type": "integer" - }, - "totalsForAllResults": { - "additionalProperties": { - "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric.", - "type": "string" - }, - "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", - "type": "object" - } - }, - "type": "object" - }, - "Goal": { - "description": "JSON template for Analytics goal resource.", - "id": "Goal", - "properties": { - "accountId": { - "description": "Account ID to which this goal belongs.", - "type": "string" - }, - "active": { - "description": "Determines whether this goal is active.", - "type": "boolean" - }, - "created": { - "description": "Time this goal was created.", - "format": "date-time", - "type": "string" - }, - "eventDetails": { - "description": "Details for the goal of the type EVENT.", - "properties": { - "eventConditions": { - "description": "List of event conditions.", - "items": { - "properties": { - "comparisonType": { - "description": "Type of comparison. Possible values are LESS_THAN, GREATER_THAN or EQUAL.", - "type": "string" - }, - "comparisonValue": { - "description": "Value used for this comparison.", - "format": "int64", - "type": "string" - }, - "expression": { - "description": "Expression used for this match.", - "type": "string" - }, - "matchType": { - "description": "Type of the match to be performed. Possible values are REGEXP, BEGINS_WITH, or EXACT.", - "type": "string" - }, - "type": { - "description": "Type of this event condition. Possible values are CATEGORY, ACTION, LABEL, or VALUE.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "useEventValue": { - "description": "Determines if the event value should be used as the value for this goal.", - "type": "boolean" - } - }, - "type": "object" - }, - "id": { - "description": "Goal ID.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this goal belongs.", - "type": "string" - }, - "kind": { - "default": "analytics#goal", - "description": "Resource type for an Analytics goal.", - "type": "string" - }, - "name": { - "description": "Goal name.", - "type": "string" - }, - "parentLink": { - "description": "Parent link for a goal. Points to the view (profile) to which this goal belongs.", - "properties": { - "href": { - "description": "Link to the view (profile) to which this goal belongs.", - "type": "string" - }, - "type": { - "default": "analytics#profile", - "description": "Value is \"analytics#profile\".", - "type": "string" - } - }, - "type": "object" - }, - "profileId": { - "description": "View (Profile) ID to which this goal belongs.", - "type": "string" - }, - "selfLink": { - "description": "Link for this goal.", - "type": "string" - }, - "type": { - "description": "Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE, VISIT_NUM_PAGES, AND EVENT.", - "type": "string" - }, - "updated": { - "description": "Time this goal was last modified.", - "format": "date-time", - "type": "string" - }, - "urlDestinationDetails": { - "description": "Details for the goal of the type URL_DESTINATION.", - "properties": { - "caseSensitive": { - "description": "Determines if the goal URL must exactly match the capitalization of visited URLs.", - "type": "boolean" - }, - "firstStepRequired": { - "description": "Determines if the first step in this goal is required.", - "type": "boolean" - }, - "matchType": { - "description": "Match type for the goal URL. Possible values are HEAD, EXACT, or REGEX.", - "type": "string" - }, - "steps": { - "description": "List of steps configured for this goal funnel.", - "items": { - "properties": { - "name": { - "description": "Step name.", - "type": "string" - }, - "number": { - "description": "Step number.", - "format": "int32", - "type": "integer" - }, - "url": { - "description": "URL for this step.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "url": { - "description": "URL for this goal.", - "type": "string" - } - }, - "type": "object" - }, - "value": { - "description": "Goal value.", - "format": "float", - "type": "number" - }, - "visitNumPagesDetails": { - "description": "Details for the goal of the type VISIT_NUM_PAGES.", - "properties": { - "comparisonType": { - "description": "Type of comparison. Possible values are LESS_THAN, GREATER_THAN, or EQUAL.", - "type": "string" - }, - "comparisonValue": { - "description": "Value used for this comparison.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "visitTimeOnSiteDetails": { - "description": "Details for the goal of the type VISIT_TIME_ON_SITE.", - "properties": { - "comparisonType": { - "description": "Type of comparison. Possible values are LESS_THAN or GREATER_THAN.", - "type": "string" - }, - "comparisonValue": { - "description": "Value used for this comparison.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "webPropertyId": { - "description": "Web property ID to which this goal belongs. The web property ID is of the form UA-XXXXX-YY.", - "type": "string" - } - }, - "type": "object" - }, - "Goals": { - "description": "A goal collection lists Analytics goals to which the user has access. Each view (profile) can have a set of goals. Each resource in the Goal collection corresponds to a single Analytics goal.", - "id": "Goals", - "properties": { - "items": { - "description": "A list of goals.", - "items": { - "$ref": "Goal" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#goals", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this goal collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this goal collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "HashClientIdRequest": { - "description": "JSON template for a hash Client Id request resource.", - "id": "HashClientIdRequest", - "properties": { - "clientId": { - "type": "string" - }, - "kind": { - "default": "analytics#hashClientIdRequest", - "type": "string" - }, - "webPropertyId": { - "type": "string" - } - }, - "type": "object" - }, - "HashClientIdResponse": { - "description": "JSON template for a hash Client Id response resource.", - "id": "HashClientIdResponse", - "properties": { - "clientId": { - "type": "string" - }, - "hashedClientId": { - "type": "string" - }, - "kind": { - "default": "analytics#hashClientIdResponse", - "type": "string" - }, - "webPropertyId": { - "type": "string" - } - }, - "type": "object" - }, - "IncludeConditions": { - "description": "JSON template for an Analytics Remarketing Include Conditions.", - "id": "IncludeConditions", - "properties": { - "daysToLookBack": { - "description": "The look-back window lets you specify a time frame for evaluating the behavior that qualifies users for your audience. For example, if your filters include users from Central Asia, and Transactions Greater than 2, and you set the look-back window to 14 days, then any user from Central Asia whose cumulative transactions exceed 2 during the last 14 days is added to the audience.", - "format": "int32", - "type": "integer" - }, - "isSmartList": { - "description": "Boolean indicating whether this segment is a smart list. https://support.google.com/analytics/answer/4628577", - "type": "boolean" - }, - "kind": { - "default": "analytics#includeConditions", - "description": "Resource type for include conditions.", - "type": "string" - }, - "membershipDurationDays": { - "description": "Number of days (in the range 1 to 540) a user remains in the audience.", - "format": "int32", - "type": "integer" - }, - "segment": { - "description": "The segment condition that will cause a user to be added to an audience.", - "type": "string" - } - }, - "type": "object" - }, - "LinkedForeignAccount": { - "description": "JSON template for an Analytics Remarketing Audience Foreign Link.", - "id": "LinkedForeignAccount", - "properties": { - "accountId": { - "description": "Account ID to which this linked foreign account belongs.", - "type": "string" - }, - "eligibleForSearch": { - "description": "Boolean indicating whether this is eligible for search.", - "readOnly": true, - "type": "boolean" - }, - "id": { - "description": "Entity ad account link ID.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this linked foreign account belongs.", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "analytics#linkedForeignAccount", - "description": "Resource type for linked foreign account.", - "type": "string" - }, - "linkedAccountId": { - "description": "The foreign account ID. For example the an Google Ads `linkedAccountId` has the following format XXX-XXX-XXXX.", - "type": "string" - }, - "remarketingAudienceId": { - "description": "Remarketing audience ID to which this linked foreign account belongs.", - "type": "string" - }, - "status": { - "description": "The status of this foreign account link.", - "type": "string" - }, - "type": { - "description": "The type of the foreign account. For example, `ADWORDS_LINKS`, `DBM_LINKS`, `MCC_LINKS` or `OPTIMIZE`.", - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the form UA-XXXXX-YY to which this linked foreign account belongs.", - "type": "string" - } - }, - "type": "object" - }, - "McfData": { - "description": "Multi-Channel Funnels data for a given view (profile).", - "id": "McfData", - "properties": { - "columnHeaders": { - "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", - "items": { - "properties": { - "columnType": { - "description": "Column Type. Either DIMENSION or METRIC.", - "type": "string" - }, - "dataType": { - "description": "Data type. Dimension and metric values data types such as INTEGER, DOUBLE, CURRENCY, MCF_SEQUENCE etc.", - "type": "string" - }, - "name": { - "description": "Column name.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "containsSampledData": { - "description": "Determines if the Analytics data contains sampled data.", - "type": "boolean" - }, - "id": { - "description": "Unique ID for this data response.", - "type": "string" - }, - "itemsPerPage": { - "description": "The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#mcfData", - "description": "Resource type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this Analytics data query.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this Analytics data query.", - "type": "string" - }, - "profileInfo": { - "description": "Information for the view (profile), for which the Analytics data was requested.", - "properties": { - "accountId": { - "description": "Account ID to which this view (profile) belongs.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this view (profile) belongs.", - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID.", - "type": "string" - }, - "profileName": { - "description": "View (Profile) name.", - "type": "string" - }, - "tableId": { - "description": "Table ID for view (profile).", - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to which this view (profile) belongs.", - "type": "string" - } - }, - "type": "object" - }, - "query": { - "description": "Analytics data request query parameters.", - "properties": { - "dimensions": { - "description": "List of analytics dimensions.", - "type": "string" - }, - "end-date": { - "description": "End date.", - "type": "string" - }, - "filters": { - "description": "Comma-separated list of dimension or metric filters.", - "type": "string" - }, - "ids": { - "description": "Unique table ID.", - "type": "string" - }, - "max-results": { - "description": "Maximum results per page.", - "format": "int32", - "type": "integer" - }, - "metrics": { - "description": "List of analytics metrics.", - "items": { - "type": "string" - }, - "type": "array" - }, - "samplingLevel": { - "description": "Desired sampling level", - "type": "string" - }, - "segment": { - "description": "Analytics advanced segment.", - "type": "string" - }, - "sort": { - "description": "List of dimensions or metrics based on which Analytics data is sorted.", - "items": { - "type": "string" - }, - "type": "array" - }, - "start-date": { - "description": "Start date.", - "type": "string" - }, - "start-index": { - "description": "Start index.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "rows": { - "description": "Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", - "items": { - "items": { - "description": "A union object representing a dimension or metric value. Only one of \"primitiveValue\" or \"conversionPathValue\" attribute will be populated.", - "properties": { - "conversionPathValue": { - "description": "A conversion path dimension value, containing a list of interactions with their attributes.", - "items": { - "properties": { - "interactionType": { - "description": "Type of an interaction on conversion path. Such as CLICK, IMPRESSION etc.", - "type": "string" - }, - "nodeValue": { - "description": "Node value of an interaction on conversion path. Such as source, medium etc.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "primitiveValue": { - "description": "A primitive dimension value. A primitive metric value.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "type": "array" - }, - "sampleSize": { - "description": "The number of samples used to calculate the result.", - "format": "int64", - "type": "string" - }, - "sampleSpace": { - "description": "Total size of the sample space from which the samples were selected.", - "format": "int64", - "type": "string" - }, - "selfLink": { - "description": "Link to this page.", - "type": "string" - }, - "totalResults": { - "description": "The total number of rows for the query, regardless of the number of rows in the response.", - "format": "int32", - "type": "integer" - }, - "totalsForAllResults": { - "additionalProperties": { - "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric.", - "type": "string" - }, - "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", - "type": "object" - } - }, - "type": "object" - }, - "Profile": { - "description": "JSON template for an Analytics view (profile).", - "id": "Profile", - "properties": { - "accountId": { - "description": "Account ID to which this view (profile) belongs.", - "type": "string" - }, - "botFilteringEnabled": { - "description": "Indicates whether bot filtering is enabled for this view (profile).", - "type": "boolean" - }, - "childLink": { - "description": "Child link for this view (profile). Points to the list of goals for this view (profile).", - "properties": { - "href": { - "description": "Link to the list of goals for this view (profile).", - "type": "string" - }, - "type": { - "default": "analytics#goals", - "description": "Value is \"analytics#goals\".", - "type": "string" - } - }, - "type": "object" - }, - "created": { - "description": "Time this view (profile) was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "currency": { - "description": "The currency type associated with this view (profile), defaults to USD. The supported values are:\nUSD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK, RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR, CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP, HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL", - "type": "string" - }, - "defaultPage": { - "description": "Default page for this view (profile).", - "type": "string" - }, - "eCommerceTracking": { - "description": "Indicates whether ecommerce tracking is enabled for this view (profile).", - "type": "boolean" - }, - "enhancedECommerceTracking": { - "description": "Indicates whether enhanced ecommerce tracking is enabled for this view (profile). This property can only be enabled if ecommerce tracking is enabled.", - "type": "boolean" - }, - "excludeQueryParameters": { - "description": "The query parameters that are excluded from this view (profile).", - "type": "string" - }, - "id": { - "description": "View (Profile) ID.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this view (profile) belongs.", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "analytics#profile", - "description": "Resource type for Analytics view (profile).", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of this view (profile).", - "type": "string" - }, - "parentLink": { - "description": "Parent link for this view (profile). Points to the web property to which this view (profile) belongs.", - "properties": { - "href": { - "description": "Link to the web property to which this view (profile) belongs.", - "type": "string" - }, - "type": { - "default": "analytics#webproperty", - "description": "Value is \"analytics#webproperty\".", - "type": "string" - } - }, - "type": "object" - }, - "permissions": { - "description": "Permissions the user has for this view (profile).", - "properties": { - "effective": { - "description": "All the permissions that the user has for this view (profile). These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent web property.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - } - }, - "type": "object" - }, - "selfLink": { - "description": "Link for this view (profile).", - "readOnly": true, - "type": "string" - }, - "siteSearchCategoryParameters": { - "description": "Site search category parameters for this view (profile).", - "type": "string" - }, - "siteSearchQueryParameters": { - "description": "The site search query parameters for this view (profile).", - "type": "string" - }, - "starred": { - "description": "Indicates whether this view (profile) is starred or not.", - "type": "boolean" - }, - "stripSiteSearchCategoryParameters": { - "description": "Whether or not Analytics will strip search category parameters from the URLs in your reports.", - "type": "boolean" - }, - "stripSiteSearchQueryParameters": { - "description": "Whether or not Analytics will strip search query parameters from the URLs in your reports.", - "type": "boolean" - }, - "timezone": { - "description": "Time zone for which this view (profile) has been configured. Time zones are identified by strings from the TZ database.", - "type": "string" - }, - "type": { - "description": "View (Profile) type. Supported types: WEB or APP.", - "type": "string" - }, - "updated": { - "description": "Time this view (profile) was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.", - "readOnly": true, - "type": "string" - }, - "websiteUrl": { - "description": "Website URL for this view (profile).", - "type": "string" - } - }, - "type": "object" - }, - "ProfileFilterLink": { - "description": "JSON template for an Analytics profile filter link.", - "id": "ProfileFilterLink", - "properties": { - "filterRef": { - "$ref": "FilterRef", - "description": "Filter for this link." - }, - "id": { - "description": "Profile filter link ID.", - "type": "string" - }, - "kind": { - "default": "analytics#profileFilterLink", - "description": "Resource type for Analytics filter.", - "readOnly": true, - "type": "string" - }, - "profileRef": { - "$ref": "ProfileRef", - "description": "View (Profile) for this link." - }, - "rank": { - "description": "The rank of this profile filter link relative to the other filters linked to the same profile.\nFor readonly (i.e., list and get) operations, the rank always starts at 1.\nFor write (i.e., create, update, or delete) operations, you may specify a value between 0 and 255 inclusively, [0, 255]. In order to insert a link at the end of the list, either don't specify a rank or set a rank to a number greater than the largest rank in the list. In order to insert a link to the beginning of the list specify a rank that is less than or equal to 1. The new link will move all existing filters with the same or lower rank down the list. After the link is inserted/updated/deleted all profile filter links will be renumbered starting at 1.", - "format": "int32", - "type": "integer" - }, - "selfLink": { - "description": "Link for this profile filter link.", - "readOnly": true, - "type": "string" - } - }, - "type": "object" - }, - "ProfileFilterLinks": { - "description": "A profile filter link collection lists profile filter links between profiles and filters. Each resource in the collection corresponds to a profile filter link.", - "id": "ProfileFilterLinks", - "properties": { - "items": { - "description": "A list of profile filter links.", - "items": { - "$ref": "ProfileFilterLink" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#profileFilterLinks", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this profile filter link collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this profile filter link collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "ProfileRef": { - "description": "JSON template for a linked view (profile).", - "id": "ProfileRef", - "properties": { - "accountId": { - "description": "Account ID to which this view (profile) belongs.", - "type": "string" - }, - "href": { - "description": "Link for this view (profile).", - "type": "string" - }, - "id": { - "description": "View (Profile) ID.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this view (profile) belongs.", - "type": "string" - }, - "kind": { - "default": "analytics#profileRef", - "description": "Analytics view (profile) reference.", - "type": "string" - }, - "name": { - "description": "Name of this view (profile).", - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs.", - "type": "string" - } - }, - "type": "object" - }, - "ProfileSummary": { - "description": "JSON template for an Analytics ProfileSummary. ProfileSummary returns basic information (i.e., summary) for a profile.", - "id": "ProfileSummary", - "properties": { - "id": { - "description": "View (profile) ID.", - "type": "string" - }, - "kind": { - "default": "analytics#profileSummary", - "description": "Resource type for Analytics ProfileSummary.", - "type": "string" - }, - "name": { - "description": "View (profile) name.", - "type": "string" - }, - "starred": { - "description": "Indicates whether this view (profile) is starred or not.", - "type": "boolean" - }, - "type": { - "description": "View (Profile) type. Supported types: WEB or APP.", - "type": "string" - } - }, - "type": "object" - }, - "Profiles": { - "description": "A view (profile) collection lists Analytics views (profiles) to which the user has access. Each resource in the collection corresponds to a single Analytics view (profile).", - "id": "Profiles", - "properties": { - "items": { - "description": "A list of views (profiles).", - "items": { - "$ref": "Profile" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#profiles", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this view (profile) collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this view (profile) collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "RealtimeData": { - "description": "Real time data for a given view (profile).", - "id": "RealtimeData", - "properties": { - "columnHeaders": { - "description": "Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request.", - "items": { - "properties": { - "columnType": { - "description": "Column Type. Either DIMENSION or METRIC.", - "type": "string" - }, - "dataType": { - "description": "Data type. Dimension column headers have only STRING as the data type. Metric column headers have data types for metric values such as INTEGER, DOUBLE, CURRENCY etc.", - "type": "string" - }, - "name": { - "description": "Column name.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "id": { - "description": "Unique ID for this data response.", - "type": "string" - }, - "kind": { - "default": "analytics#realtimeData", - "description": "Resource type.", - "type": "string" - }, - "profileInfo": { - "description": "Information for the view (profile), for which the real time data was requested.", - "properties": { - "accountId": { - "description": "Account ID to which this view (profile) belongs.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this view (profile) belongs.", - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID.", - "type": "string" - }, - "profileName": { - "description": "View (Profile) name.", - "type": "string" - }, - "tableId": { - "description": "Table ID for view (profile).", - "type": "string" - }, - "webPropertyId": { - "description": "Web Property ID to which this view (profile) belongs.", - "type": "string" - } - }, - "type": "object" - }, - "query": { - "description": "Real time data request query parameters.", - "properties": { - "dimensions": { - "description": "List of real time dimensions.", - "type": "string" - }, - "filters": { - "description": "Comma-separated list of dimension or metric filters.", - "type": "string" - }, - "ids": { - "description": "Unique table ID.", - "type": "string" - }, - "max-results": { - "description": "Maximum results per page.", - "format": "int32", - "type": "integer" - }, - "metrics": { - "description": "List of real time metrics.", - "items": { - "type": "string" - }, - "type": "array" - }, - "sort": { - "description": "List of dimensions or metrics based on which real time data is sorted.", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "rows": { - "description": "Real time data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request.", - "items": { - "items": { - "type": "string" - }, - "type": "array" - }, - "type": "array" - }, - "selfLink": { - "description": "Link to this page.", - "type": "string" - }, - "totalResults": { - "description": "The total number of rows for the query, regardless of the number of rows in the response.", - "format": "int32", - "type": "integer" - }, - "totalsForAllResults": { - "additionalProperties": { - "description": "Key-value pair for the total value of a metric. Key is the metric name and the value is the total value for that metric.", - "type": "string" - }, - "description": "Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request.", - "type": "object" - } - }, - "type": "object" - }, - "RemarketingAudience": { - "description": "JSON template for an Analytics remarketing audience.", - "id": "RemarketingAudience", - "properties": { - "accountId": { - "description": "Account ID to which this remarketing audience belongs.", - "type": "string" - }, - "audienceDefinition": { - "description": "The simple audience definition that will cause a user to be added to an audience.", - "properties": { - "includeConditions": { - "$ref": "IncludeConditions", - "description": "Defines the conditions to include users to the audience." - } - }, - "type": "object" - }, - "audienceType": { - "description": "The type of audience, either SIMPLE or STATE_BASED.", - "type": "string" - }, - "created": { - "description": "Time this remarketing audience was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "description": { - "description": "The description of this remarketing audience.", - "readOnly": true, - "type": "string" - }, - "id": { - "description": "Remarketing Audience ID.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for the web property to which this remarketing audience belongs.", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "analytics#remarketingAudience", - "description": "Collection type.", - "type": "string" - }, - "linkedAdAccounts": { - "description": "The linked ad accounts associated with this remarketing audience. A remarketing audience can have only one linkedAdAccount currently.", - "items": { - "$ref": "LinkedForeignAccount" - }, - "type": "array" - }, - "linkedViews": { - "description": "The views (profiles) that this remarketing audience is linked to.", - "items": { - "type": "string" - }, - "type": "array" - }, - "name": { - "description": "The name of this remarketing audience.", - "type": "string" - }, - "stateBasedAudienceDefinition": { - "description": "A state based audience definition that will cause a user to be added or removed from an audience.", - "properties": { - "excludeConditions": { - "description": "Defines the conditions to exclude users from the audience.", - "properties": { - "exclusionDuration": { - "description": "Whether to make the exclusion TEMPORARY or PERMANENT.", - "type": "string" - }, - "segment": { - "description": "The segment condition that will cause a user to be removed from an audience.", - "type": "string" - } - }, - "type": "object" - }, - "includeConditions": { - "$ref": "IncludeConditions", - "description": "Defines the conditions to include users to the audience." - } - }, - "type": "object" - }, - "updated": { - "description": "Time this remarketing audience was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the form UA-XXXXX-YY to which this remarketing audience belongs.", - "type": "string" - } - }, - "type": "object" - }, - "RemarketingAudiences": { - "description": "A remarketing audience collection lists Analytics remarketing audiences to which the user has access. Each resource in the collection corresponds to a single Analytics remarketing audience.", - "id": "RemarketingAudiences", - "properties": { - "items": { - "description": "A list of remarketing audiences.", - "items": { - "$ref": "RemarketingAudience" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#remarketingAudiences", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this remarketing audience collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this view (profile) collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "Segment": { - "description": "JSON template for an Analytics segment.", - "id": "Segment", - "properties": { - "created": { - "description": "Time the segment was created.", - "format": "date-time", - "type": "string" - }, - "definition": { - "description": "Segment definition.", - "type": "string" - }, - "id": { - "description": "Segment ID.", - "type": "string" - }, - "kind": { - "default": "analytics#segment", - "description": "Resource type for Analytics segment.", - "type": "string" - }, - "name": { - "description": "Segment name.", - "type": "string" - }, - "segmentId": { - "description": "Segment ID. Can be used with the 'segment' parameter in Core Reporting API.", - "type": "string" - }, - "selfLink": { - "description": "Link for this segment.", - "type": "string" - }, - "type": { - "description": "Type for a segment. Possible values are \"BUILT_IN\" or \"CUSTOM\".", - "type": "string" - }, - "updated": { - "description": "Time the segment was last modified.", - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "Segments": { - "description": "An segment collection lists Analytics segments that the user has access to. Each resource in the collection corresponds to a single Analytics segment.", - "id": "Segments", - "properties": { - "items": { - "description": "A list of segments.", - "items": { - "$ref": "Segment" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#segments", - "description": "Collection type for segments.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this segment collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this segment collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "UnsampledReport": { - "description": "JSON template for Analytics unsampled report resource.", - "id": "UnsampledReport", - "properties": { - "accountId": { - "description": "Account ID to which this unsampled report belongs.", - "type": "string" - }, - "cloudStorageDownloadDetails": { - "description": "Download details for a file stored in Google Cloud Storage.", - "properties": { - "bucketId": { - "description": "Id of the bucket the file object is stored in.", - "type": "string" - }, - "objectId": { - "description": "Id of the file object containing the report data.", - "type": "string" - } - }, - "readOnly": true, - "type": "object" - }, - "created": { - "description": "Time this unsampled report was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "dimensions": { - "description": "The dimensions for the unsampled report.", - "type": "string" - }, - "downloadType": { - "description": "The type of download you need to use for the report data file. Possible values include `GOOGLE_DRIVE` and `GOOGLE_CLOUD_STORAGE`. If the value is `GOOGLE_DRIVE`, see the `driveDownloadDetails` field. If the value is `GOOGLE_CLOUD_STORAGE`, see the `cloudStorageDownloadDetails` field.", - "readOnly": true, - "type": "string" - }, - "driveDownloadDetails": { - "description": "Download details for a file stored in Google Drive.", - "properties": { - "documentId": { - "description": "Id of the document/file containing the report data.", - "type": "string" - } - }, - "readOnly": true, - "type": "object" - }, - "end-date": { - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - }, - "description": "The end date for the unsampled report.", - "type": "string" - }, - "filters": { - "description": "The filters for the unsampled report.", - "type": "string" - }, - "id": { - "description": "Unsampled report ID.", - "type": "string" - }, - "kind": { - "default": "analytics#unsampledReport", - "description": "Resource type for an Analytics unsampled report.", - "readOnly": true, - "type": "string" - }, - "metrics": { - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - }, - "description": "The metrics for the unsampled report.", - "type": "string" - }, - "profileId": { - "description": "View (Profile) ID to which this unsampled report belongs.", - "type": "string" - }, - "segment": { - "description": "The segment for the unsampled report.", - "type": "string" - }, - "selfLink": { - "description": "Link for this unsampled report.", - "readOnly": true, - "type": "string" - }, - "start-date": { - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - }, - "description": "The start date for the unsampled report.", - "type": "string" - }, - "status": { - "description": "Status of this unsampled report. Possible values are PENDING, COMPLETED, or FAILED.", - "readOnly": true, - "type": "string" - }, - "title": { - "annotations": { - "required": [ - "analytics.management.filters.insert", - "analytics.management.unsampledReports.insert" - ] - }, - "description": "Title of the unsampled report.", - "type": "string" - }, - "updated": { - "description": "Time this unsampled report was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID to which this unsampled report belongs. The web property ID is of the form UA-XXXXX-YY.", - "type": "string" - } - }, - "type": "object" - }, - "UnsampledReports": { - "description": "An unsampled report collection lists Analytics unsampled reports to which the user has access. Each view (profile) can have a set of unsampled reports. Each resource in the unsampled report collection corresponds to a single Analytics unsampled report.", - "id": "UnsampledReports", - "properties": { - "items": { - "description": "A list of unsampled reports.", - "items": { - "$ref": "UnsampledReport" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#unsampledReports", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this unsampled report collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this unsampled report collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "Upload": { - "description": "Metadata returned for an upload operation.", - "id": "Upload", - "properties": { - "accountId": { - "description": "Account Id to which this upload belongs.", - "format": "int64", - "type": "string" - }, - "customDataSourceId": { - "description": "Custom data source Id to which this data import belongs.", - "type": "string" - }, - "errors": { - "description": "Data import errors collection.", - "items": { - "type": "string" - }, - "type": "array" - }, - "id": { - "description": "A unique ID for this upload.", - "type": "string" - }, - "kind": { - "default": "analytics#upload", - "description": "Resource type for Analytics upload.", - "type": "string" - }, - "status": { - "description": "Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING, DELETED.", - "type": "string" - }, - "uploadTime": { - "description": "Time this file is uploaded.", - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "Uploads": { - "description": "Upload collection lists Analytics uploads to which the user has access. Each custom data source can have a set of uploads. Each resource in the upload collection corresponds to a single Analytics data upload.", - "id": "Uploads", - "properties": { - "items": { - "description": "A list of uploads.", - "items": { - "$ref": "Upload" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#uploads", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this upload collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this upload collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of resources in the result.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "UserDeletionRequest": { - "description": "JSON template for a user deletion request resource.", - "id": "UserDeletionRequest", - "properties": { - "deletionRequestTime": { - "description": "This marks the point in time for which all user data before should be deleted", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "firebaseProjectId": { - "description": "Firebase Project Id", - "type": "string" - }, - "id": { - "description": "User ID.", - "properties": { - "type": { - "description": "Type of user", - "type": "string" - }, - "userId": { - "description": "The User's id", - "type": "string" - } - }, - "type": "object" - }, - "kind": { - "default": "analytics#userDeletionRequest", - "description": "Value is \"analytics#userDeletionRequest\".", - "type": "string" - }, - "propertyId": { - "description": "Property ID", - "type": "string" - }, - "webPropertyId": { - "description": "Web property ID of the form UA-XXXXX-YY.", - "type": "string" - } - }, - "type": "object" - }, - "UserRef": { - "description": "JSON template for a user reference.", - "id": "UserRef", - "properties": { - "email": { - "description": "Email ID of this user.", - "type": "string" - }, - "id": { - "description": "User ID.", - "type": "string" - }, - "kind": { - "default": "analytics#userRef", - "type": "string" - } - }, - "type": "object" - }, - "WebPropertyRef": { - "description": "JSON template for a web property reference.", - "id": "WebPropertyRef", - "properties": { - "accountId": { - "description": "Account ID to which this web property belongs.", - "type": "string" - }, - "href": { - "description": "Link for this web property.", - "type": "string" - }, - "id": { - "description": "Web property ID of the form UA-XXXXX-YY.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for this web property.", - "type": "string" - }, - "kind": { - "default": "analytics#webPropertyRef", - "description": "Analytics web property reference.", - "type": "string" - }, - "name": { - "description": "Name of this web property.", - "type": "string" - } - }, - "type": "object" - }, - "WebPropertySummary": { - "description": "JSON template for an Analytics WebPropertySummary. WebPropertySummary returns basic information (i.e., summary) for a web property.", - "id": "WebPropertySummary", - "properties": { - "id": { - "description": "Web property ID of the form UA-XXXXX-YY.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for this web property.", - "type": "string" - }, - "kind": { - "default": "analytics#webPropertySummary", - "description": "Resource type for Analytics WebPropertySummary.", - "type": "string" - }, - "level": { - "description": "Level for this web property. Possible values are STANDARD or PREMIUM.", - "type": "string" - }, - "name": { - "description": "Web property name.", - "type": "string" - }, - "profiles": { - "description": "List of profiles under this web property.", - "items": { - "$ref": "ProfileSummary" - }, - "type": "array" - }, - "starred": { - "description": "Indicates whether this web property is starred or not.", - "type": "boolean" - }, - "websiteUrl": { - "description": "Website url for this web property.", - "type": "string" - } - }, - "type": "object" - }, - "Webproperties": { - "description": "A web property collection lists Analytics web properties to which the user has access. Each resource in the collection corresponds to a single Analytics web property.", - "id": "Webproperties", - "properties": { - "items": { - "description": "A list of web properties.", - "items": { - "$ref": "Webproperty" - }, - "type": "array" - }, - "itemsPerPage": { - "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", - "format": "int32", - "type": "integer" - }, - "kind": { - "default": "analytics#webproperties", - "description": "Collection type.", - "type": "string" - }, - "nextLink": { - "description": "Link to next page for this web property collection.", - "type": "string" - }, - "previousLink": { - "description": "Link to previous page for this web property collection.", - "type": "string" - }, - "startIndex": { - "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", - "format": "int32", - "type": "integer" - }, - "totalResults": { - "description": "The total number of results for the query, regardless of the number of results in the response.", - "format": "int32", - "type": "integer" - }, - "username": { - "description": "Email ID of the authenticated user", - "type": "string" - } - }, - "type": "object" - }, - "Webproperty": { - "description": "JSON template for an Analytics web property.", - "id": "Webproperty", - "properties": { - "accountId": { - "description": "Account ID to which this web property belongs.", - "type": "string" - }, - "childLink": { - "description": "Child link for this web property. Points to the list of views (profiles) for this web property.", - "properties": { - "href": { - "description": "Link to the list of views (profiles) for this web property.", - "type": "string" - }, - "type": { - "default": "analytics#profiles", - "description": "Type of the parent link. Its value is \"analytics#profiles\".", - "type": "string" - } - }, - "type": "object" - }, - "created": { - "description": "Time this web property was created.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "dataRetentionResetOnNewActivity": { - "description": "Set to true to reset the retention period of the user identifier with each new event from that user (thus setting the expiration date to current time plus retention period).\nSet to false to delete data associated with the user identifier automatically after the rentention period.\nThis property cannot be set on insert.", - "type": "boolean" - }, - "dataRetentionTtl": { - "description": "The length of time for which user and event data is retained.\nThis property cannot be set on insert.", - "type": "string" - }, - "defaultProfileId": { - "description": "Default view (profile) ID.", - "format": "int64", - "type": "string" - }, - "id": { - "description": "Web property ID of the form UA-XXXXX-YY.", - "type": "string" - }, - "industryVertical": { - "description": "The industry vertical/category selected for this web property.", - "type": "string" - }, - "internalWebPropertyId": { - "description": "Internal ID for this web property.", - "readOnly": true, - "type": "string" - }, - "kind": { - "default": "analytics#webproperty", - "description": "Resource type for Analytics WebProperty.", - "readOnly": true, - "type": "string" - }, - "level": { - "description": "Level for this web property. Possible values are STANDARD or PREMIUM.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "Name of this web property.", - "type": "string" - }, - "parentLink": { - "description": "Parent link for this web property. Points to the account to which this web property belongs.", - "properties": { - "href": { - "description": "Link to the account for this web property.", - "type": "string" - }, - "type": { - "default": "analytics#account", - "description": "Type of the parent link. Its value is \"analytics#account\".", - "type": "string" - } - }, - "type": "object" - }, - "permissions": { - "description": "Permissions the user has for this web property.", - "properties": { - "effective": { - "description": "All the permissions that the user has for this web property. These include any implied permissions (e.g., EDIT implies VIEW) or inherited permissions from the parent account.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - } - }, - "type": "object" - }, - "profileCount": { - "description": "View (Profile) count for this web property.", - "format": "int32", - "readOnly": true, - "type": "integer" - }, - "selfLink": { - "description": "Link for this web property.", - "readOnly": true, - "type": "string" - }, - "starred": { - "description": "Indicates whether this web property is starred or not.", - "type": "boolean" - }, - "updated": { - "description": "Time this web property was last modified.", - "format": "date-time", - "readOnly": true, - "type": "string" - }, - "websiteUrl": { - "description": "Website url for this web property.", - "type": "string" - } - }, - "type": "object" - } - }, - "servicePath": "analytics/v3/", - "title": "Google Analytics API", - "version": "v3" -} \ No newline at end of file diff --git a/src/apis/analytics/v3.ts b/src/apis/analytics/v3.ts deleted file mode 100644 index 3350419523..0000000000 --- a/src/apis/analytics/v3.ts +++ /dev/null @@ -1,18783 +0,0 @@ -// 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/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, - GaxiosResponseWithHTTP2, - GoogleConfigurable, - createAPIRequest, - MethodOptions, - StreamMethodOptions, - GlobalOptions, - GoogleAuth, - BodyResponseCallback, - APIRequestContext, -} from 'googleapis-common'; -import {Readable} from 'stream'; - -export namespace analytics_v3 { - export interface Options extends GlobalOptions { - version: 'v3'; - } - - interface StandardParameters { - /** - * Auth client or API Key for the request - */ - auth?: - | string - | OAuth2Client - | JWT - | Compute - | UserRefreshClient - | BaseExternalAccountClient - | GoogleAuth; - - /** - * Data format for the response. - */ - alt?: 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; - /** - * An opaque string that represents a user for quota purposes. Must not exceed 40 characters. - */ - quotaUser?: string; - /** - * Deprecated. Please use quotaUser instead. - */ - userIp?: string; - } - - /** - * Google Analytics API - * - * Views and manages your Google Analytics data. - * - * @example - * ```js - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * ``` - */ - export class Analytics { - context: APIRequestContext; - data: Resource$Data; - management: Resource$Management; - metadata: Resource$Metadata; - provisioning: Resource$Provisioning; - userDeletion: Resource$Userdeletion; - - constructor(options: GlobalOptions, google?: GoogleConfigurable) { - this.context = { - _options: options || {}, - google, - }; - - this.data = new Resource$Data(this.context); - this.management = new Resource$Management(this.context); - this.metadata = new Resource$Metadata(this.context); - this.provisioning = new Resource$Provisioning(this.context); - this.userDeletion = new Resource$Userdeletion(this.context); - } - } - - /** - * JSON template for Analytics account entry. - */ - export interface Schema$Account { - /** - * Child link for an account entry. Points to the list of web properties for this account. - */ - childLink?: {href?: string; type?: string} | null; - /** - * Time the account was created. - */ - created?: string | null; - /** - * Account ID. - */ - id?: string | null; - /** - * Resource type for Analytics account. - */ - kind?: string | null; - /** - * Account name. - */ - name?: string | null; - /** - * Permissions the user has for this account. - */ - permissions?: {effective?: string[]} | null; - /** - * Link for this account. - */ - selfLink?: string | null; - /** - * Indicates whether this account is starred or not. - */ - starred?: boolean | null; - /** - * Time the account was last modified. - */ - updated?: string | null; - } - /** - * JSON template for a linked account. - */ - export interface Schema$AccountRef { - /** - * Link for this account. - */ - href?: string | null; - /** - * Account ID. - */ - id?: string | null; - /** - * Analytics account reference. - */ - kind?: string | null; - /** - * Account name. - */ - name?: string | null; - } - /** - * An account collection provides a list of Analytics accounts to which a user has access. The account collection is the entry point to all management information. Each resource in the collection corresponds to a single Analytics account. - */ - export interface Schema$Accounts { - /** - * A list of accounts. - */ - items?: Schema$Account[]; - /** - * The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Next link for this account collection. - */ - nextLink?: string | null; - /** - * Previous link for this account collection. - */ - previousLink?: string | null; - /** - * The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * An AccountSummary collection lists a summary of accounts, properties and views (profiles) to which the user has access. Each resource in the collection corresponds to a single AccountSummary. - */ - export interface Schema$AccountSummaries { - /** - * A list of AccountSummaries. - */ - items?: Schema$AccountSummary[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this AccountSummary collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this AccountSummary collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for an Analytics AccountSummary. An AccountSummary is a lightweight tree comprised of properties/profiles. - */ - export interface Schema$AccountSummary { - /** - * Account ID. - */ - id?: string | null; - /** - * Resource type for Analytics AccountSummary. - */ - kind?: string | null; - /** - * Account name. - */ - name?: string | null; - /** - * Indicates whether this account is starred or not. - */ - starred?: boolean | null; - /** - * List of web properties under this account. - */ - webProperties?: Schema$WebPropertySummary[]; - } - /** - * JSON template for an Analytics account ticket. The account ticket consists of the ticket ID and the basic information for the account, property and profile. - */ - export interface Schema$AccountTicket { - /** - * Account for this ticket. - */ - account?: Schema$Account; - /** - * Account ticket ID used to access the account ticket. - */ - id?: string | null; - /** - * Resource type for account ticket. - */ - kind?: string | null; - /** - * View (Profile) for the account. - */ - profile?: Schema$Profile; - /** - * Redirect URI where the user will be sent after accepting Terms of Service. Must be configured in APIs console as a callback URL. - */ - redirectUri?: string | null; - /** - * Web property for the account. - */ - webproperty?: Schema$Webproperty; - } - /** - * JSON template for an Analytics account tree requests. The account tree request is used in the provisioning api to create an account, property, and view (profile). It contains the basic information required to make these fields. - */ - export interface Schema$AccountTreeRequest { - accountName?: string | null; - /** - * Resource type for account ticket. - */ - kind?: string | null; - profileName?: string | null; - timezone?: string | null; - webpropertyName?: string | null; - websiteUrl?: string | null; - } - /** - * JSON template for an Analytics account tree response. The account tree response is used in the provisioning api to return the result of creating an account, property, and view (profile). - */ - export interface Schema$AccountTreeResponse { - /** - * The account created. - */ - account?: Schema$Account; - /** - * Resource type for account ticket. - */ - kind?: string | null; - /** - * View (Profile) for the account. - */ - profile?: Schema$Profile; - /** - * Web property for the account. - */ - webproperty?: Schema$Webproperty; - } - /** - * JSON template for an Google Ads account. - */ - export interface Schema$AdWordsAccount { - /** - * True if auto-tagging is enabled on the Google Ads account. Read-only after the insert operation. - */ - autoTaggingEnabled?: boolean | null; - /** - * Customer ID. This field is required when creating a Google Ads link. - */ - customerId?: string | null; - /** - * Resource type for Google Ads account. - */ - kind?: string | null; - } - /** - * Request template for the delete upload data request. - */ - export interface Schema$AnalyticsDataimportDeleteUploadDataRequest { - /** - * A list of upload UIDs. - */ - customDataImportUids?: string[] | null; - } - /** - * JSON template for a metadata column. - */ - export interface Schema$Column { - /** - * Map of attribute name and value for this column. - */ - attributes?: {[key: string]: string} | null; - /** - * Column id. - */ - id?: string | null; - /** - * Resource type for Analytics column. - */ - kind?: string | null; - } - /** - * Lists columns (dimensions and metrics) for a particular report type. - */ - export interface Schema$Columns { - /** - * List of attributes names returned by columns. - */ - attributeNames?: string[] | null; - /** - * Etag of collection. This etag can be compared with the last response etag to check if response has changed. - */ - etag?: string | null; - /** - * List of columns for a report type. - */ - items?: Schema$Column[]; - /** - * Collection type. - */ - kind?: string | null; - /** - * Total number of columns returned in the response. - */ - totalResults?: number | null; - } - /** - * JSON template for an Analytics custom data source. - */ - export interface Schema$CustomDataSource { - /** - * Account ID to which this custom data source belongs. - */ - accountId?: string | null; - childLink?: {href?: string; type?: string} | null; - /** - * Time this custom data source was created. - */ - created?: string | null; - /** - * Description of custom data source. - */ - description?: string | null; - /** - * Custom data source ID. - */ - id?: string | null; - importBehavior?: string | null; - /** - * Resource type for Analytics custom data source. - */ - kind?: string | null; - /** - * Name of this custom data source. - */ - name?: string | null; - /** - * Parent link for this custom data source. Points to the web property to which this custom data source belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * IDs of views (profiles) linked to the custom data source. - */ - profilesLinked?: string[] | null; - /** - * Collection of schema headers of the custom data source. - */ - schema?: string[] | null; - /** - * Link for this Analytics custom data source. - */ - selfLink?: string | null; - /** - * Type of the custom data source. - */ - type?: string | null; - /** - * Time this custom data source was last modified. - */ - updated?: string | null; - /** - * Upload type of the custom data source. - */ - uploadType?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY to which this custom data source belongs. - */ - webPropertyId?: string | null; - } - /** - * Lists Analytics custom data sources to which the user has access. Each resource in the collection corresponds to a single Analytics custom data source. - */ - export interface Schema$CustomDataSources { - /** - * Collection of custom data sources. - */ - items?: Schema$CustomDataSource[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this custom data source collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this custom data source collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for Analytics Custom Dimension. - */ - export interface Schema$CustomDimension { - /** - * Account ID. - */ - accountId?: string | null; - /** - * Boolean indicating whether the custom dimension is active. - */ - active?: boolean | null; - /** - * Time the custom dimension was created. - */ - created?: string | null; - /** - * Custom dimension ID. - */ - id?: string | null; - /** - * Index of the custom dimension. - */ - index?: number | null; - /** - * Kind value for a custom dimension. Set to "analytics#customDimension". It is a read-only field. - */ - kind?: string | null; - /** - * Name of the custom dimension. - */ - name?: string | null; - /** - * Parent link for the custom dimension. Points to the property to which the custom dimension belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * Scope of the custom dimension: HIT, SESSION, USER or PRODUCT. - */ - scope?: string | null; - /** - * Link for the custom dimension - */ - selfLink?: string | null; - /** - * Time the custom dimension was last modified. - */ - updated?: string | null; - /** - * Property ID. - */ - webPropertyId?: string | null; - } - /** - * A custom dimension collection lists Analytics custom dimensions to which the user has access. Each resource in the collection corresponds to a single Analytics custom dimension. - */ - export interface Schema$CustomDimensions { - /** - * Collection of custom dimensions. - */ - items?: Schema$CustomDimension[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this custom dimension collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this custom dimension collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for Analytics Custom Metric. - */ - export interface Schema$CustomMetric { - /** - * Account ID. - */ - accountId?: string | null; - /** - * Boolean indicating whether the custom metric is active. - */ - active?: boolean | null; - /** - * Time the custom metric was created. - */ - created?: string | null; - /** - * Custom metric ID. - */ - id?: string | null; - /** - * Index of the custom metric. - */ - index?: number | null; - /** - * Kind value for a custom metric. Set to "analytics#customMetric". It is a read-only field. - */ - kind?: string | null; - /** - * Max value of custom metric. - */ - max_value?: string | null; - /** - * Min value of custom metric. - */ - min_value?: string | null; - /** - * Name of the custom metric. - */ - name?: string | null; - /** - * Parent link for the custom metric. Points to the property to which the custom metric belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * Scope of the custom metric: HIT or PRODUCT. - */ - scope?: string | null; - /** - * Link for the custom metric - */ - selfLink?: string | null; - /** - * Data type of custom metric. - */ - type?: string | null; - /** - * Time the custom metric was last modified. - */ - updated?: string | null; - /** - * Property ID. - */ - webPropertyId?: string | null; - } - /** - * A custom metric collection lists Analytics custom metrics to which the user has access. Each resource in the collection corresponds to a single Analytics custom metric. - */ - export interface Schema$CustomMetrics { - /** - * Collection of custom metrics. - */ - items?: Schema$CustomMetric[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this custom metric collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this custom metric collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for Analytics Entity Google Ads Link. - */ - export interface Schema$EntityAdWordsLink { - /** - * A list of Google Ads client accounts. These cannot be MCC accounts. This field is required when creating a Google Ads link. It cannot be empty. - */ - adWordsAccounts?: Schema$AdWordsAccount[]; - /** - * Web property being linked. - */ - entity?: {webPropertyRef?: Schema$WebPropertyRef} | null; - /** - * Entity Google Ads link ID - */ - id?: string | null; - /** - * Resource type for entity Google Ads link. - */ - kind?: string | null; - /** - * Name of the link. This field is required when creating a Google Ads link. - */ - name?: string | null; - /** - * IDs of linked Views (Profiles) represented as strings. - */ - profileIds?: string[] | null; - /** - * URL link for this Google Analytics - Google Ads link. - */ - selfLink?: string | null; - } - /** - * An entity Google Ads link collection provides a list of GA-Google Ads links Each resource in this collection corresponds to a single link. - */ - export interface Schema$EntityAdWordsLinks { - /** - * A list of entity Google Ads links. - */ - items?: Schema$EntityAdWordsLink[]; - /** - * The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Next link for this Google Ads link collection. - */ - nextLink?: string | null; - /** - * Previous link for this Google Ads link collection. - */ - previousLink?: string | null; - /** - * The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - } - /** - * JSON template for an Analytics Entity-User Link. Returns permissions that a user has for an entity. - */ - export interface Schema$EntityUserLink { - /** - * Entity for this link. It can be an account, a web property, or a view (profile). - */ - entity?: { - accountRef?: Schema$AccountRef; - profileRef?: Schema$ProfileRef; - webPropertyRef?: Schema$WebPropertyRef; - } | null; - /** - * Entity user link ID - */ - id?: string | null; - /** - * Resource type for entity user link. - */ - kind?: string | null; - /** - * Permissions the user has for this entity. - */ - permissions?: {effective?: string[]; local?: string[]} | null; - /** - * Self link for this resource. - */ - selfLink?: string | null; - /** - * User reference. - */ - userRef?: Schema$UserRef; - } - /** - * An entity user link collection provides a list of Analytics ACL links Each resource in this collection corresponds to a single link. - */ - export interface Schema$EntityUserLinks { - /** - * A list of entity user links. - */ - items?: Schema$EntityUserLink[]; - /** - * The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Next link for this account collection. - */ - nextLink?: string | null; - /** - * Previous link for this account collection. - */ - previousLink?: string | null; - /** - * The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - } - /** - * JSON template for Analytics experiment resource. - */ - export interface Schema$Experiment { - /** - * Account ID to which this experiment belongs. This field is read-only. - */ - accountId?: string | null; - /** - * Time the experiment was created. This field is read-only. - */ - created?: string | null; - /** - * Notes about this experiment. - */ - description?: string | null; - /** - * If true, the end user will be able to edit the experiment via the Google Analytics user interface. - */ - editableInGaUi?: boolean | null; - /** - * The ending time of the experiment (the time the status changed from RUNNING to ENDED). This field is present only if the experiment has ended. This field is read-only. - */ - endTime?: string | null; - /** - * Boolean specifying whether to distribute traffic evenly across all variations. If the value is False, content experiments follows the default behavior of adjusting traffic dynamically based on variation performance. Optional -- defaults to False. This field may not be changed for an experiment whose status is ENDED. - */ - equalWeighting?: boolean | null; - /** - * Experiment ID. Required for patch and update. Disallowed for create. - */ - id?: string | null; - /** - * Internal ID for the web property to which this experiment belongs. This field is read-only. - */ - internalWebPropertyId?: string | null; - /** - * Resource type for an Analytics experiment. This field is read-only. - */ - kind?: string | null; - /** - * An integer number in [3, 90]. Specifies the minimum length of the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED. - */ - minimumExperimentLengthInDays?: number | null; - /** - * Experiment name. This field may not be changed for an experiment whose status is ENDED. This field is required when creating an experiment. - */ - name?: string | null; - /** - * The metric that the experiment is optimizing. Valid values: "ga:goal(n)Completions", "ga:adsenseAdsClicks", "ga:adsenseAdsViewed", "ga:adsenseRevenue", "ga:bounces", "ga:pageviews", "ga:sessionDuration", "ga:transactions", "ga:transactionRevenue". This field is required if status is "RUNNING" and servingFramework is one of "REDIRECT" or "API". - */ - objectiveMetric?: string | null; - /** - * Whether the objectiveMetric should be minimized or maximized. Possible values: "MAXIMUM", "MINIMUM". Optional--defaults to "MAXIMUM". Cannot be specified without objectiveMetric. Cannot be modified when status is "RUNNING" or "ENDED". - */ - optimizationType?: string | null; - /** - * Parent link for an experiment. Points to the view (profile) to which this experiment belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * View (Profile) ID to which this experiment belongs. This field is read-only. - */ - profileId?: string | null; - /** - * Why the experiment ended. Possible values: "STOPPED_BY_USER", "WINNER_FOUND", "EXPERIMENT_EXPIRED", "ENDED_WITH_NO_WINNER", "GOAL_OBJECTIVE_CHANGED". "ENDED_WITH_NO_WINNER" means that the experiment didn't expire but no winner was projected to be found. If the experiment status is changed via the API to ENDED this field is set to STOPPED_BY_USER. This field is read-only. - */ - reasonExperimentEnded?: string | null; - /** - * Boolean specifying whether variations URLS are rewritten to match those of the original. This field may not be changed for an experiments whose status is ENDED. - */ - rewriteVariationUrlsAsOriginal?: boolean | null; - /** - * Link for this experiment. This field is read-only. - */ - selfLink?: string | null; - /** - * The framework used to serve the experiment variations and evaluate the results. One of: - * - REDIRECT: Google Analytics redirects traffic to different variation pages, reports the chosen variation and evaluates the results. - * - API: Google Analytics chooses and reports the variation to serve and evaluates the results; the caller is responsible for serving the selected variation. - * - EXTERNAL: The variations will be served externally and the chosen variation reported to Google Analytics. The caller is responsible for serving the selected variation and evaluating the results. - */ - servingFramework?: string | null; - /** - * The snippet of code to include on the control page(s). This field is read-only. - */ - snippet?: string | null; - /** - * The starting time of the experiment (the time the status changed from READY_TO_RUN to RUNNING). This field is present only if the experiment has started. This field is read-only. - */ - startTime?: string | null; - /** - * Experiment status. Possible values: "DRAFT", "READY_TO_RUN", "RUNNING", "ENDED". Experiments can be created in the "DRAFT", "READY_TO_RUN" or "RUNNING" state. This field is required when creating an experiment. - */ - status?: string | null; - /** - * A floating-point number in (0, 1]. Specifies the fraction of the traffic that participates in the experiment. Can be changed for a running experiment. This field may not be changed for an experiments whose status is ENDED. - */ - trafficCoverage?: number | null; - /** - * Time the experiment was last modified. This field is read-only. - */ - updated?: string | null; - /** - * Array of variations. The first variation in the array is the original. The number of variations may not change once an experiment is in the RUNNING state. At least two variations are required before status can be set to RUNNING. - */ - variations?: Array<{ - name?: string; - status?: string; - url?: string; - weight?: number; - won?: boolean; - }> | null; - /** - * Web property ID to which this experiment belongs. The web property ID is of the form UA-XXXXX-YY. This field is read-only. - */ - webPropertyId?: string | null; - /** - * A floating-point number in (0, 1). Specifies the necessary confidence level to choose a winner. This field may not be changed for an experiments whose status is ENDED. - */ - winnerConfidenceLevel?: number | null; - /** - * Boolean specifying whether a winner has been found for this experiment. This field is read-only. - */ - winnerFound?: boolean | null; - } - /** - * An experiment collection lists Analytics experiments to which the user has access. Each view (profile) can have a set of experiments. Each resource in the Experiment collection corresponds to a single Analytics experiment. - */ - export interface Schema$Experiments { - /** - * A list of experiments. - */ - items?: Schema$Experiment[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this experiment collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this experiment collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of resources in the result. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for an Analytics account filter. - */ - export interface Schema$Filter { - /** - * Account ID to which this filter belongs. - */ - accountId?: string | null; - /** - * Details for the filter of the type ADVANCED. - */ - advancedDetails?: { - caseSensitive?: boolean; - extractA?: string; - extractB?: string; - fieldA?: string; - fieldAIndex?: number; - fieldARequired?: boolean; - fieldB?: string; - fieldBIndex?: number; - fieldBRequired?: boolean; - outputConstructor?: string; - outputToField?: string; - outputToFieldIndex?: number; - overrideOutputField?: boolean; - } | null; - /** - * Time this filter was created. - */ - created?: string | null; - /** - * Details for the filter of the type EXCLUDE. - */ - excludeDetails?: Schema$FilterExpression; - /** - * Filter ID. - */ - id?: string | null; - /** - * Details for the filter of the type INCLUDE. - */ - includeDetails?: Schema$FilterExpression; - /** - * Resource type for Analytics filter. - */ - kind?: string | null; - /** - * Details for the filter of the type LOWER. - */ - lowercaseDetails?: {field?: string; fieldIndex?: number} | null; - /** - * Name of this filter. - */ - name?: string | null; - /** - * Parent link for this filter. Points to the account to which this filter belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * Details for the filter of the type SEARCH_AND_REPLACE. - */ - searchAndReplaceDetails?: { - caseSensitive?: boolean; - field?: string; - fieldIndex?: number; - replaceString?: string; - searchString?: string; - } | null; - /** - * Link for this filter. - */ - selfLink?: string | null; - /** - * Type of this filter. Possible values are INCLUDE, EXCLUDE, LOWERCASE, UPPERCASE, SEARCH_AND_REPLACE and ADVANCED. - */ - type?: string | null; - /** - * Time this filter was last modified. - */ - updated?: string | null; - /** - * Details for the filter of the type UPPER. - */ - uppercaseDetails?: {field?: string; fieldIndex?: number} | null; - } - /** - * JSON template for an Analytics filter expression. - */ - export interface Schema$FilterExpression { - /** - * Determines if the filter is case sensitive. - */ - caseSensitive?: boolean | null; - /** - * Filter expression value - */ - expressionValue?: string | null; - /** - * Field to filter. Possible values: - * - Content and Traffic - * - PAGE_REQUEST_URI, - * - PAGE_HOSTNAME, - * - PAGE_TITLE, - * - REFERRAL, - * - COST_DATA_URI (Campaign target URL), - * - HIT_TYPE, - * - INTERNAL_SEARCH_TERM, - * - INTERNAL_SEARCH_TYPE, - * - SOURCE_PROPERTY_TRACKING_ID, - * - Campaign or AdGroup - * - CAMPAIGN_SOURCE, - * - CAMPAIGN_MEDIUM, - * - CAMPAIGN_NAME, - * - CAMPAIGN_AD_GROUP, - * - CAMPAIGN_TERM, - * - CAMPAIGN_CONTENT, - * - CAMPAIGN_CODE, - * - CAMPAIGN_REFERRAL_PATH, - * - E-Commerce - * - TRANSACTION_COUNTRY, - * - TRANSACTION_REGION, - * - TRANSACTION_CITY, - * - TRANSACTION_AFFILIATION (Store or order location), - * - ITEM_NAME, - * - ITEM_CODE, - * - ITEM_VARIATION, - * - TRANSACTION_ID, - * - TRANSACTION_CURRENCY_CODE, - * - PRODUCT_ACTION_TYPE, - * - Audience/Users - * - BROWSER, - * - BROWSER_VERSION, - * - BROWSER_SIZE, - * - PLATFORM, - * - PLATFORM_VERSION, - * - LANGUAGE, - * - SCREEN_RESOLUTION, - * - SCREEN_COLORS, - * - JAVA_ENABLED (Boolean Field), - * - FLASH_VERSION, - * - GEO_SPEED (Connection speed), - * - VISITOR_TYPE, - * - GEO_ORGANIZATION (ISP organization), - * - GEO_DOMAIN, - * - GEO_IP_ADDRESS, - * - GEO_IP_VERSION, - * - Location - * - GEO_COUNTRY, - * - GEO_REGION, - * - GEO_CITY, - * - Event - * - EVENT_CATEGORY, - * - EVENT_ACTION, - * - EVENT_LABEL, - * - Other - * - CUSTOM_FIELD_1, - * - CUSTOM_FIELD_2, - * - USER_DEFINED_VALUE, - * - Application - * - APP_ID, - * - APP_INSTALLER_ID, - * - APP_NAME, - * - APP_VERSION, - * - SCREEN, - * - IS_APP (Boolean Field), - * - IS_FATAL_EXCEPTION (Boolean Field), - * - EXCEPTION_DESCRIPTION, - * - Mobile device - * - IS_MOBILE (Boolean Field, Deprecated. Use DEVICE_CATEGORY=mobile), - * - IS_TABLET (Boolean Field, Deprecated. Use DEVICE_CATEGORY=tablet), - * - DEVICE_CATEGORY, - * - MOBILE_HAS_QWERTY_KEYBOARD (Boolean Field), - * - MOBILE_HAS_NFC_SUPPORT (Boolean Field), - * - MOBILE_HAS_CELLULAR_RADIO (Boolean Field), - * - MOBILE_HAS_WIFI_SUPPORT (Boolean Field), - * - MOBILE_BRAND_NAME, - * - MOBILE_MODEL_NAME, - * - MOBILE_MARKETING_NAME, - * - MOBILE_POINTING_METHOD, - * - Social - * - SOCIAL_NETWORK, - * - SOCIAL_ACTION, - * - SOCIAL_ACTION_TARGET, - * - Custom dimension - * - CUSTOM_DIMENSION (See accompanying field index), - */ - field?: string | null; - /** - * The Index of the custom dimension. Set only if the field is a is CUSTOM_DIMENSION. - */ - fieldIndex?: number | null; - /** - * Kind value for filter expression - */ - kind?: string | null; - /** - * Match type for this filter. Possible values are BEGINS_WITH, EQUAL, ENDS_WITH, CONTAINS, or MATCHES. GEO_DOMAIN, GEO_IP_ADDRESS, PAGE_REQUEST_URI, or PAGE_HOSTNAME filters can use any match type; all other filters must use MATCHES. - */ - matchType?: string | null; - } - /** - * JSON template for a profile filter link. - */ - export interface Schema$FilterRef { - /** - * Account ID to which this filter belongs. - */ - accountId?: string | null; - /** - * Link for this filter. - */ - href?: string | null; - /** - * Filter ID. - */ - id?: string | null; - /** - * Kind value for filter reference. - */ - kind?: string | null; - /** - * Name of this filter. - */ - name?: string | null; - } - /** - * A filter collection lists filters created by users in an Analytics account. Each resource in the collection corresponds to a filter. - */ - export interface Schema$Filters { - /** - * A list of filters. - */ - items?: Schema$Filter[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this filter collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this filter collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * Analytics data for a given view (profile). - */ - export interface Schema$GaData { - /** - * Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request. - */ - columnHeaders?: Array<{ - columnType?: string; - dataType?: string; - name?: string; - }> | null; - /** - * Determines if Analytics data contains samples. - */ - containsSampledData?: boolean | null; - /** - * The last refreshed time in seconds for Analytics data. - */ - dataLastRefreshed?: string | null; - dataTable?: { - cols?: Array<{id?: string; label?: string; type?: string}>; - rows?: Array<{c?: Array<{v?: string}>}>; - } | null; - /** - * Unique ID for this data response. - */ - id?: string | null; - /** - * The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Resource type. - */ - kind?: string | null; - /** - * Link to next page for this Analytics data query. - */ - nextLink?: string | null; - /** - * Link to previous page for this Analytics data query. - */ - previousLink?: string | null; - /** - * Information for the view (profile), for which the Analytics data was requested. - */ - profileInfo?: { - accountId?: string; - internalWebPropertyId?: string; - profileId?: string; - profileName?: string; - tableId?: string; - webPropertyId?: string; - } | null; - /** - * Analytics data request query parameters. - */ - query?: { - dimensions?: string; - 'end-date'?: string; - filters?: string; - ids?: string; - 'max-results'?: number; - metrics?: string[]; - samplingLevel?: string; - segment?: string; - sort?: string[]; - 'start-date'?: string; - 'start-index'?: number; - } | null; - /** - * Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request. - */ - rows?: string[][] | null; - /** - * The number of samples used to calculate the result. - */ - sampleSize?: string | null; - /** - * Total size of the sample space from which the samples were selected. - */ - sampleSpace?: string | null; - /** - * Link to this page. - */ - selfLink?: string | null; - /** - * The total number of rows for the query, regardless of the number of rows in the response. - */ - totalResults?: number | null; - /** - * Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request. - */ - totalsForAllResults?: {[key: string]: string} | null; - } - /** - * JSON template for Analytics goal resource. - */ - export interface Schema$Goal { - /** - * Account ID to which this goal belongs. - */ - accountId?: string | null; - /** - * Determines whether this goal is active. - */ - active?: boolean | null; - /** - * Time this goal was created. - */ - created?: string | null; - /** - * Details for the goal of the type EVENT. - */ - eventDetails?: { - eventConditions?: Array<{ - comparisonType?: string; - comparisonValue?: string; - expression?: string; - matchType?: string; - type?: string; - }>; - useEventValue?: boolean; - } | null; - /** - * Goal ID. - */ - id?: string | null; - /** - * Internal ID for the web property to which this goal belongs. - */ - internalWebPropertyId?: string | null; - /** - * Resource type for an Analytics goal. - */ - kind?: string | null; - /** - * Goal name. - */ - name?: string | null; - /** - * Parent link for a goal. Points to the view (profile) to which this goal belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * View (Profile) ID to which this goal belongs. - */ - profileId?: string | null; - /** - * Link for this goal. - */ - selfLink?: string | null; - /** - * Goal type. Possible values are URL_DESTINATION, VISIT_TIME_ON_SITE, VISIT_NUM_PAGES, AND EVENT. - */ - type?: string | null; - /** - * Time this goal was last modified. - */ - updated?: string | null; - /** - * Details for the goal of the type URL_DESTINATION. - */ - urlDestinationDetails?: { - caseSensitive?: boolean; - firstStepRequired?: boolean; - matchType?: string; - steps?: Array<{name?: string; number?: number; url?: string}>; - url?: string; - } | null; - /** - * Goal value. - */ - value?: number | null; - /** - * Details for the goal of the type VISIT_NUM_PAGES. - */ - visitNumPagesDetails?: { - comparisonType?: string; - comparisonValue?: string; - } | null; - /** - * Details for the goal of the type VISIT_TIME_ON_SITE. - */ - visitTimeOnSiteDetails?: { - comparisonType?: string; - comparisonValue?: string; - } | null; - /** - * Web property ID to which this goal belongs. The web property ID is of the form UA-XXXXX-YY. - */ - webPropertyId?: string | null; - } - /** - * A goal collection lists Analytics goals to which the user has access. Each view (profile) can have a set of goals. Each resource in the Goal collection corresponds to a single Analytics goal. - */ - export interface Schema$Goals { - /** - * A list of goals. - */ - items?: Schema$Goal[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this goal collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this goal collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of resources in the result. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for a hash Client Id request resource. - */ - export interface Schema$HashClientIdRequest { - clientId?: string | null; - kind?: string | null; - webPropertyId?: string | null; - } - /** - * JSON template for a hash Client Id response resource. - */ - export interface Schema$HashClientIdResponse { - clientId?: string | null; - hashedClientId?: string | null; - kind?: string | null; - webPropertyId?: string | null; - } - /** - * JSON template for an Analytics Remarketing Include Conditions. - */ - export interface Schema$IncludeConditions { - /** - * The look-back window lets you specify a time frame for evaluating the behavior that qualifies users for your audience. For example, if your filters include users from Central Asia, and Transactions Greater than 2, and you set the look-back window to 14 days, then any user from Central Asia whose cumulative transactions exceed 2 during the last 14 days is added to the audience. - */ - daysToLookBack?: number | null; - /** - * Boolean indicating whether this segment is a smart list. https://support.google.com/analytics/answer/4628577 - */ - isSmartList?: boolean | null; - /** - * Resource type for include conditions. - */ - kind?: string | null; - /** - * Number of days (in the range 1 to 540) a user remains in the audience. - */ - membershipDurationDays?: number | null; - /** - * The segment condition that will cause a user to be added to an audience. - */ - segment?: string | null; - } - /** - * JSON template for an Analytics Remarketing Audience Foreign Link. - */ - export interface Schema$LinkedForeignAccount { - /** - * Account ID to which this linked foreign account belongs. - */ - accountId?: string | null; - /** - * Boolean indicating whether this is eligible for search. - */ - eligibleForSearch?: boolean | null; - /** - * Entity ad account link ID. - */ - id?: string | null; - /** - * Internal ID for the web property to which this linked foreign account belongs. - */ - internalWebPropertyId?: string | null; - /** - * Resource type for linked foreign account. - */ - kind?: string | null; - /** - * The foreign account ID. For example the an Google Ads `linkedAccountId` has the following format XXX-XXX-XXXX. - */ - linkedAccountId?: string | null; - /** - * Remarketing audience ID to which this linked foreign account belongs. - */ - remarketingAudienceId?: string | null; - /** - * The status of this foreign account link. - */ - status?: string | null; - /** - * The type of the foreign account. For example, `ADWORDS_LINKS`, `DBM_LINKS`, `MCC_LINKS` or `OPTIMIZE`. - */ - type?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY to which this linked foreign account belongs. - */ - webPropertyId?: string | null; - } - /** - * Multi-Channel Funnels data for a given view (profile). - */ - export interface Schema$McfData { - /** - * Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request. - */ - columnHeaders?: Array<{ - columnType?: string; - dataType?: string; - name?: string; - }> | null; - /** - * Determines if the Analytics data contains sampled data. - */ - containsSampledData?: boolean | null; - /** - * Unique ID for this data response. - */ - id?: string | null; - /** - * The maximum number of rows the response can contain, regardless of the actual number of rows returned. Its value ranges from 1 to 10,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Resource type. - */ - kind?: string | null; - /** - * Link to next page for this Analytics data query. - */ - nextLink?: string | null; - /** - * Link to previous page for this Analytics data query. - */ - previousLink?: string | null; - /** - * Information for the view (profile), for which the Analytics data was requested. - */ - profileInfo?: { - accountId?: string; - internalWebPropertyId?: string; - profileId?: string; - profileName?: string; - tableId?: string; - webPropertyId?: string; - } | null; - /** - * Analytics data request query parameters. - */ - query?: { - dimensions?: string; - 'end-date'?: string; - filters?: string; - ids?: string; - 'max-results'?: number; - metrics?: string[]; - samplingLevel?: string; - segment?: string; - sort?: string[]; - 'start-date'?: string; - 'start-index'?: number; - } | null; - /** - * Analytics data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request. - */ - rows?: Array< - Array<{ - conversionPathValue?: Array<{ - interactionType?: string; - nodeValue?: string; - }>; - primitiveValue?: string; - }> - > | null; - /** - * The number of samples used to calculate the result. - */ - sampleSize?: string | null; - /** - * Total size of the sample space from which the samples were selected. - */ - sampleSpace?: string | null; - /** - * Link to this page. - */ - selfLink?: string | null; - /** - * The total number of rows for the query, regardless of the number of rows in the response. - */ - totalResults?: number | null; - /** - * Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request. - */ - totalsForAllResults?: {[key: string]: string} | null; - } - /** - * JSON template for an Analytics view (profile). - */ - export interface Schema$Profile { - /** - * Account ID to which this view (profile) belongs. - */ - accountId?: string | null; - /** - * Indicates whether bot filtering is enabled for this view (profile). - */ - botFilteringEnabled?: boolean | null; - /** - * Child link for this view (profile). Points to the list of goals for this view (profile). - */ - childLink?: {href?: string; type?: string} | null; - /** - * Time this view (profile) was created. - */ - created?: string | null; - /** - * The currency type associated with this view (profile), defaults to USD. The supported values are: - * USD, JPY, EUR, GBP, AUD, KRW, BRL, CNY, DKK, RUB, SEK, NOK, PLN, TRY, TWD, HKD, THB, IDR, ARS, MXN, VND, PHP, INR, CHF, CAD, CZK, NZD, HUF, BGN, LTL, ZAR, UAH, AED, BOB, CLP, COP, EGP, HRK, ILS, MAD, MYR, PEN, PKR, RON, RSD, SAR, SGD, VEF, LVL - */ - currency?: string | null; - /** - * Default page for this view (profile). - */ - defaultPage?: string | null; - /** - * Indicates whether ecommerce tracking is enabled for this view (profile). - */ - eCommerceTracking?: boolean | null; - /** - * Indicates whether enhanced ecommerce tracking is enabled for this view (profile). This property can only be enabled if ecommerce tracking is enabled. - */ - enhancedECommerceTracking?: boolean | null; - /** - * The query parameters that are excluded from this view (profile). - */ - excludeQueryParameters?: string | null; - /** - * View (Profile) ID. - */ - id?: string | null; - /** - * Internal ID for the web property to which this view (profile) belongs. - */ - internalWebPropertyId?: string | null; - /** - * Resource type for Analytics view (profile). - */ - kind?: string | null; - /** - * Name of this view (profile). - */ - name?: string | null; - /** - * Parent link for this view (profile). Points to the web property to which this view (profile) belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * Permissions the user has for this view (profile). - */ - permissions?: {effective?: string[]} | null; - /** - * Link for this view (profile). - */ - selfLink?: string | null; - /** - * Site search category parameters for this view (profile). - */ - siteSearchCategoryParameters?: string | null; - /** - * The site search query parameters for this view (profile). - */ - siteSearchQueryParameters?: string | null; - /** - * Indicates whether this view (profile) is starred or not. - */ - starred?: boolean | null; - /** - * Whether or not Analytics will strip search category parameters from the URLs in your reports. - */ - stripSiteSearchCategoryParameters?: boolean | null; - /** - * Whether or not Analytics will strip search query parameters from the URLs in your reports. - */ - stripSiteSearchQueryParameters?: boolean | null; - /** - * Time zone for which this view (profile) has been configured. Time zones are identified by strings from the TZ database. - */ - timezone?: string | null; - /** - * View (Profile) type. Supported types: WEB or APP. - */ - type?: string | null; - /** - * Time this view (profile) was last modified. - */ - updated?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs. - */ - webPropertyId?: string | null; - /** - * Website URL for this view (profile). - */ - websiteUrl?: string | null; - } - /** - * JSON template for an Analytics profile filter link. - */ - export interface Schema$ProfileFilterLink { - /** - * Filter for this link. - */ - filterRef?: Schema$FilterRef; - /** - * Profile filter link ID. - */ - id?: string | null; - /** - * Resource type for Analytics filter. - */ - kind?: string | null; - /** - * View (Profile) for this link. - */ - profileRef?: Schema$ProfileRef; - /** - * The rank of this profile filter link relative to the other filters linked to the same profile. - * For readonly (i.e., list and get) operations, the rank always starts at 1. - * For write (i.e., create, update, or delete) operations, you may specify a value between 0 and 255 inclusively, [0, 255]. In order to insert a link at the end of the list, either don't specify a rank or set a rank to a number greater than the largest rank in the list. In order to insert a link to the beginning of the list specify a rank that is less than or equal to 1. The new link will move all existing filters with the same or lower rank down the list. After the link is inserted/updated/deleted all profile filter links will be renumbered starting at 1. - */ - rank?: number | null; - /** - * Link for this profile filter link. - */ - selfLink?: string | null; - } - /** - * A profile filter link collection lists profile filter links between profiles and filters. Each resource in the collection corresponds to a profile filter link. - */ - export interface Schema$ProfileFilterLinks { - /** - * A list of profile filter links. - */ - items?: Schema$ProfileFilterLink[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1,000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this profile filter link collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this profile filter link collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for a linked view (profile). - */ - export interface Schema$ProfileRef { - /** - * Account ID to which this view (profile) belongs. - */ - accountId?: string | null; - /** - * Link for this view (profile). - */ - href?: string | null; - /** - * View (Profile) ID. - */ - id?: string | null; - /** - * Internal ID for the web property to which this view (profile) belongs. - */ - internalWebPropertyId?: string | null; - /** - * Analytics view (profile) reference. - */ - kind?: string | null; - /** - * Name of this view (profile). - */ - name?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY to which this view (profile) belongs. - */ - webPropertyId?: string | null; - } - /** - * A view (profile) collection lists Analytics views (profiles) to which the user has access. Each resource in the collection corresponds to a single Analytics view (profile). - */ - export interface Schema$Profiles { - /** - * A list of views (profiles). - */ - items?: Schema$Profile[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this view (profile) collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this view (profile) collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for an Analytics ProfileSummary. ProfileSummary returns basic information (i.e., summary) for a profile. - */ - export interface Schema$ProfileSummary { - /** - * View (profile) ID. - */ - id?: string | null; - /** - * Resource type for Analytics ProfileSummary. - */ - kind?: string | null; - /** - * View (profile) name. - */ - name?: string | null; - /** - * Indicates whether this view (profile) is starred or not. - */ - starred?: boolean | null; - /** - * View (Profile) type. Supported types: WEB or APP. - */ - type?: string | null; - } - /** - * Real time data for a given view (profile). - */ - export interface Schema$RealtimeData { - /** - * Column headers that list dimension names followed by the metric names. The order of dimensions and metrics is same as specified in the request. - */ - columnHeaders?: Array<{ - columnType?: string; - dataType?: string; - name?: string; - }> | null; - /** - * Unique ID for this data response. - */ - id?: string | null; - /** - * Resource type. - */ - kind?: string | null; - /** - * Information for the view (profile), for which the real time data was requested. - */ - profileInfo?: { - accountId?: string; - internalWebPropertyId?: string; - profileId?: string; - profileName?: string; - tableId?: string; - webPropertyId?: string; - } | null; - /** - * Real time data request query parameters. - */ - query?: { - dimensions?: string; - filters?: string; - ids?: string; - 'max-results'?: number; - metrics?: string[]; - sort?: string[]; - } | null; - /** - * Real time data rows, where each row contains a list of dimension values followed by the metric values. The order of dimensions and metrics is same as specified in the request. - */ - rows?: string[][] | null; - /** - * Link to this page. - */ - selfLink?: string | null; - /** - * The total number of rows for the query, regardless of the number of rows in the response. - */ - totalResults?: number | null; - /** - * Total values for the requested metrics over all the results, not just the results returned in this response. The order of the metric totals is same as the metric order specified in the request. - */ - totalsForAllResults?: {[key: string]: string} | null; - } - /** - * JSON template for an Analytics remarketing audience. - */ - export interface Schema$RemarketingAudience { - /** - * Account ID to which this remarketing audience belongs. - */ - accountId?: string | null; - /** - * The simple audience definition that will cause a user to be added to an audience. - */ - audienceDefinition?: {includeConditions?: Schema$IncludeConditions} | null; - /** - * The type of audience, either SIMPLE or STATE_BASED. - */ - audienceType?: string | null; - /** - * Time this remarketing audience was created. - */ - created?: string | null; - /** - * The description of this remarketing audience. - */ - description?: string | null; - /** - * Remarketing Audience ID. - */ - id?: string | null; - /** - * Internal ID for the web property to which this remarketing audience belongs. - */ - internalWebPropertyId?: string | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * The linked ad accounts associated with this remarketing audience. A remarketing audience can have only one linkedAdAccount currently. - */ - linkedAdAccounts?: Schema$LinkedForeignAccount[]; - /** - * The views (profiles) that this remarketing audience is linked to. - */ - linkedViews?: string[] | null; - /** - * The name of this remarketing audience. - */ - name?: string | null; - /** - * A state based audience definition that will cause a user to be added or removed from an audience. - */ - stateBasedAudienceDefinition?: { - excludeConditions?: {exclusionDuration?: string; segment?: string}; - includeConditions?: Schema$IncludeConditions; - } | null; - /** - * Time this remarketing audience was last modified. - */ - updated?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY to which this remarketing audience belongs. - */ - webPropertyId?: string | null; - } - /** - * A remarketing audience collection lists Analytics remarketing audiences to which the user has access. Each resource in the collection corresponds to a single Analytics remarketing audience. - */ - export interface Schema$RemarketingAudiences { - /** - * A list of remarketing audiences. - */ - items?: Schema$RemarketingAudience[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this remarketing audience collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this view (profile) collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for an Analytics segment. - */ - export interface Schema$Segment { - /** - * Time the segment was created. - */ - created?: string | null; - /** - * Segment definition. - */ - definition?: string | null; - /** - * Segment ID. - */ - id?: string | null; - /** - * Resource type for Analytics segment. - */ - kind?: string | null; - /** - * Segment name. - */ - name?: string | null; - /** - * Segment ID. Can be used with the 'segment' parameter in Core Reporting API. - */ - segmentId?: string | null; - /** - * Link for this segment. - */ - selfLink?: string | null; - /** - * Type for a segment. Possible values are "BUILT_IN" or "CUSTOM". - */ - type?: string | null; - /** - * Time the segment was last modified. - */ - updated?: string | null; - } - /** - * An segment collection lists Analytics segments that the user has access to. Each resource in the collection corresponds to a single Analytics segment. - */ - export interface Schema$Segments { - /** - * A list of segments. - */ - items?: Schema$Segment[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type for segments. - */ - kind?: string | null; - /** - * Link to next page for this segment collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this segment collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for Analytics unsampled report resource. - */ - export interface Schema$UnsampledReport { - /** - * Account ID to which this unsampled report belongs. - */ - accountId?: string | null; - /** - * Download details for a file stored in Google Cloud Storage. - */ - cloudStorageDownloadDetails?: {bucketId?: string; objectId?: string} | null; - /** - * Time this unsampled report was created. - */ - created?: string | null; - /** - * The dimensions for the unsampled report. - */ - dimensions?: string | null; - /** - * The type of download you need to use for the report data file. Possible values include `GOOGLE_DRIVE` and `GOOGLE_CLOUD_STORAGE`. If the value is `GOOGLE_DRIVE`, see the `driveDownloadDetails` field. If the value is `GOOGLE_CLOUD_STORAGE`, see the `cloudStorageDownloadDetails` field. - */ - downloadType?: string | null; - /** - * Download details for a file stored in Google Drive. - */ - driveDownloadDetails?: {documentId?: string} | null; - /** - * The end date for the unsampled report. - */ - 'end-date'?: string | null; - /** - * The filters for the unsampled report. - */ - filters?: string | null; - /** - * Unsampled report ID. - */ - id?: string | null; - /** - * Resource type for an Analytics unsampled report. - */ - kind?: string | null; - /** - * The metrics for the unsampled report. - */ - metrics?: string | null; - /** - * View (Profile) ID to which this unsampled report belongs. - */ - profileId?: string | null; - /** - * The segment for the unsampled report. - */ - segment?: string | null; - /** - * Link for this unsampled report. - */ - selfLink?: string | null; - /** - * The start date for the unsampled report. - */ - 'start-date'?: string | null; - /** - * Status of this unsampled report. Possible values are PENDING, COMPLETED, or FAILED. - */ - status?: string | null; - /** - * Title of the unsampled report. - */ - title?: string | null; - /** - * Time this unsampled report was last modified. - */ - updated?: string | null; - /** - * Web property ID to which this unsampled report belongs. The web property ID is of the form UA-XXXXX-YY. - */ - webPropertyId?: string | null; - } - /** - * An unsampled report collection lists Analytics unsampled reports to which the user has access. Each view (profile) can have a set of unsampled reports. Each resource in the unsampled report collection corresponds to a single Analytics unsampled report. - */ - export interface Schema$UnsampledReports { - /** - * A list of unsampled reports. - */ - items?: Schema$UnsampledReport[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this unsampled report collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this unsampled report collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of resources in the result. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * Metadata returned for an upload operation. - */ - export interface Schema$Upload { - /** - * Account Id to which this upload belongs. - */ - accountId?: string | null; - /** - * Custom data source Id to which this data import belongs. - */ - customDataSourceId?: string | null; - /** - * Data import errors collection. - */ - errors?: string[] | null; - /** - * A unique ID for this upload. - */ - id?: string | null; - /** - * Resource type for Analytics upload. - */ - kind?: string | null; - /** - * Upload status. Possible values: PENDING, COMPLETED, FAILED, DELETING, DELETED. - */ - status?: string | null; - /** - * Time this file is uploaded. - */ - uploadTime?: string | null; - } - /** - * Upload collection lists Analytics uploads to which the user has access. Each custom data source can have a set of uploads. Each resource in the upload collection corresponds to a single Analytics data upload. - */ - export interface Schema$Uploads { - /** - * A list of uploads. - */ - items?: Schema$Upload[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this upload collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this upload collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of resources in the result. - */ - totalResults?: number | null; - } - /** - * JSON template for a user deletion request resource. - */ - export interface Schema$UserDeletionRequest { - /** - * This marks the point in time for which all user data before should be deleted - */ - deletionRequestTime?: string | null; - /** - * Firebase Project Id - */ - firebaseProjectId?: string | null; - /** - * User ID. - */ - id?: {type?: string; userId?: string} | null; - /** - * Value is "analytics#userDeletionRequest". - */ - kind?: string | null; - /** - * Property ID - */ - propertyId?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY. - */ - webPropertyId?: string | null; - } - /** - * JSON template for a user reference. - */ - export interface Schema$UserRef { - /** - * Email ID of this user. - */ - email?: string | null; - /** - * User ID. - */ - id?: string | null; - kind?: string | null; - } - /** - * A web property collection lists Analytics web properties to which the user has access. Each resource in the collection corresponds to a single Analytics web property. - */ - export interface Schema$Webproperties { - /** - * A list of web properties. - */ - items?: Schema$Webproperty[]; - /** - * The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter. - */ - itemsPerPage?: number | null; - /** - * Collection type. - */ - kind?: string | null; - /** - * Link to next page for this web property collection. - */ - nextLink?: string | null; - /** - * Link to previous page for this web property collection. - */ - previousLink?: string | null; - /** - * The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter. - */ - startIndex?: number | null; - /** - * The total number of results for the query, regardless of the number of results in the response. - */ - totalResults?: number | null; - /** - * Email ID of the authenticated user - */ - username?: string | null; - } - /** - * JSON template for an Analytics web property. - */ - export interface Schema$Webproperty { - /** - * Account ID to which this web property belongs. - */ - accountId?: string | null; - /** - * Child link for this web property. Points to the list of views (profiles) for this web property. - */ - childLink?: {href?: string; type?: string} | null; - /** - * Time this web property was created. - */ - created?: string | null; - /** - * Set to true to reset the retention period of the user identifier with each new event from that user (thus setting the expiration date to current time plus retention period). - * Set to false to delete data associated with the user identifier automatically after the rentention period. - * This property cannot be set on insert. - */ - dataRetentionResetOnNewActivity?: boolean | null; - /** - * The length of time for which user and event data is retained. - * This property cannot be set on insert. - */ - dataRetentionTtl?: string | null; - /** - * Default view (profile) ID. - */ - defaultProfileId?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY. - */ - id?: string | null; - /** - * The industry vertical/category selected for this web property. - */ - industryVertical?: string | null; - /** - * Internal ID for this web property. - */ - internalWebPropertyId?: string | null; - /** - * Resource type for Analytics WebProperty. - */ - kind?: string | null; - /** - * Level for this web property. Possible values are STANDARD or PREMIUM. - */ - level?: string | null; - /** - * Name of this web property. - */ - name?: string | null; - /** - * Parent link for this web property. Points to the account to which this web property belongs. - */ - parentLink?: {href?: string; type?: string} | null; - /** - * Permissions the user has for this web property. - */ - permissions?: {effective?: string[]} | null; - /** - * View (Profile) count for this web property. - */ - profileCount?: number | null; - /** - * Link for this web property. - */ - selfLink?: string | null; - /** - * Indicates whether this web property is starred or not. - */ - starred?: boolean | null; - /** - * Time this web property was last modified. - */ - updated?: string | null; - /** - * Website url for this web property. - */ - websiteUrl?: string | null; - } - /** - * JSON template for a web property reference. - */ - export interface Schema$WebPropertyRef { - /** - * Account ID to which this web property belongs. - */ - accountId?: string | null; - /** - * Link for this web property. - */ - href?: string | null; - /** - * Web property ID of the form UA-XXXXX-YY. - */ - id?: string | null; - /** - * Internal ID for this web property. - */ - internalWebPropertyId?: string | null; - /** - * Analytics web property reference. - */ - kind?: string | null; - /** - * Name of this web property. - */ - name?: string | null; - } - /** - * JSON template for an Analytics WebPropertySummary. WebPropertySummary returns basic information (i.e., summary) for a web property. - */ - export interface Schema$WebPropertySummary { - /** - * Web property ID of the form UA-XXXXX-YY. - */ - id?: string | null; - /** - * Internal ID for this web property. - */ - internalWebPropertyId?: string | null; - /** - * Resource type for Analytics WebPropertySummary. - */ - kind?: string | null; - /** - * Level for this web property. Possible values are STANDARD or PREMIUM. - */ - level?: string | null; - /** - * Web property name. - */ - name?: string | null; - /** - * List of profiles under this web property. - */ - profiles?: Schema$ProfileSummary[]; - /** - * Indicates whether this web property is starred or not. - */ - starred?: boolean | null; - /** - * Website url for this web property. - */ - websiteUrl?: string | null; - } - - export class Resource$Data { - context: APIRequestContext; - ga: Resource$Data$Ga; - mcf: Resource$Data$Mcf; - realtime: Resource$Data$Realtime; - constructor(context: APIRequestContext) { - this.context = context; - this.ga = new Resource$Data$Ga(this.context); - this.mcf = new Resource$Data$Mcf(this.context); - this.realtime = new Resource$Data$Realtime(this.context); - } - } - - export class Resource$Data$Ga { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Returns Analytics data for a view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.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 analytics.data.ga.get({ - * // A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'. - * dimensions: '(ga:.+)?', - * // End date for fetching Analytics data. Request can should specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is yesterday. - * 'end-date': '[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)', - * // A comma-separated list of dimension or metric filters to be applied to Analytics data. - * filters: 'ga:.+', - * // Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID. - * ids: 'ga:[0-9]+', - * // The response will include empty rows if this parameter is set to true, the default is true - * 'include-empty-rows': 'placeholder-value', - * // The maximum number of entries to include in this feed. - * 'max-results': 'placeholder-value', - * // A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified. - * metrics: 'ga:.+', - * // The selected format for the response. Default format is JSON. - * output: 'placeholder-value', - * // The desired sampling level. - * samplingLevel: 'placeholder-value', - * // An Analytics segment to be applied to data. - * segment: 'placeholder-value', - * // A comma-separated list of dimensions or metrics that determine the sort order for Analytics data. - * sort: '(-)?ga:.+', - * // Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo. - * 'start-date': '[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "columnHeaders": [], - * // "containsSampledData": false, - * // "dataLastRefreshed": "my_dataLastRefreshed", - * // "dataTable": {}, - * // "id": "my_id", - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "profileInfo": {}, - * // "query": {}, - * // "rows": [], - * // "sampleSize": "my_sampleSize", - * // "sampleSpace": "my_sampleSpace", - * // "selfLink": "my_selfLink", - * // "totalResults": 0, - * // "totalsForAllResults": {} - * // } - * } - * - * 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$Data$Ga$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Data$Ga$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Data$Ga$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Data$Ga$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Data$Ga$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Data$Ga$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Data$Ga$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Data$Ga$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/analytics/v3/data/ga').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['ids', 'start-date', 'end-date', 'metrics'], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Data$Ga$Get extends StandardParameters { - /** - * A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'. - */ - dimensions?: string; - /** - * End date for fetching Analytics data. Request can should specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is yesterday. - */ - 'end-date'?: string; - /** - * A comma-separated list of dimension or metric filters to be applied to Analytics data. - */ - filters?: string; - /** - * Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID. - */ - ids?: string; - /** - * The response will include empty rows if this parameter is set to true, the default is true - */ - 'include-empty-rows'?: boolean; - /** - * The maximum number of entries to include in this feed. - */ - 'max-results'?: number; - /** - * A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. At least one metric must be specified. - */ - metrics?: string; - /** - * The selected format for the response. Default format is JSON. - */ - output?: string; - /** - * The desired sampling level. - */ - samplingLevel?: string; - /** - * An Analytics segment to be applied to data. - */ - segment?: string; - /** - * A comma-separated list of dimensions or metrics that determine the sort order for Analytics data. - */ - sort?: string; - /** - * Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo. - */ - 'start-date'?: string; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - - export class Resource$Data$Mcf { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Returns Analytics Multi-Channel Funnels data for a view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.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 analytics.data.mcf.get({ - * // A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'. - * dimensions: '(mcf:.+)?', - * // End date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo. - * 'end-date': '[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)', - * // A comma-separated list of dimension or metric filters to be applied to the Analytics data. - * filters: 'mcf:.+', - * // Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID. - * ids: 'ga:[0-9]+', - * // The maximum number of entries to include in this feed. - * 'max-results': 'placeholder-value', - * // A comma-separated list of Multi-Channel Funnels metrics. E.g., 'mcf:totalConversions,mcf:totalConversionValue'. At least one metric must be specified. - * metrics: 'mcf:.+', - * // The desired sampling level. - * samplingLevel: 'placeholder-value', - * // A comma-separated list of dimensions or metrics that determine the sort order for the Analytics data. - * sort: '(-)?mcf:.+', - * // Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo. - * 'start-date': '[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo)', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "columnHeaders": [], - * // "containsSampledData": false, - * // "id": "my_id", - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "profileInfo": {}, - * // "query": {}, - * // "rows": [], - * // "sampleSize": "my_sampleSize", - * // "sampleSpace": "my_sampleSpace", - * // "selfLink": "my_selfLink", - * // "totalResults": 0, - * // "totalsForAllResults": {} - * // } - * } - * - * 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$Data$Mcf$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Data$Mcf$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Data$Mcf$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Data$Mcf$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Data$Mcf$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Data$Mcf$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Data$Mcf$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Data$Mcf$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/analytics/v3/data/mcf').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['ids', 'start-date', 'end-date', 'metrics'], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Data$Mcf$Get extends StandardParameters { - /** - * A comma-separated list of Multi-Channel Funnels dimensions. E.g., 'mcf:source,mcf:medium'. - */ - dimensions?: string; - /** - * End date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo. - */ - 'end-date'?: string; - /** - * A comma-separated list of dimension or metric filters to be applied to the Analytics data. - */ - filters?: string; - /** - * Unique table ID for retrieving Analytics data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID. - */ - ids?: string; - /** - * The maximum number of entries to include in this feed. - */ - 'max-results'?: number; - /** - * A comma-separated list of Multi-Channel Funnels metrics. E.g., 'mcf:totalConversions,mcf:totalConversionValue'. At least one metric must be specified. - */ - metrics?: string; - /** - * The desired sampling level. - */ - samplingLevel?: string; - /** - * A comma-separated list of dimensions or metrics that determine the sort order for the Analytics data. - */ - sort?: string; - /** - * Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or 7daysAgo). The default value is 7daysAgo. - */ - 'start-date'?: string; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - - export class Resource$Data$Realtime { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Returns real time data for a view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.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 analytics.data.realtime.get({ - * // A comma-separated list of real time dimensions. E.g., 'rt:medium,rt:city'. - * dimensions: '(ga:.+)|(rt:.+)', - * // A comma-separated list of dimension or metric filters to be applied to real time data. - * filters: '(ga:.+)|(rt:.+)', - * // Unique table ID for retrieving real time data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID. - * ids: 'ga:[0-9]+', - * // The maximum number of entries to include in this feed. - * 'max-results': 'placeholder-value', - * // A comma-separated list of real time metrics. E.g., 'rt:activeUsers'. At least one metric must be specified. - * metrics: '(ga:.+)|(rt:.+)', - * // A comma-separated list of dimensions or metrics that determine the sort order for real time data. - * sort: '(-)?((ga:.+)|(rt:.+))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "columnHeaders": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileInfo": {}, - * // "query": {}, - * // "rows": [], - * // "selfLink": "my_selfLink", - * // "totalResults": 0, - * // "totalsForAllResults": {} - * // } - * } - * - * 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$Data$Realtime$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Data$Realtime$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Data$Realtime$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Data$Realtime$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Data$Realtime$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Data$Realtime$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Data$Realtime$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Data$Realtime$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/analytics/v3/data/realtime').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['ids', 'metrics'], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Data$Realtime$Get extends StandardParameters { - /** - * A comma-separated list of real time dimensions. E.g., 'rt:medium,rt:city'. - */ - dimensions?: string; - /** - * A comma-separated list of dimension or metric filters to be applied to real time data. - */ - filters?: string; - /** - * Unique table ID for retrieving real time data. Table ID is of the form ga:XXXX, where XXXX is the Analytics view (profile) ID. - */ - ids?: string; - /** - * The maximum number of entries to include in this feed. - */ - 'max-results'?: number; - /** - * A comma-separated list of real time metrics. E.g., 'rt:activeUsers'. At least one metric must be specified. - */ - metrics?: string; - /** - * A comma-separated list of dimensions or metrics that determine the sort order for real time data. - */ - sort?: string; - } - - export class Resource$Management { - context: APIRequestContext; - accounts: Resource$Management$Accounts; - accountSummaries: Resource$Management$Accountsummaries; - accountUserLinks: Resource$Management$Accountuserlinks; - clientId: Resource$Management$Clientid; - customDataSources: Resource$Management$Customdatasources; - customDimensions: Resource$Management$Customdimensions; - customMetrics: Resource$Management$Custommetrics; - experiments: Resource$Management$Experiments; - filters: Resource$Management$Filters; - goals: Resource$Management$Goals; - profileFilterLinks: Resource$Management$Profilefilterlinks; - profiles: Resource$Management$Profiles; - profileUserLinks: Resource$Management$Profileuserlinks; - remarketingAudience: Resource$Management$Remarketingaudience; - segments: Resource$Management$Segments; - unsampledReports: Resource$Management$Unsampledreports; - uploads: Resource$Management$Uploads; - webproperties: Resource$Management$Webproperties; - webPropertyAdWordsLinks: Resource$Management$Webpropertyadwordslinks; - webpropertyUserLinks: Resource$Management$Webpropertyuserlinks; - constructor(context: APIRequestContext) { - this.context = context; - this.accounts = new Resource$Management$Accounts(this.context); - this.accountSummaries = new Resource$Management$Accountsummaries( - this.context - ); - this.accountUserLinks = new Resource$Management$Accountuserlinks( - this.context - ); - this.clientId = new Resource$Management$Clientid(this.context); - this.customDataSources = new Resource$Management$Customdatasources( - this.context - ); - this.customDimensions = new Resource$Management$Customdimensions( - this.context - ); - this.customMetrics = new Resource$Management$Custommetrics(this.context); - this.experiments = new Resource$Management$Experiments(this.context); - this.filters = new Resource$Management$Filters(this.context); - this.goals = new Resource$Management$Goals(this.context); - this.profileFilterLinks = new Resource$Management$Profilefilterlinks( - this.context - ); - this.profiles = new Resource$Management$Profiles(this.context); - this.profileUserLinks = new Resource$Management$Profileuserlinks( - this.context - ); - this.remarketingAudience = new Resource$Management$Remarketingaudience( - this.context - ); - this.segments = new Resource$Management$Segments(this.context); - this.unsampledReports = new Resource$Management$Unsampledreports( - this.context - ); - this.uploads = new Resource$Management$Uploads(this.context); - this.webproperties = new Resource$Management$Webproperties(this.context); - this.webPropertyAdWordsLinks = - new Resource$Management$Webpropertyadwordslinks(this.context); - this.webpropertyUserLinks = new Resource$Management$Webpropertyuserlinks( - this.context - ); - } - } - - export class Resource$Management$Accounts { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Lists all accounts to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.accounts.list({ - * // The maximum number of accounts to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Accounts$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Accounts$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Accounts$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Accounts$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Accounts$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Accounts$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Accounts$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Accounts$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/analytics/v3/management/accounts').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Accounts$List extends StandardParameters { - /** - * The maximum number of accounts to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - - export class Resource$Management$Accountsummaries { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Lists account summaries (lightweight tree comprised of accounts/properties/profiles) to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.accountSummaries.list({ - * // The maximum number of account summaries to include in this response, where the largest acceptable value is 1000. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Accountsummaries$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Accountsummaries$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Accountsummaries$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Accountsummaries$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Accountsummaries$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Accountsummaries$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Accountsummaries$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Accountsummaries$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/management/accountSummaries' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Accountsummaries$List extends StandardParameters { - /** - * The maximum number of account summaries to include in this response, where the largest acceptable value is 1000. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - - export class Resource$Management$Accountuserlinks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Removes a user from the given account. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.accountUserLinks.delete({ - * // Account ID to delete the user link for. - * accountId: 'placeholder-value', - * // Link ID to delete the user link for. - * linkId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Accountuserlinks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Accountuserlinks$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Accountuserlinks$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Accountuserlinks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Accountuserlinks$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Accountuserlinks$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Accountuserlinks$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Accountuserlinks$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/entityUserLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'linkId'], - pathParams: ['accountId', 'linkId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Adds a new user to the given account. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.accountUserLinks.insert({ - * // Account ID to create the user link for. - * accountId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * } - * - * 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$Management$Accountuserlinks$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Accountuserlinks$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Accountuserlinks$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Accountuserlinks$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Accountuserlinks$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Accountuserlinks$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Accountuserlinks$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Accountuserlinks$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/entityUserLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId'], - pathParams: ['accountId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists account-user links for a given account. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users', - * 'https://www.googleapis.com/auth/analytics.manage.users.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 analytics.management.accountUserLinks.list({ - * // Account ID to retrieve the user links for. - * accountId: 'placeholder-value', - * // The maximum number of account-user links to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first account-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 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. - */ - list( - params: Params$Resource$Management$Accountuserlinks$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Accountuserlinks$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Accountuserlinks$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Accountuserlinks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Accountuserlinks$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Accountuserlinks$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Accountuserlinks$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Accountuserlinks$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/entityUserLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId'], - pathParams: ['accountId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates permissions for an existing user on the given account. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.accountUserLinks.update({ - * // Account ID to update the account-user link for. - * accountId: 'placeholder-value', - * // Link ID to update the account-user link for. - * linkId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Accountuserlinks$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Accountuserlinks$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Accountuserlinks$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Accountuserlinks$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Accountuserlinks$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Accountuserlinks$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Accountuserlinks$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Accountuserlinks$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/entityUserLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'linkId'], - pathParams: ['accountId', 'linkId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Accountuserlinks$Delete extends StandardParameters { - /** - * Account ID to delete the user link for. - */ - accountId?: string; - /** - * Link ID to delete the user link for. - */ - linkId?: string; - } - export interface Params$Resource$Management$Accountuserlinks$Insert extends StandardParameters { - /** - * Account ID to create the user link for. - */ - accountId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityUserLink; - } - export interface Params$Resource$Management$Accountuserlinks$List extends StandardParameters { - /** - * Account ID to retrieve the user links for. - */ - accountId?: string; - /** - * The maximum number of account-user links to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first account-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - export interface Params$Resource$Management$Accountuserlinks$Update extends StandardParameters { - /** - * Account ID to update the account-user link for. - */ - accountId?: string; - /** - * Link ID to update the account-user link for. - */ - linkId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityUserLink; - } - - export class Resource$Management$Clientid { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Hashes the given Client ID. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.clientId.hashClientId({ - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "clientId": "my_clientId", - * // "kind": "my_kind", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientId": "my_clientId", - * // "hashedClientId": "my_hashedClientId", - * // "kind": "my_kind", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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. - */ - hashClientId( - params: Params$Resource$Management$Clientid$Hashclientid, - options: StreamMethodOptions - ): Promise>; - hashClientId( - params?: Params$Resource$Management$Clientid$Hashclientid, - options?: MethodOptions - ): Promise>; - hashClientId( - params: Params$Resource$Management$Clientid$Hashclientid, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - hashClientId( - params: Params$Resource$Management$Clientid$Hashclientid, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - hashClientId( - params: Params$Resource$Management$Clientid$Hashclientid, - callback: BodyResponseCallback - ): void; - hashClientId( - callback: BodyResponseCallback - ): void; - hashClientId( - paramsOrCallback?: - | Params$Resource$Management$Clientid$Hashclientid - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Clientid$Hashclientid; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Clientid$Hashclientid; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/management/clientId:hashClientId' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Clientid$Hashclientid extends StandardParameters { - /** - * Request body metadata - */ - requestBody?: Schema$HashClientIdRequest; - } - - export class Resource$Management$Customdatasources { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * List custom data sources to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.customDataSources.list({ - * // Account Id for the custom data sources to retrieve. - * accountId: '\d+', - * // The maximum number of custom data sources to include in this response. - * 'max-results': 'placeholder-value', - * // A 1-based index of the first custom data source to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property Id for the custom data sources to retrieve. - * webPropertyId: 'UA-(\d+)-(\d+)', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Customdatasources$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Customdatasources$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Customdatasources$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Customdatasources$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Customdatasources$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Customdatasources$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Customdatasources$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Customdatasources$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Customdatasources$List extends StandardParameters { - /** - * Account Id for the custom data sources to retrieve. - */ - accountId?: string; - /** - * The maximum number of custom data sources to include in this response. - */ - 'max-results'?: number; - /** - * A 1-based index of the first custom data source to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property Id for the custom data sources to retrieve. - */ - webPropertyId?: string; - } - - export class Resource$Management$Customdimensions { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Get a custom dimension to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.customDimensions.get({ - * // Account ID for the custom dimension to retrieve. - * accountId: 'placeholder-value', - * // The ID of the custom dimension to retrieve. - * customDimensionId: 'placeholder-value', - * // Web property ID for the custom dimension to retrieve. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Customdimensions$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Customdimensions$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Customdimensions$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Customdimensions$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Customdimensions$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Customdimensions$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Customdimensions$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Customdimensions$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customDimensionId'], - pathParams: ['accountId', 'customDimensionId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new custom dimension. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.customDimensions.insert({ - * // Account ID for the custom dimension to create. - * accountId: 'placeholder-value', - * // Web property ID for the custom dimension to create. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Customdimensions$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Customdimensions$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Customdimensions$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Customdimensions$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Customdimensions$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Customdimensions$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Customdimensions$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Customdimensions$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists custom dimensions to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.customDimensions.list({ - * // Account ID for the custom dimensions to retrieve. - * accountId: 'placeholder-value', - * // The maximum number of custom dimensions to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID for the custom dimensions to retrieve. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Customdimensions$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Customdimensions$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Customdimensions$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Customdimensions$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Customdimensions$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Customdimensions$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Customdimensions$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Customdimensions$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing custom dimension. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.customDimensions.patch({ - * // Account ID for the custom dimension to update. - * accountId: 'placeholder-value', - * // Custom dimension ID for the custom dimension to update. - * customDimensionId: 'placeholder-value', - * // Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set. - * ignoreCustomDataSourceLinks: 'placeholder-value', - * // Web property ID for the custom dimension to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Customdimensions$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Customdimensions$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Customdimensions$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Customdimensions$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Customdimensions$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Customdimensions$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Customdimensions$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Customdimensions$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customDimensionId'], - pathParams: ['accountId', 'customDimensionId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing custom dimension. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.customDimensions.update({ - * // Account ID for the custom dimension to update. - * accountId: 'placeholder-value', - * // Custom dimension ID for the custom dimension to update. - * customDimensionId: 'placeholder-value', - * // Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set. - * ignoreCustomDataSourceLinks: 'placeholder-value', - * // Web property ID for the custom dimension to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Customdimensions$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Customdimensions$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Customdimensions$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Customdimensions$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Customdimensions$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Customdimensions$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Customdimensions$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Customdimensions$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customDimensionId'], - pathParams: ['accountId', 'customDimensionId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Customdimensions$Get extends StandardParameters { - /** - * Account ID for the custom dimension to retrieve. - */ - accountId?: string; - /** - * The ID of the custom dimension to retrieve. - */ - customDimensionId?: string; - /** - * Web property ID for the custom dimension to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Customdimensions$Insert extends StandardParameters { - /** - * Account ID for the custom dimension to create. - */ - accountId?: string; - /** - * Web property ID for the custom dimension to create. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomDimension; - } - export interface Params$Resource$Management$Customdimensions$List extends StandardParameters { - /** - * Account ID for the custom dimensions to retrieve. - */ - accountId?: string; - /** - * The maximum number of custom dimensions to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID for the custom dimensions to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Customdimensions$Patch extends StandardParameters { - /** - * Account ID for the custom dimension to update. - */ - accountId?: string; - /** - * Custom dimension ID for the custom dimension to update. - */ - customDimensionId?: string; - /** - * Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set. - */ - ignoreCustomDataSourceLinks?: boolean; - /** - * Web property ID for the custom dimension to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomDimension; - } - export interface Params$Resource$Management$Customdimensions$Update extends StandardParameters { - /** - * Account ID for the custom dimension to update. - */ - accountId?: string; - /** - * Custom dimension ID for the custom dimension to update. - */ - customDimensionId?: string; - /** - * Force the update and ignore any warnings related to the custom dimension being linked to a custom data source / data set. - */ - ignoreCustomDataSourceLinks?: boolean; - /** - * Web property ID for the custom dimension to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomDimension; - } - - export class Resource$Management$Custommetrics { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Get a custom metric to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.customMetrics.get({ - * // Account ID for the custom metric to retrieve. - * accountId: 'placeholder-value', - * // The ID of the custom metric to retrieve. - * customMetricId: 'placeholder-value', - * // Web property ID for the custom metric to retrieve. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Custommetrics$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Custommetrics$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Custommetrics$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Custommetrics$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Custommetrics$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Custommetrics$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Custommetrics$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Custommetrics$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customMetricId'], - pathParams: ['accountId', 'customMetricId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new custom metric. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.customMetrics.insert({ - * // Account ID for the custom metric to create. - * accountId: 'placeholder-value', - * // Web property ID for the custom dimension to create. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Custommetrics$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Custommetrics$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Custommetrics$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Custommetrics$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Custommetrics$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Custommetrics$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Custommetrics$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Custommetrics$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists custom metrics to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.customMetrics.list({ - * // Account ID for the custom metrics to retrieve. - * accountId: 'placeholder-value', - * // The maximum number of custom metrics to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID for the custom metrics to retrieve. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Custommetrics$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Custommetrics$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Custommetrics$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Custommetrics$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Custommetrics$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Custommetrics$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Custommetrics$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Custommetrics$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing custom metric. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.customMetrics.patch({ - * // Account ID for the custom metric to update. - * accountId: 'placeholder-value', - * // Custom metric ID for the custom metric to update. - * customMetricId: 'placeholder-value', - * // Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set. - * ignoreCustomDataSourceLinks: 'placeholder-value', - * // Web property ID for the custom metric to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Custommetrics$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Custommetrics$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Custommetrics$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Custommetrics$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Custommetrics$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Custommetrics$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Custommetrics$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Custommetrics$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customMetricId'], - pathParams: ['accountId', 'customMetricId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing custom metric. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.customMetrics.update({ - * // Account ID for the custom metric to update. - * accountId: 'placeholder-value', - * // Custom metric ID for the custom metric to update. - * customMetricId: 'placeholder-value', - * // Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set. - * ignoreCustomDataSourceLinks: 'placeholder-value', - * // Web property ID for the custom metric to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "id": "my_id", - * // "index": 0, - * // "kind": "my_kind", - * // "max_value": "my_max_value", - * // "min_value": "my_min_value", - * // "name": "my_name", - * // "parentLink": {}, - * // "scope": "my_scope", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Custommetrics$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Custommetrics$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Custommetrics$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Custommetrics$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Custommetrics$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Custommetrics$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Custommetrics$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Custommetrics$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customMetricId'], - pathParams: ['accountId', 'customMetricId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Custommetrics$Get extends StandardParameters { - /** - * Account ID for the custom metric to retrieve. - */ - accountId?: string; - /** - * The ID of the custom metric to retrieve. - */ - customMetricId?: string; - /** - * Web property ID for the custom metric to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Custommetrics$Insert extends StandardParameters { - /** - * Account ID for the custom metric to create. - */ - accountId?: string; - /** - * Web property ID for the custom dimension to create. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomMetric; - } - export interface Params$Resource$Management$Custommetrics$List extends StandardParameters { - /** - * Account ID for the custom metrics to retrieve. - */ - accountId?: string; - /** - * The maximum number of custom metrics to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID for the custom metrics to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Custommetrics$Patch extends StandardParameters { - /** - * Account ID for the custom metric to update. - */ - accountId?: string; - /** - * Custom metric ID for the custom metric to update. - */ - customMetricId?: string; - /** - * Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set. - */ - ignoreCustomDataSourceLinks?: boolean; - /** - * Web property ID for the custom metric to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomMetric; - } - export interface Params$Resource$Management$Custommetrics$Update extends StandardParameters { - /** - * Account ID for the custom metric to update. - */ - accountId?: string; - /** - * Custom metric ID for the custom metric to update. - */ - customMetricId?: string; - /** - * Force the update and ignore any warnings related to the custom metric being linked to a custom data source / data set. - */ - ignoreCustomDataSourceLinks?: boolean; - /** - * Web property ID for the custom metric to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$CustomMetric; - } - - export class Resource$Management$Experiments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Delete an experiment. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.experiments.delete({ - * // Account ID to which the experiment belongs - * accountId: 'placeholder-value', - * // ID of the experiment to delete - * experimentId: 'placeholder-value', - * // View (Profile) ID to which the experiment belongs - * profileId: 'placeholder-value', - * // Web property ID to which the experiment belongs - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Experiments$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Experiments$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Experiments$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Experiments$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Experiments$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Experiments$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Experiments$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Experiments$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'profileId', - 'experimentId', - ], - pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns an experiment to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.experiments.get({ - * // Account ID to retrieve the experiment for. - * accountId: 'placeholder-value', - * // Experiment ID to retrieve the experiment for. - * experimentId: 'placeholder-value', - * // View (Profile) ID to retrieve the experiment for. - * profileId: 'placeholder-value', - * // Web property ID to retrieve the experiment for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * } - * - * 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$Management$Experiments$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Experiments$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Experiments$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Experiments$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Experiments$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Experiments$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Experiments$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Experiments$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'profileId', - 'experimentId', - ], - pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new experiment. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.experiments.insert({ - * // Account ID to create the experiment for. - * accountId: 'placeholder-value', - * // View (Profile) ID to create the experiment for. - * profileId: 'placeholder-value', - * // Web property ID to create the experiment for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * } - * - * 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$Management$Experiments$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Experiments$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Experiments$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Experiments$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Experiments$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Experiments$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Experiments$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Experiments$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists experiments to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.experiments.list({ - * // Account ID to retrieve experiments for. - * accountId: '\d+', - * // The maximum number of experiments to include in this response. - * 'max-results': 'placeholder-value', - * // View (Profile) ID to retrieve experiments for. - * profileId: '\d+', - * // An index of the first experiment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID to retrieve experiments for. - * webPropertyId: 'UA-(\d+)-(\d+)', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Experiments$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Experiments$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Experiments$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Experiments$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Experiments$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Experiments$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Experiments$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Experiments$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Update an existing experiment. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.experiments.patch({ - * // Account ID of the experiment to update. - * accountId: 'placeholder-value', - * // Experiment ID of the experiment to update. - * experimentId: 'placeholder-value', - * // View (Profile) ID of the experiment to update. - * profileId: 'placeholder-value', - * // Web property ID of the experiment to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * } - * - * 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$Management$Experiments$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Experiments$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Experiments$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Experiments$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Experiments$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Experiments$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Experiments$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Experiments$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'profileId', - 'experimentId', - ], - pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Update an existing experiment. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.experiments.update({ - * // Account ID of the experiment to update. - * accountId: 'placeholder-value', - * // Experiment ID of the experiment to update. - * experimentId: 'placeholder-value', - * // View (Profile) ID of the experiment to update. - * profileId: 'placeholder-value', - * // Web property ID of the experiment to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "created": "my_created", - * // "description": "my_description", - * // "editableInGaUi": false, - * // "endTime": "my_endTime", - * // "equalWeighting": false, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "minimumExperimentLengthInDays": 0, - * // "name": "my_name", - * // "objectiveMetric": "my_objectiveMetric", - * // "optimizationType": "my_optimizationType", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "reasonExperimentEnded": "my_reasonExperimentEnded", - * // "rewriteVariationUrlsAsOriginal": false, - * // "selfLink": "my_selfLink", - * // "servingFramework": "my_servingFramework", - * // "snippet": "my_snippet", - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "trafficCoverage": {}, - * // "updated": "my_updated", - * // "variations": [], - * // "webPropertyId": "my_webPropertyId", - * // "winnerConfidenceLevel": {}, - * // "winnerFound": false - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Experiments$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Experiments$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Experiments$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Experiments$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Experiments$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Experiments$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Experiments$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Experiments$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'profileId', - 'experimentId', - ], - pathParams: ['accountId', 'experimentId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Experiments$Delete extends StandardParameters { - /** - * Account ID to which the experiment belongs - */ - accountId?: string; - /** - * ID of the experiment to delete - */ - experimentId?: string; - /** - * View (Profile) ID to which the experiment belongs - */ - profileId?: string; - /** - * Web property ID to which the experiment belongs - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Experiments$Get extends StandardParameters { - /** - * Account ID to retrieve the experiment for. - */ - accountId?: string; - /** - * Experiment ID to retrieve the experiment for. - */ - experimentId?: string; - /** - * View (Profile) ID to retrieve the experiment for. - */ - profileId?: string; - /** - * Web property ID to retrieve the experiment for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Experiments$Insert extends StandardParameters { - /** - * Account ID to create the experiment for. - */ - accountId?: string; - /** - * View (Profile) ID to create the experiment for. - */ - profileId?: string; - /** - * Web property ID to create the experiment for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Experiment; - } - export interface Params$Resource$Management$Experiments$List extends StandardParameters { - /** - * Account ID to retrieve experiments for. - */ - accountId?: string; - /** - * The maximum number of experiments to include in this response. - */ - 'max-results'?: number; - /** - * View (Profile) ID to retrieve experiments for. - */ - profileId?: string; - /** - * An index of the first experiment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID to retrieve experiments for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Experiments$Patch extends StandardParameters { - /** - * Account ID of the experiment to update. - */ - accountId?: string; - /** - * Experiment ID of the experiment to update. - */ - experimentId?: string; - /** - * View (Profile) ID of the experiment to update. - */ - profileId?: string; - /** - * Web property ID of the experiment to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Experiment; - } - export interface Params$Resource$Management$Experiments$Update extends StandardParameters { - /** - * Account ID of the experiment to update. - */ - accountId?: string; - /** - * Experiment ID of the experiment to update. - */ - experimentId?: string; - /** - * View (Profile) ID of the experiment to update. - */ - profileId?: string; - /** - * Web property ID of the experiment to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Experiment; - } - - export class Resource$Management$Filters { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Delete a filter. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.filters.delete({ - * // Account ID to delete the filter for. - * accountId: 'placeholder-value', - * // ID of the filter to be deleted. - * filterId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * } - * - * 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$Management$Filters$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Filters$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Filters$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Filters$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Filters$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Filters$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Filters$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Filters$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/filters/{filterId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'filterId'], - pathParams: ['accountId', 'filterId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns filters to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.filters.get({ - * // Account ID to retrieve filters for. - * accountId: 'placeholder-value', - * // Filter ID to retrieve filters for. - * filterId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * } - * - * 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$Management$Filters$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Filters$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Filters$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Filters$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Filters$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Filters$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Filters$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Filters$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/filters/{filterId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'filterId'], - pathParams: ['accountId', 'filterId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new filter. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.filters.insert({ - * // Account ID to create filter for. - * accountId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * } - * - * 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$Management$Filters$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Filters$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Filters$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Filters$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Filters$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Filters$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Filters$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Filters$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/management/accounts/{accountId}/filters' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId'], - pathParams: ['accountId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists all filters for an account - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.filters.list({ - * // Account ID to retrieve filters for. - * accountId: '\d+', - * // The maximum number of filters to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Filters$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Filters$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Filters$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Filters$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Filters$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Filters$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Filters$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Filters$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/management/accounts/{accountId}/filters' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId'], - pathParams: ['accountId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing filter. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.filters.patch({ - * // Account ID to which the filter belongs. - * accountId: 'placeholder-value', - * // ID of the filter to be updated. - * filterId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * } - * - * 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$Management$Filters$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Filters$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Filters$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Filters$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Filters$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Filters$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Filters$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Filters$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/filters/{filterId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'filterId'], - pathParams: ['accountId', 'filterId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing filter. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.filters.update({ - * // Account ID to which the filter belongs. - * accountId: 'placeholder-value', - * // ID of the filter to be updated. - * filterId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "advancedDetails": {}, - * // "created": "my_created", - * // "excludeDetails": {}, - * // "id": "my_id", - * // "includeDetails": {}, - * // "kind": "my_kind", - * // "lowercaseDetails": {}, - * // "name": "my_name", - * // "parentLink": {}, - * // "searchAndReplaceDetails": {}, - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "uppercaseDetails": {} - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Filters$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Filters$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Filters$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Filters$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Filters$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Filters$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Filters$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Filters$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/filters/{filterId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'filterId'], - pathParams: ['accountId', 'filterId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Filters$Delete extends StandardParameters { - /** - * Account ID to delete the filter for. - */ - accountId?: string; - /** - * ID of the filter to be deleted. - */ - filterId?: string; - } - export interface Params$Resource$Management$Filters$Get extends StandardParameters { - /** - * Account ID to retrieve filters for. - */ - accountId?: string; - /** - * Filter ID to retrieve filters for. - */ - filterId?: string; - } - export interface Params$Resource$Management$Filters$Insert extends StandardParameters { - /** - * Account ID to create filter for. - */ - accountId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Filter; - } - export interface Params$Resource$Management$Filters$List extends StandardParameters { - /** - * Account ID to retrieve filters for. - */ - accountId?: string; - /** - * The maximum number of filters to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - export interface Params$Resource$Management$Filters$Patch extends StandardParameters { - /** - * Account ID to which the filter belongs. - */ - accountId?: string; - /** - * ID of the filter to be updated. - */ - filterId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Filter; - } - export interface Params$Resource$Management$Filters$Update extends StandardParameters { - /** - * Account ID to which the filter belongs. - */ - accountId?: string; - /** - * ID of the filter to be updated. - */ - filterId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Filter; - } - - export class Resource$Management$Goals { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Gets a goal to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.goals.get({ - * // Account ID to retrieve the goal for. - * accountId: 'placeholder-value', - * // Goal ID to retrieve the goal for. - * goalId: 'placeholder-value', - * // View (Profile) ID to retrieve the goal for. - * profileId: 'placeholder-value', - * // Web property ID to retrieve the goal for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Goals$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Goals$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Goals$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Goals$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Goals$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Goals$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Goals$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Goals$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'goalId'], - pathParams: ['accountId', 'goalId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new goal. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.goals.insert({ - * // Account ID to create the goal for. - * accountId: 'placeholder-value', - * // View (Profile) ID to create the goal for. - * profileId: 'placeholder-value', - * // Web property ID to create the goal for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Goals$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Goals$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Goals$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Goals$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Goals$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Goals$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Goals$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Goals$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists goals to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.goals.list({ - * // Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to. - * accountId: 'placeholder-value', - * // The maximum number of goals to include in this response. - * 'max-results': 'placeholder-value', - * // View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to. - * profileId: 'placeholder-value', - * // An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Goals$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Goals$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Goals$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Goals$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Goals$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Goals$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Goals$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Goals$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing goal. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.goals.patch({ - * // Account ID to update the goal. - * accountId: 'placeholder-value', - * // Index of the goal to be updated. - * goalId: 'placeholder-value', - * // View (Profile) ID to update the goal. - * profileId: 'placeholder-value', - * // Web property ID to update the goal. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Goals$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Goals$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Goals$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Goals$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Goals$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Goals$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Goals$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Goals$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'goalId'], - pathParams: ['accountId', 'goalId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing goal. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.goals.update({ - * // Account ID to update the goal. - * accountId: 'placeholder-value', - * // Index of the goal to be updated. - * goalId: 'placeholder-value', - * // View (Profile) ID to update the goal. - * profileId: 'placeholder-value', - * // Web property ID to update the goal. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "active": false, - * // "created": "my_created", - * // "eventDetails": {}, - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "profileId": "my_profileId", - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updated": "my_updated", - * // "urlDestinationDetails": {}, - * // "value": {}, - * // "visitNumPagesDetails": {}, - * // "visitTimeOnSiteDetails": {}, - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Goals$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Goals$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Goals$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Goals$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Goals$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Goals$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Goals$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Goals$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'goalId'], - pathParams: ['accountId', 'goalId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Goals$Get extends StandardParameters { - /** - * Account ID to retrieve the goal for. - */ - accountId?: string; - /** - * Goal ID to retrieve the goal for. - */ - goalId?: string; - /** - * View (Profile) ID to retrieve the goal for. - */ - profileId?: string; - /** - * Web property ID to retrieve the goal for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Goals$Insert extends StandardParameters { - /** - * Account ID to create the goal for. - */ - accountId?: string; - /** - * View (Profile) ID to create the goal for. - */ - profileId?: string; - /** - * Web property ID to create the goal for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Goal; - } - export interface Params$Resource$Management$Goals$List extends StandardParameters { - /** - * Account ID to retrieve goals for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to. - */ - accountId?: string; - /** - * The maximum number of goals to include in this response. - */ - 'max-results'?: number; - /** - * View (Profile) ID to retrieve goals for. Can either be a specific view (profile) ID or '~all', which refers to all the views (profiles) that user has access to. - */ - profileId?: string; - /** - * An index of the first goal to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID to retrieve goals for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Goals$Patch extends StandardParameters { - /** - * Account ID to update the goal. - */ - accountId?: string; - /** - * Index of the goal to be updated. - */ - goalId?: string; - /** - * View (Profile) ID to update the goal. - */ - profileId?: string; - /** - * Web property ID to update the goal. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Goal; - } - export interface Params$Resource$Management$Goals$Update extends StandardParameters { - /** - * Account ID to update the goal. - */ - accountId?: string; - /** - * Index of the goal to be updated. - */ - goalId?: string; - /** - * View (Profile) ID to update the goal. - */ - profileId?: string; - /** - * Web property ID to update the goal. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Goal; - } - - export class Resource$Management$Profilefilterlinks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Delete a profile filter link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profileFilterLinks.delete({ - * // Account ID to which the profile filter link belongs. - * accountId: '\d+', - * // ID of the profile filter link to delete. - * linkId: '\d+:\d+', - * // Profile ID to which the filter link belongs. - * profileId: '\d+', - * // Web property Id to which the profile filter link belongs. - * webPropertyId: 'UA-(\d+)-(\d+)', - * }); - * console.log(res.data); - * } - * - * 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$Management$Profilefilterlinks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Profilefilterlinks$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Profilefilterlinks$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Profilefilterlinks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Profilefilterlinks$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Profilefilterlinks$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profilefilterlinks$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profilefilterlinks$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'], - pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns a single profile filter link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.profileFilterLinks.get({ - * // Account ID to retrieve profile filter link for. - * accountId: '\d+', - * // ID of the profile filter link. - * linkId: '\d+:\d+', - * // Profile ID to retrieve filter link for. - * profileId: '\d+', - * // Web property Id to retrieve profile filter link for. - * webPropertyId: 'UA-(\d+)-(\d+)', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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$Management$Profilefilterlinks$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Profilefilterlinks$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Profilefilterlinks$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Profilefilterlinks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Profilefilterlinks$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Profilefilterlinks$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profilefilterlinks$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profilefilterlinks$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'], - pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new profile filter link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profileFilterLinks.insert({ - * // Account ID to create profile filter link for. - * accountId: '\d+', - * // Profile ID to create filter link for. - * profileId: '\d+', - * // Web property Id to create profile filter link for. - * webPropertyId: 'UA-(\d+)-(\d+)', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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$Management$Profilefilterlinks$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Profilefilterlinks$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Profilefilterlinks$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Profilefilterlinks$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Profilefilterlinks$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Profilefilterlinks$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profilefilterlinks$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profilefilterlinks$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists all profile filter links for a profile. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.profileFilterLinks.list({ - * // Account ID to retrieve profile filter links for. - * accountId: '\d+', - * // The maximum number of profile filter links to include in this response. - * 'max-results': 'placeholder-value', - * // Profile ID to retrieve filter links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to. - * profileId: 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property Id for profile filter links for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Profilefilterlinks$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Profilefilterlinks$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Profilefilterlinks$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Profilefilterlinks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Profilefilterlinks$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Profilefilterlinks$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profilefilterlinks$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profilefilterlinks$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Update an existing profile filter link. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profileFilterLinks.patch({ - * // Account ID to which profile filter link belongs. - * accountId: '\d+', - * // ID of the profile filter link to be updated. - * linkId: '\d+:\d+', - * // Profile ID to which filter link belongs - * profileId: '\d+', - * // Web property Id to which profile filter link belongs - * webPropertyId: 'UA-(\d+)-(\d+)', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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$Management$Profilefilterlinks$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Profilefilterlinks$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Profilefilterlinks$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Profilefilterlinks$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Profilefilterlinks$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Profilefilterlinks$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profilefilterlinks$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profilefilterlinks$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'], - pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Update an existing profile filter link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profileFilterLinks.update({ - * // Account ID to which profile filter link belongs. - * accountId: '\d+', - * // ID of the profile filter link to be updated. - * linkId: '\d+:\d+', - * // Profile ID to which filter link belongs - * profileId: '\d+', - * // Web property Id to which profile filter link belongs - * webPropertyId: 'UA-(\d+)-(\d+)', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "filterRef": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profileRef": {}, - * // "rank": 0, - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Profilefilterlinks$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Profilefilterlinks$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Profilefilterlinks$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Profilefilterlinks$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Profilefilterlinks$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Profilefilterlinks$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profilefilterlinks$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profilefilterlinks$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'], - pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Profilefilterlinks$Delete extends StandardParameters { - /** - * Account ID to which the profile filter link belongs. - */ - accountId?: string; - /** - * ID of the profile filter link to delete. - */ - linkId?: string; - /** - * Profile ID to which the filter link belongs. - */ - profileId?: string; - /** - * Web property Id to which the profile filter link belongs. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profilefilterlinks$Get extends StandardParameters { - /** - * Account ID to retrieve profile filter link for. - */ - accountId?: string; - /** - * ID of the profile filter link. - */ - linkId?: string; - /** - * Profile ID to retrieve filter link for. - */ - profileId?: string; - /** - * Web property Id to retrieve profile filter link for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profilefilterlinks$Insert extends StandardParameters { - /** - * Account ID to create profile filter link for. - */ - accountId?: string; - /** - * Profile ID to create filter link for. - */ - profileId?: string; - /** - * Web property Id to create profile filter link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ProfileFilterLink; - } - export interface Params$Resource$Management$Profilefilterlinks$List extends StandardParameters { - /** - * Account ID to retrieve profile filter links for. - */ - accountId?: string; - /** - * The maximum number of profile filter links to include in this response. - */ - 'max-results'?: number; - /** - * Profile ID to retrieve filter links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to. - */ - profileId?: string; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property Id for profile filter links for. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profilefilterlinks$Patch extends StandardParameters { - /** - * Account ID to which profile filter link belongs. - */ - accountId?: string; - /** - * ID of the profile filter link to be updated. - */ - linkId?: string; - /** - * Profile ID to which filter link belongs - */ - profileId?: string; - /** - * Web property Id to which profile filter link belongs - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ProfileFilterLink; - } - export interface Params$Resource$Management$Profilefilterlinks$Update extends StandardParameters { - /** - * Account ID to which profile filter link belongs. - */ - accountId?: string; - /** - * ID of the profile filter link to be updated. - */ - linkId?: string; - /** - * Profile ID to which filter link belongs - */ - profileId?: string; - /** - * Web property Id to which profile filter link belongs - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ProfileFilterLink; - } - - export class Resource$Management$Profiles { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes a view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profiles.delete({ - * // Account ID to delete the view (profile) for. - * accountId: 'placeholder-value', - * // ID of the view (profile) to be deleted. - * profileId: 'placeholder-value', - * // Web property ID to delete the view (profile) for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Profiles$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Profiles$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Profiles$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Profiles$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Profiles$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Profiles$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profiles$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profiles$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets a view (profile) to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.profiles.get({ - * // Account ID to retrieve the view (profile) for. - * accountId: '[0-9]+', - * // View (Profile) ID to retrieve the view (profile) for. - * profileId: '[0-9]+', - * // Web property ID to retrieve the view (profile) for. - * webPropertyId: 'UA-[0-9]+-[0-9]+', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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$Management$Profiles$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Profiles$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Profiles$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Profiles$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Profiles$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Profiles$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profiles$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profiles$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profiles.insert({ - * // Account ID to create the view (profile) for. - * accountId: 'placeholder-value', - * // Web property ID to create the view (profile) for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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$Management$Profiles$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Profiles$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Profiles$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Profiles$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Profiles$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Profiles$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profiles$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profiles$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists views (profiles) to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.profiles.list({ - * // Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access. - * accountId: 'placeholder-value', - * // The maximum number of views (profiles) to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Profiles$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Profiles$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Profiles$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Profiles$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Profiles$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Profiles$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profiles$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profiles$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing view (profile). This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profiles.patch({ - * // Account ID to which the view (profile) belongs - * accountId: 'placeholder-value', - * // ID of the view (profile) to be updated. - * profileId: 'placeholder-value', - * // Web property ID to which the view (profile) belongs - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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$Management$Profiles$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Profiles$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Profiles$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Profiles$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Profiles$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Profiles$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profiles$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profiles$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.profiles.update({ - * // Account ID to which the view (profile) belongs - * accountId: 'placeholder-value', - * // ID of the view (profile) to be updated. - * profileId: 'placeholder-value', - * // Web property ID to which the view (profile) belongs - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "botFilteringEnabled": false, - * // "childLink": {}, - * // "created": "my_created", - * // "currency": "my_currency", - * // "defaultPage": "my_defaultPage", - * // "eCommerceTracking": false, - * // "enhancedECommerceTracking": false, - * // "excludeQueryParameters": "my_excludeQueryParameters", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "siteSearchCategoryParameters": "my_siteSearchCategoryParameters", - * // "siteSearchQueryParameters": "my_siteSearchQueryParameters", - * // "starred": false, - * // "stripSiteSearchCategoryParameters": false, - * // "stripSiteSearchQueryParameters": false, - * // "timezone": "my_timezone", - * // "type": "my_type", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Profiles$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Profiles$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Profiles$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Profiles$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Profiles$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Profiles$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profiles$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profiles$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Profiles$Delete extends StandardParameters { - /** - * Account ID to delete the view (profile) for. - */ - accountId?: string; - /** - * ID of the view (profile) to be deleted. - */ - profileId?: string; - /** - * Web property ID to delete the view (profile) for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profiles$Get extends StandardParameters { - /** - * Account ID to retrieve the view (profile) for. - */ - accountId?: string; - /** - * View (Profile) ID to retrieve the view (profile) for. - */ - profileId?: string; - /** - * Web property ID to retrieve the view (profile) for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profiles$Insert extends StandardParameters { - /** - * Account ID to create the view (profile) for. - */ - accountId?: string; - /** - * Web property ID to create the view (profile) for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Profile; - } - export interface Params$Resource$Management$Profiles$List extends StandardParameters { - /** - * Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access. - */ - accountId?: string; - /** - * The maximum number of views (profiles) to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profiles$Patch extends StandardParameters { - /** - * Account ID to which the view (profile) belongs - */ - accountId?: string; - /** - * ID of the view (profile) to be updated. - */ - profileId?: string; - /** - * Web property ID to which the view (profile) belongs - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Profile; - } - export interface Params$Resource$Management$Profiles$Update extends StandardParameters { - /** - * Account ID to which the view (profile) belongs - */ - accountId?: string; - /** - * ID of the view (profile) to be updated. - */ - profileId?: string; - /** - * Web property ID to which the view (profile) belongs - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Profile; - } - - export class Resource$Management$Profileuserlinks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Removes a user from the given view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.profileUserLinks.delete({ - * // Account ID to delete the user link for. - * accountId: 'placeholder-value', - * // Link ID to delete the user link for. - * linkId: 'placeholder-value', - * // View (Profile) ID to delete the user link for. - * profileId: 'placeholder-value', - * // Web Property ID to delete the user link for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Profileuserlinks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Profileuserlinks$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Profileuserlinks$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Profileuserlinks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Profileuserlinks$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Profileuserlinks$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profileuserlinks$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profileuserlinks$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'], - pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Adds a new user to the given view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.profileUserLinks.insert({ - * // Account ID to create the user link for. - * accountId: 'placeholder-value', - * // View (Profile) ID to create the user link for. - * profileId: 'placeholder-value', - * // Web Property ID to create the user link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * } - * - * 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$Management$Profileuserlinks$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Profileuserlinks$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Profileuserlinks$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Profileuserlinks$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Profileuserlinks$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Profileuserlinks$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profileuserlinks$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profileuserlinks$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists profile-user links for a given view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users', - * 'https://www.googleapis.com/auth/analytics.manage.users.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 analytics.management.profileUserLinks.list({ - * // Account ID which the given view (profile) belongs to. - * accountId: 'placeholder-value', - * // The maximum number of profile-user links to include in this response. - * 'max-results': 'placeholder-value', - * // View (Profile) ID to retrieve the profile-user links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to. - * profileId: 'placeholder-value', - * // An index of the first profile-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web Property ID which the given view (profile) belongs to. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 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. - */ - list( - params: Params$Resource$Management$Profileuserlinks$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Profileuserlinks$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Profileuserlinks$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Profileuserlinks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Profileuserlinks$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Profileuserlinks$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profileuserlinks$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profileuserlinks$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates permissions for an existing user on the given view (profile). - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.profileUserLinks.update({ - * // Account ID to update the user link for. - * accountId: 'placeholder-value', - * // Link ID to update the user link for. - * linkId: 'placeholder-value', - * // View (Profile ID) to update the user link for. - * profileId: 'placeholder-value', - * // Web Property ID to update the user link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Profileuserlinks$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Profileuserlinks$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Profileuserlinks$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Profileuserlinks$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Profileuserlinks$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Profileuserlinks$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Profileuserlinks$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Profileuserlinks$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId', 'linkId'], - pathParams: ['accountId', 'linkId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Profileuserlinks$Delete extends StandardParameters { - /** - * Account ID to delete the user link for. - */ - accountId?: string; - /** - * Link ID to delete the user link for. - */ - linkId?: string; - /** - * View (Profile) ID to delete the user link for. - */ - profileId?: string; - /** - * Web Property ID to delete the user link for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profileuserlinks$Insert extends StandardParameters { - /** - * Account ID to create the user link for. - */ - accountId?: string; - /** - * View (Profile) ID to create the user link for. - */ - profileId?: string; - /** - * Web Property ID to create the user link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityUserLink; - } - export interface Params$Resource$Management$Profileuserlinks$List extends StandardParameters { - /** - * Account ID which the given view (profile) belongs to. - */ - accountId?: string; - /** - * The maximum number of profile-user links to include in this response. - */ - 'max-results'?: number; - /** - * View (Profile) ID to retrieve the profile-user links for. Can either be a specific profile ID or '~all', which refers to all the profiles that user has access to. - */ - profileId?: string; - /** - * An index of the first profile-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web Property ID which the given view (profile) belongs to. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Profileuserlinks$Update extends StandardParameters { - /** - * Account ID to update the user link for. - */ - accountId?: string; - /** - * Link ID to update the user link for. - */ - linkId?: string; - /** - * View (Profile ID) to update the user link for. - */ - profileId?: string; - /** - * Web Property ID to update the user link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityUserLink; - } - - export class Resource$Management$Remarketingaudience { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Delete a remarketing audience. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.remarketingAudience.delete({ - * // Account ID to which the remarketing audience belongs. - * accountId: 'placeholder-value', - * // The ID of the remarketing audience to delete. - * remarketingAudienceId: 'placeholder-value', - * // Web property ID to which the remarketing audience belongs. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Remarketingaudience$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Remarketingaudience$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Remarketingaudience$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Remarketingaudience$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Remarketingaudience$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Remarketingaudience$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Remarketingaudience$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Remarketingaudience$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'], - pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets a remarketing audience to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.remarketingAudience.get({ - * // The account ID of the remarketing audience to retrieve. - * accountId: 'placeholder-value', - * // The ID of the remarketing audience to retrieve. - * remarketingAudienceId: 'placeholder-value', - * // The web property ID of the remarketing audience to retrieve. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Remarketingaudience$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Remarketingaudience$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Remarketingaudience$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Remarketingaudience$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Remarketingaudience$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Remarketingaudience$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Remarketingaudience$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Remarketingaudience$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'], - pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates a new remarketing audience. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.remarketingAudience.insert({ - * // The account ID for which to create the remarketing audience. - * accountId: 'placeholder-value', - * // Web property ID for which to create the remarketing audience. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Remarketingaudience$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Remarketingaudience$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Remarketingaudience$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Remarketingaudience$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Remarketingaudience$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Remarketingaudience$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Remarketingaudience$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Remarketingaudience$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists remarketing audiences to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.remarketingAudience.list({ - * // The account ID of the remarketing audiences to retrieve. - * accountId: 'placeholder-value', - * // The maximum number of remarketing audiences to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * - * type: 'placeholder-value', - * // The web property ID of the remarketing audiences to retrieve. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Remarketingaudience$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Remarketingaudience$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Remarketingaudience$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Remarketingaudience$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Remarketingaudience$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Remarketingaudience$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Remarketingaudience$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Remarketingaudience$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing remarketing audience. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.remarketingAudience.patch({ - * // The account ID of the remarketing audience to update. - * accountId: 'placeholder-value', - * // The ID of the remarketing audience to update. - * remarketingAudienceId: 'placeholder-value', - * // The web property ID of the remarketing audience to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Remarketingaudience$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Remarketingaudience$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Remarketingaudience$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Remarketingaudience$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Remarketingaudience$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Remarketingaudience$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Remarketingaudience$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Remarketingaudience$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'], - pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing remarketing audience. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.remarketingAudience.update({ - * // The account ID of the remarketing audience to update. - * accountId: 'placeholder-value', - * // The ID of the remarketing audience to update. - * remarketingAudienceId: 'placeholder-value', - * // The web property ID of the remarketing audience to update. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "audienceDefinition": {}, - * // "audienceType": "my_audienceType", - * // "created": "my_created", - * // "description": "my_description", - * // "id": "my_id", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "linkedAdAccounts": [], - * // "linkedViews": [], - * // "name": "my_name", - * // "stateBasedAudienceDefinition": {}, - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Remarketingaudience$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Remarketingaudience$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Remarketingaudience$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Remarketingaudience$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Remarketingaudience$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Remarketingaudience$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Remarketingaudience$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Remarketingaudience$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'remarketingAudienceId'], - pathParams: ['accountId', 'remarketingAudienceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Remarketingaudience$Delete extends StandardParameters { - /** - * Account ID to which the remarketing audience belongs. - */ - accountId?: string; - /** - * The ID of the remarketing audience to delete. - */ - remarketingAudienceId?: string; - /** - * Web property ID to which the remarketing audience belongs. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Remarketingaudience$Get extends StandardParameters { - /** - * The account ID of the remarketing audience to retrieve. - */ - accountId?: string; - /** - * The ID of the remarketing audience to retrieve. - */ - remarketingAudienceId?: string; - /** - * The web property ID of the remarketing audience to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Remarketingaudience$Insert extends StandardParameters { - /** - * The account ID for which to create the remarketing audience. - */ - accountId?: string; - /** - * Web property ID for which to create the remarketing audience. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RemarketingAudience; - } - export interface Params$Resource$Management$Remarketingaudience$List extends StandardParameters { - /** - * The account ID of the remarketing audiences to retrieve. - */ - accountId?: string; - /** - * The maximum number of remarketing audiences to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * - */ - type?: string; - /** - * The web property ID of the remarketing audiences to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Remarketingaudience$Patch extends StandardParameters { - /** - * The account ID of the remarketing audience to update. - */ - accountId?: string; - /** - * The ID of the remarketing audience to update. - */ - remarketingAudienceId?: string; - /** - * The web property ID of the remarketing audience to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RemarketingAudience; - } - export interface Params$Resource$Management$Remarketingaudience$Update extends StandardParameters { - /** - * The account ID of the remarketing audience to update. - */ - accountId?: string; - /** - * The ID of the remarketing audience to update. - */ - remarketingAudienceId?: string; - /** - * The web property ID of the remarketing audience to update. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RemarketingAudience; - } - - export class Resource$Management$Segments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Lists segments to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.segments.list({ - * // The maximum number of segments to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Segments$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Segments$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Segments$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Segments$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Segments$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Segments$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Segments$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Segments$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/analytics/v3/management/segments').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Segments$List extends StandardParameters { - /** - * The maximum number of segments to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first segment to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - - export class Resource$Management$Unsampledreports { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes an unsampled report. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.unsampledReports.delete({ - * // Account ID to delete the unsampled report for. - * accountId: 'placeholder-value', - * // View (Profile) ID to delete the unsampled report for. - * profileId: 'placeholder-value', - * // ID of the unsampled report to be deleted. - * unsampledReportId: 'placeholder-value', - * // Web property ID to delete the unsampled reports for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Unsampledreports$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Unsampledreports$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Unsampledreports$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Unsampledreports$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Unsampledreports$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Unsampledreports$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Unsampledreports$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Unsampledreports$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'profileId', - 'unsampledReportId', - ], - pathParams: [ - 'accountId', - 'profileId', - 'unsampledReportId', - 'webPropertyId', - ], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns a single unsampled report. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.unsampledReports.get({ - * // Account ID to retrieve unsampled report for. - * accountId: 'placeholder-value', - * // View (Profile) ID to retrieve unsampled report for. - * profileId: 'placeholder-value', - * // ID of the unsampled report to retrieve. - * unsampledReportId: 'placeholder-value', - * // Web property ID to retrieve unsampled reports for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "cloudStorageDownloadDetails": {}, - * // "created": "my_created", - * // "dimensions": "my_dimensions", - * // "downloadType": "my_downloadType", - * // "driveDownloadDetails": {}, - * // "end-date": "my_end-date", - * // "filters": "my_filters", - * // "id": "my_id", - * // "kind": "my_kind", - * // "metrics": "my_metrics", - * // "profileId": "my_profileId", - * // "segment": "my_segment", - * // "selfLink": "my_selfLink", - * // "start-date": "my_start-date", - * // "status": "my_status", - * // "title": "my_title", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Unsampledreports$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Unsampledreports$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Unsampledreports$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Unsampledreports$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Unsampledreports$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Unsampledreports$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Unsampledreports$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Unsampledreports$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'profileId', - 'unsampledReportId', - ], - pathParams: [ - 'accountId', - 'profileId', - 'unsampledReportId', - 'webPropertyId', - ], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new unsampled report. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.unsampledReports.insert({ - * // Account ID to create the unsampled report for. - * accountId: 'placeholder-value', - * // View (Profile) ID to create the unsampled report for. - * profileId: 'placeholder-value', - * // Web property ID to create the unsampled report for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "cloudStorageDownloadDetails": {}, - * // "created": "my_created", - * // "dimensions": "my_dimensions", - * // "downloadType": "my_downloadType", - * // "driveDownloadDetails": {}, - * // "end-date": "my_end-date", - * // "filters": "my_filters", - * // "id": "my_id", - * // "kind": "my_kind", - * // "metrics": "my_metrics", - * // "profileId": "my_profileId", - * // "segment": "my_segment", - * // "selfLink": "my_selfLink", - * // "start-date": "my_start-date", - * // "status": "my_status", - * // "title": "my_title", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "cloudStorageDownloadDetails": {}, - * // "created": "my_created", - * // "dimensions": "my_dimensions", - * // "downloadType": "my_downloadType", - * // "driveDownloadDetails": {}, - * // "end-date": "my_end-date", - * // "filters": "my_filters", - * // "id": "my_id", - * // "kind": "my_kind", - * // "metrics": "my_metrics", - * // "profileId": "my_profileId", - * // "segment": "my_segment", - * // "selfLink": "my_selfLink", - * // "start-date": "my_start-date", - * // "status": "my_status", - * // "title": "my_title", - * // "updated": "my_updated", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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$Management$Unsampledreports$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Unsampledreports$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Unsampledreports$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Unsampledreports$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Unsampledreports$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Unsampledreports$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Unsampledreports$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Unsampledreports$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists unsampled reports to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.unsampledReports.list({ - * // Account ID to retrieve unsampled reports for. Must be a specific account ID, ~all is not supported. - * accountId: 'placeholder-value', - * // The maximum number of unsampled reports to include in this response. - * 'max-results': 'placeholder-value', - * // View (Profile) ID to retrieve unsampled reports for. Must be a specific view (profile) ID, ~all is not supported. - * profileId: 'placeholder-value', - * // An index of the first unsampled report to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID to retrieve unsampled reports for. Must be a specific web property ID, ~all is not supported. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Unsampledreports$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Unsampledreports$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Unsampledreports$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Unsampledreports$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Unsampledreports$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Unsampledreports$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Unsampledreports$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Unsampledreports$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'profileId'], - pathParams: ['accountId', 'profileId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Unsampledreports$Delete extends StandardParameters { - /** - * Account ID to delete the unsampled report for. - */ - accountId?: string; - /** - * View (Profile) ID to delete the unsampled report for. - */ - profileId?: string; - /** - * ID of the unsampled report to be deleted. - */ - unsampledReportId?: string; - /** - * Web property ID to delete the unsampled reports for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Unsampledreports$Get extends StandardParameters { - /** - * Account ID to retrieve unsampled report for. - */ - accountId?: string; - /** - * View (Profile) ID to retrieve unsampled report for. - */ - profileId?: string; - /** - * ID of the unsampled report to retrieve. - */ - unsampledReportId?: string; - /** - * Web property ID to retrieve unsampled reports for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Unsampledreports$Insert extends StandardParameters { - /** - * Account ID to create the unsampled report for. - */ - accountId?: string; - /** - * View (Profile) ID to create the unsampled report for. - */ - profileId?: string; - /** - * Web property ID to create the unsampled report for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$UnsampledReport; - } - export interface Params$Resource$Management$Unsampledreports$List extends StandardParameters { - /** - * Account ID to retrieve unsampled reports for. Must be a specific account ID, ~all is not supported. - */ - accountId?: string; - /** - * The maximum number of unsampled reports to include in this response. - */ - 'max-results'?: number; - /** - * View (Profile) ID to retrieve unsampled reports for. Must be a specific view (profile) ID, ~all is not supported. - */ - profileId?: string; - /** - * An index of the first unsampled report to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID to retrieve unsampled reports for. Must be a specific web property ID, ~all is not supported. - */ - webPropertyId?: string; - } - - export class Resource$Management$Uploads { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Delete data associated with a previous upload. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.uploads.deleteUploadData({ - * // Account Id for the uploads to be deleted. - * accountId: '\d+', - * // Custom data source Id for the uploads to be deleted. - * customDataSourceId: '.{22}', - * // Web property Id for the uploads to be deleted. - * webPropertyId: 'UA-(\d+)-(\d+)', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "customDataImportUids": [] - * // } - * }, - * }); - * console.log(res.data); - * } - * - * 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. - */ - deleteUploadData( - params: Params$Resource$Management$Uploads$Deleteuploaddata, - options: StreamMethodOptions - ): Promise>; - deleteUploadData( - params?: Params$Resource$Management$Uploads$Deleteuploaddata, - options?: MethodOptions - ): Promise>; - deleteUploadData( - params: Params$Resource$Management$Uploads$Deleteuploaddata, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - deleteUploadData( - params: Params$Resource$Management$Uploads$Deleteuploaddata, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - deleteUploadData( - params: Params$Resource$Management$Uploads$Deleteuploaddata, - callback: BodyResponseCallback - ): void; - deleteUploadData(callback: BodyResponseCallback): void; - deleteUploadData( - paramsOrCallback?: - | Params$Resource$Management$Uploads$Deleteuploaddata - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Uploads$Deleteuploaddata; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Uploads$Deleteuploaddata; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/deleteUploadData' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId'], - pathParams: ['accountId', 'customDataSourceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * List uploads to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.uploads.get({ - * // Account Id for the upload to retrieve. - * accountId: '\d+', - * // Custom data source Id for upload to retrieve. - * customDataSourceId: '.{22}', - * // Upload Id to retrieve. - * uploadId: '.{22}', - * // Web property Id for the upload to retrieve. - * webPropertyId: 'UA-(\d+)-(\d+)', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "customDataSourceId": "my_customDataSourceId", - * // "errors": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "status": "my_status", - * // "uploadTime": "my_uploadTime" - * // } - * } - * - * 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$Management$Uploads$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Uploads$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Uploads$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Uploads$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Uploads$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Uploads$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Uploads$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Uploads$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads/{uploadId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'customDataSourceId', - 'uploadId', - ], - pathParams: [ - 'accountId', - 'customDataSourceId', - 'uploadId', - 'webPropertyId', - ], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * List uploads to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.uploads.list({ - * // Account Id for the uploads to retrieve. - * accountId: '\d+', - * // Custom data source Id for uploads to retrieve. - * customDataSourceId: '.{22}', - * // The maximum number of uploads to include in this response. - * 'max-results': 'placeholder-value', - * // A 1-based index of the first upload to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property Id for the uploads to retrieve. - * webPropertyId: 'UA-(\d+)-(\d+)', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 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. - */ - list( - params: Params$Resource$Management$Uploads$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Uploads$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Uploads$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Uploads$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Uploads$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Uploads$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Uploads$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Uploads$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId'], - pathParams: ['accountId', 'customDataSourceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Upload data for a custom data source. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * ], - * }); - * - * // 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 analytics.management.uploads.uploadData({ - * // Account Id associated with the upload. - * accountId: '\d+', - * // Custom data source Id to which the data being uploaded belongs. - * customDataSourceId: 'placeholder-value', - * // Web property UA-string associated with the upload. - * webPropertyId: 'UA-\d+-\d+', - * - * requestBody: { - * // request body parameters - * }, - * media: { - * mimeType: 'placeholder-value', - * body: 'placeholder-value', - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "customDataSourceId": "my_customDataSourceId", - * // "errors": [], - * // "id": "my_id", - * // "kind": "my_kind", - * // "status": "my_status", - * // "uploadTime": "my_uploadTime" - * // } - * } - * - * 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. - */ - uploadData( - params: Params$Resource$Management$Uploads$Uploaddata, - options: StreamMethodOptions - ): Promise>; - uploadData( - params?: Params$Resource$Management$Uploads$Uploaddata, - options?: MethodOptions - ): Promise>; - uploadData( - params: Params$Resource$Management$Uploads$Uploaddata, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - uploadData( - params: Params$Resource$Management$Uploads$Uploaddata, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - uploadData( - params: Params$Resource$Management$Uploads$Uploaddata, - callback: BodyResponseCallback - ): void; - uploadData(callback: BodyResponseCallback): void; - uploadData( - paramsOrCallback?: - | Params$Resource$Management$Uploads$Uploaddata - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Uploads$Uploaddata; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Uploads$Uploaddata; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - mediaUrl: ( - rootUrl + - '/upload/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads' - ).replace(/([^:]\/)\/+/g, '$1'), - requiredParams: ['accountId', 'webPropertyId', 'customDataSourceId'], - pathParams: ['accountId', 'customDataSourceId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Uploads$Deleteuploaddata extends StandardParameters { - /** - * Account Id for the uploads to be deleted. - */ - accountId?: string; - /** - * Custom data source Id for the uploads to be deleted. - */ - customDataSourceId?: string; - /** - * Web property Id for the uploads to be deleted. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AnalyticsDataimportDeleteUploadDataRequest; - } - export interface Params$Resource$Management$Uploads$Get extends StandardParameters { - /** - * Account Id for the upload to retrieve. - */ - accountId?: string; - /** - * Custom data source Id for upload to retrieve. - */ - customDataSourceId?: string; - /** - * Upload Id to retrieve. - */ - uploadId?: string; - /** - * Web property Id for the upload to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Uploads$List extends StandardParameters { - /** - * Account Id for the uploads to retrieve. - */ - accountId?: string; - /** - * Custom data source Id for uploads to retrieve. - */ - customDataSourceId?: string; - /** - * The maximum number of uploads to include in this response. - */ - 'max-results'?: number; - /** - * A 1-based index of the first upload to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property Id for the uploads to retrieve. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Uploads$Uploaddata extends StandardParameters { - /** - * Account Id associated with the upload. - */ - accountId?: string; - /** - * Custom data source Id to which the data being uploaded belongs. - */ - customDataSourceId?: string; - /** - * Web property UA-string associated with the upload. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: {}; - - /** - * Media metadata - */ - media?: { - /** - * Media mime-type - */ - mimeType?: string; - - /** - * Media body contents - */ - body?: any; - }; - } - - export class Resource$Management$Webproperties { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Gets a web property to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.webproperties.get({ - * // Account ID to retrieve the web property for. - * accountId: '[0-9]+', - * // ID to retrieve the web property for. - * webPropertyId: 'UA-[0-9]+-[0-9]+', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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$Management$Webproperties$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Webproperties$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Webproperties$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Webproperties$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Webproperties$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Webproperties$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webproperties$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webproperties$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Create a new property if the account has fewer than 20 properties. Web properties are visible in the Google Analytics interface only if they have at least one profile. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webproperties.insert({ - * // Account ID to create the web property for. - * accountId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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$Management$Webproperties$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Webproperties$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Webproperties$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Webproperties$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Webproperties$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Webproperties$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webproperties$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webproperties$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId'], - pathParams: ['accountId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists web properties to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.webproperties.list({ - * // Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to. - * accountId: 'placeholder-value', - * // The maximum number of web properties to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 0, - * // "username": "my_username" - * // } - * } - * - * 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$Management$Webproperties$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Webproperties$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Webproperties$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Webproperties$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Webproperties$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Webproperties$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webproperties$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webproperties$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId'], - pathParams: ['accountId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing web property. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webproperties.patch({ - * // Account ID to which the web property belongs - * accountId: 'placeholder-value', - * // Web property ID - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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$Management$Webproperties$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Webproperties$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Webproperties$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Webproperties$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Webproperties$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Webproperties$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webproperties$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webproperties$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing web property. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webproperties.update({ - * // Account ID to which the web property belongs - * accountId: 'placeholder-value', - * // Web property ID - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "accountId": "my_accountId", - * // "childLink": {}, - * // "created": "my_created", - * // "dataRetentionResetOnNewActivity": false, - * // "dataRetentionTtl": "my_dataRetentionTtl", - * // "defaultProfileId": "my_defaultProfileId", - * // "id": "my_id", - * // "industryVertical": "my_industryVertical", - * // "internalWebPropertyId": "my_internalWebPropertyId", - * // "kind": "my_kind", - * // "level": "my_level", - * // "name": "my_name", - * // "parentLink": {}, - * // "permissions": {}, - * // "profileCount": 0, - * // "selfLink": "my_selfLink", - * // "starred": false, - * // "updated": "my_updated", - * // "websiteUrl": "my_websiteUrl" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Webproperties$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Webproperties$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Webproperties$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Webproperties$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Webproperties$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Webproperties$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webproperties$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webproperties$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Webproperties$Get extends StandardParameters { - /** - * Account ID to retrieve the web property for. - */ - accountId?: string; - /** - * ID to retrieve the web property for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Webproperties$Insert extends StandardParameters { - /** - * Account ID to create the web property for. - */ - accountId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Webproperty; - } - export interface Params$Resource$Management$Webproperties$List extends StandardParameters { - /** - * Account ID to retrieve web properties for. Can either be a specific account ID or '~all', which refers to all the accounts that user has access to. - */ - accountId?: string; - /** - * The maximum number of web properties to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - } - export interface Params$Resource$Management$Webproperties$Patch extends StandardParameters { - /** - * Account ID to which the web property belongs - */ - accountId?: string; - /** - * Web property ID - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Webproperty; - } - export interface Params$Resource$Management$Webproperties$Update extends StandardParameters { - /** - * Account ID to which the web property belongs - */ - accountId?: string; - /** - * Web property ID - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Webproperty; - } - - export class Resource$Management$Webpropertyadwordslinks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes a web property-Google Ads link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webPropertyAdWordsLinks.delete({ - * // ID of the account which the given web property belongs to. - * accountId: 'placeholder-value', - * // Web property Google Ads link ID. - * webPropertyAdWordsLinkId: 'placeholder-value', - * // Web property ID to delete the Google Ads link for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Webpropertyadwordslinks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Webpropertyadwordslinks$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Webpropertyadwordslinks$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Webpropertyadwordslinks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Webpropertyadwordslinks$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyadwordslinks$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyadwordslinks$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Management$Webpropertyadwordslinks$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'webPropertyAdWordsLinkId', - ], - pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns a web property-Google Ads link to which the user has access. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.webPropertyAdWordsLinks.get({ - * // ID of the account which the given web property belongs to. - * accountId: 'placeholder-value', - * // Web property-Google Ads link ID. - * webPropertyAdWordsLinkId: 'placeholder-value', - * // Web property ID to retrieve the Google Ads link for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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$Management$Webpropertyadwordslinks$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Management$Webpropertyadwordslinks$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Management$Webpropertyadwordslinks$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Webpropertyadwordslinks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Management$Webpropertyadwordslinks$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyadwordslinks$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyadwordslinks$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyadwordslinks$Get; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'webPropertyAdWordsLinkId', - ], - pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates a webProperty-Google Ads link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webPropertyAdWordsLinks.insert({ - * // ID of the Google Analytics account to create the link for. - * accountId: 'placeholder-value', - * // Web property ID to create the link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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$Management$Webpropertyadwordslinks$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Webpropertyadwordslinks$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Webpropertyadwordslinks$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Webpropertyadwordslinks$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Webpropertyadwordslinks$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyadwordslinks$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyadwordslinks$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Management$Webpropertyadwordslinks$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists webProperty-Google Ads links for a given web property. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.management.webPropertyAdWordsLinks.list({ - * // ID of the account which the given web property belongs to. - * accountId: '\d+', - * // The maximum number of webProperty-Google Ads links to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first webProperty-Google Ads link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web property ID to retrieve the Google Ads links for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 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. - */ - list( - params: Params$Resource$Management$Webpropertyadwordslinks$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Webpropertyadwordslinks$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Webpropertyadwordslinks$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Webpropertyadwordslinks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Webpropertyadwordslinks$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyadwordslinks$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyadwordslinks$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyadwordslinks$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing webProperty-Google Ads link. This method supports patch semantics. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webPropertyAdWordsLinks.patch({ - * // ID of the account which the given web property belongs to. - * accountId: 'placeholder-value', - * // Web property-Google Ads link ID. - * webPropertyAdWordsLinkId: 'placeholder-value', - * // Web property ID to retrieve the Google Ads link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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$Management$Webpropertyadwordslinks$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Management$Webpropertyadwordslinks$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Management$Webpropertyadwordslinks$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Webpropertyadwordslinks$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Management$Webpropertyadwordslinks$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyadwordslinks$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyadwordslinks$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyadwordslinks$Patch; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'webPropertyAdWordsLinkId', - ], - pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates an existing webProperty-Google Ads link. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.edit'], - * }); - * - * // 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 analytics.management.webPropertyAdWordsLinks.update({ - * // ID of the account which the given web property belongs to. - * accountId: 'placeholder-value', - * // Web property-Google Ads link ID. - * webPropertyAdWordsLinkId: 'placeholder-value', - * // Web property ID to retrieve the Google Ads link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "adWordsAccounts": [], - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "profileIds": [], - * // "selfLink": "my_selfLink" - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Webpropertyadwordslinks$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Webpropertyadwordslinks$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Webpropertyadwordslinks$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Webpropertyadwordslinks$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Webpropertyadwordslinks$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyadwordslinks$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyadwordslinks$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Management$Webpropertyadwordslinks$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: [ - 'accountId', - 'webPropertyId', - 'webPropertyAdWordsLinkId', - ], - pathParams: ['accountId', 'webPropertyAdWordsLinkId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Webpropertyadwordslinks$Delete extends StandardParameters { - /** - * ID of the account which the given web property belongs to. - */ - accountId?: string; - /** - * Web property Google Ads link ID. - */ - webPropertyAdWordsLinkId?: string; - /** - * Web property ID to delete the Google Ads link for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Webpropertyadwordslinks$Get extends StandardParameters { - /** - * ID of the account which the given web property belongs to. - */ - accountId?: string; - /** - * Web property-Google Ads link ID. - */ - webPropertyAdWordsLinkId?: string; - /** - * Web property ID to retrieve the Google Ads link for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Webpropertyadwordslinks$Insert extends StandardParameters { - /** - * ID of the Google Analytics account to create the link for. - */ - accountId?: string; - /** - * Web property ID to create the link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityAdWordsLink; - } - export interface Params$Resource$Management$Webpropertyadwordslinks$List extends StandardParameters { - /** - * ID of the account which the given web property belongs to. - */ - accountId?: string; - /** - * The maximum number of webProperty-Google Ads links to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first webProperty-Google Ads link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web property ID to retrieve the Google Ads links for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Webpropertyadwordslinks$Patch extends StandardParameters { - /** - * ID of the account which the given web property belongs to. - */ - accountId?: string; - /** - * Web property-Google Ads link ID. - */ - webPropertyAdWordsLinkId?: string; - /** - * Web property ID to retrieve the Google Ads link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityAdWordsLink; - } - export interface Params$Resource$Management$Webpropertyadwordslinks$Update extends StandardParameters { - /** - * ID of the account which the given web property belongs to. - */ - accountId?: string; - /** - * Web property-Google Ads link ID. - */ - webPropertyAdWordsLinkId?: string; - /** - * Web property ID to retrieve the Google Ads link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityAdWordsLink; - } - - export class Resource$Management$Webpropertyuserlinks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Removes a user from the given web property. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.webpropertyUserLinks.delete({ - * // Account ID to delete the user link for. - * accountId: 'placeholder-value', - * // Link ID to delete the user link for. - * linkId: 'placeholder-value', - * // Web Property ID to delete the user link for. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * } - * - * 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$Management$Webpropertyuserlinks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Management$Webpropertyuserlinks$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Management$Webpropertyuserlinks$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Webpropertyuserlinks$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Management$Webpropertyuserlinks$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyuserlinks$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyuserlinks$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyuserlinks$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'linkId'], - pathParams: ['accountId', 'linkId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Adds a new user to the given web property. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.webpropertyUserLinks.insert({ - * // Account ID to create the user link for. - * accountId: 'placeholder-value', - * // Web Property ID to create the user link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * } - * - * 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$Management$Webpropertyuserlinks$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Management$Webpropertyuserlinks$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Management$Webpropertyuserlinks$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Webpropertyuserlinks$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Management$Webpropertyuserlinks$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyuserlinks$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyuserlinks$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyuserlinks$Insert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Lists webProperty-user links for a given web property. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users', - * 'https://www.googleapis.com/auth/analytics.manage.users.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 analytics.management.webpropertyUserLinks.list({ - * // Account ID which the given web property belongs to. - * accountId: 'placeholder-value', - * // The maximum number of webProperty-user Links to include in this response. - * 'max-results': 'placeholder-value', - * // An index of the first webProperty-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - * 'start-index': 'placeholder-value', - * // Web Property ID for the webProperty-user links to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - * webPropertyId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "items": [], - * // "itemsPerPage": 0, - * // "kind": "my_kind", - * // "nextLink": "my_nextLink", - * // "previousLink": "my_previousLink", - * // "startIndex": 0, - * // "totalResults": 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. - */ - list( - params: Params$Resource$Management$Webpropertyuserlinks$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Management$Webpropertyuserlinks$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Management$Webpropertyuserlinks$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Webpropertyuserlinks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Management$Webpropertyuserlinks$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyuserlinks$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyuserlinks$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyuserlinks$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId'], - pathParams: ['accountId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates permissions for an existing user on the given web property. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.manage.users'], - * }); - * - * // 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 analytics.management.webpropertyUserLinks.update({ - * // Account ID to update the account-user link for. - * accountId: 'placeholder-value', - * // Link ID to update the account-user link for. - * linkId: 'placeholder-value', - * // Web property ID to update the account-user link for. - * webPropertyId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "entity": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "permissions": {}, - * // "selfLink": "my_selfLink", - * // "userRef": {} - * // } - * } - * - * 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. - */ - update( - params: Params$Resource$Management$Webpropertyuserlinks$Update, - options: StreamMethodOptions - ): Promise>; - update( - params?: Params$Resource$Management$Webpropertyuserlinks$Update, - options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Management$Webpropertyuserlinks$Update, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Webpropertyuserlinks$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - update( - params: Params$Resource$Management$Webpropertyuserlinks$Update, - callback: BodyResponseCallback - ): void; - update(callback: BodyResponseCallback): void; - update( - paramsOrCallback?: - | Params$Resource$Management$Webpropertyuserlinks$Update - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Management$Webpropertyuserlinks$Update; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Management$Webpropertyuserlinks$Update; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/analytics/v3/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['accountId', 'webPropertyId', 'linkId'], - pathParams: ['accountId', 'linkId', 'webPropertyId'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Management$Webpropertyuserlinks$Delete extends StandardParameters { - /** - * Account ID to delete the user link for. - */ - accountId?: string; - /** - * Link ID to delete the user link for. - */ - linkId?: string; - /** - * Web Property ID to delete the user link for. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Webpropertyuserlinks$Insert extends StandardParameters { - /** - * Account ID to create the user link for. - */ - accountId?: string; - /** - * Web Property ID to create the user link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityUserLink; - } - export interface Params$Resource$Management$Webpropertyuserlinks$List extends StandardParameters { - /** - * Account ID which the given web property belongs to. - */ - accountId?: string; - /** - * The maximum number of webProperty-user Links to include in this response. - */ - 'max-results'?: number; - /** - * An index of the first webProperty-user link to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter. - */ - 'start-index'?: number; - /** - * Web Property ID for the webProperty-user links to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties that user has access to. - */ - webPropertyId?: string; - } - export interface Params$Resource$Management$Webpropertyuserlinks$Update extends StandardParameters { - /** - * Account ID to update the account-user link for. - */ - accountId?: string; - /** - * Link ID to update the account-user link for. - */ - linkId?: string; - /** - * Web property ID to update the account-user link for. - */ - webPropertyId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$EntityUserLink; - } - - export class Resource$Metadata { - context: APIRequestContext; - columns: Resource$Metadata$Columns; - constructor(context: APIRequestContext) { - this.context = context; - this.columns = new Resource$Metadata$Columns(this.context); - } - } - - export class Resource$Metadata$Columns { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Lists all columns for a report type - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics', - * 'https://www.googleapis.com/auth/analytics.edit', - * 'https://www.googleapis.com/auth/analytics.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 analytics.metadata.columns.list({ - * // Report type. Allowed Values: 'ga'. Where 'ga' corresponds to the Core Reporting API - * reportType: 'ga', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "attributeNames": [], - * // "etag": "my_etag", - * // "items": [], - * // "kind": "my_kind", - * // "totalResults": 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. - */ - list( - params: Params$Resource$Metadata$Columns$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Metadata$Columns$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Metadata$Columns$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Metadata$Columns$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Metadata$Columns$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Metadata$Columns$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Metadata$Columns$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Metadata$Columns$List; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/metadata/{reportType}/columns' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['reportType'], - pathParams: ['reportType'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Metadata$Columns$List extends StandardParameters { - /** - * Report type. Allowed Values: 'ga'. Where 'ga' corresponds to the Core Reporting API - */ - reportType?: string; - } - - export class Resource$Provisioning { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Creates an account ticket. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.provision'], - * }); - * - * // 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 analytics.provisioning.createAccountTicket({ - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "account": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profile": {}, - * // "redirectUri": "my_redirectUri", - * // "webproperty": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "account": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "profile": {}, - * // "redirectUri": "my_redirectUri", - * // "webproperty": {} - * // } - * } - * - * 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. - */ - createAccountTicket( - params: Params$Resource$Provisioning$Createaccountticket, - options: StreamMethodOptions - ): Promise>; - createAccountTicket( - params?: Params$Resource$Provisioning$Createaccountticket, - options?: MethodOptions - ): Promise>; - createAccountTicket( - params: Params$Resource$Provisioning$Createaccountticket, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createAccountTicket( - params: Params$Resource$Provisioning$Createaccountticket, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createAccountTicket( - params: Params$Resource$Provisioning$Createaccountticket, - callback: BodyResponseCallback - ): void; - createAccountTicket( - callback: BodyResponseCallback - ): void; - createAccountTicket( - paramsOrCallback?: - | Params$Resource$Provisioning$Createaccountticket - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Provisioning$Createaccountticket; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Provisioning$Createaccountticket; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/provisioning/createAccountTicket' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Provision account. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.provision'], - * }); - * - * // 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 analytics.provisioning.createAccountTree({ - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "accountName": "my_accountName", - * // "kind": "my_kind", - * // "profileName": "my_profileName", - * // "timezone": "my_timezone", - * // "webpropertyName": "my_webpropertyName", - * // "websiteUrl": "my_websiteUrl" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "account": {}, - * // "kind": "my_kind", - * // "profile": {}, - * // "webproperty": {} - * // } - * } - * - * 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. - */ - createAccountTree( - params: Params$Resource$Provisioning$Createaccounttree, - options: StreamMethodOptions - ): Promise>; - createAccountTree( - params?: Params$Resource$Provisioning$Createaccounttree, - options?: MethodOptions - ): Promise>; - createAccountTree( - params: Params$Resource$Provisioning$Createaccounttree, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createAccountTree( - params: Params$Resource$Provisioning$Createaccounttree, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createAccountTree( - params: Params$Resource$Provisioning$Createaccounttree, - callback: BodyResponseCallback - ): void; - createAccountTree( - callback: BodyResponseCallback - ): void; - createAccountTree( - paramsOrCallback?: - | Params$Resource$Provisioning$Createaccounttree - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Provisioning$Createaccounttree; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Provisioning$Createaccounttree; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/provisioning/createAccountTree' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Provisioning$Createaccountticket extends StandardParameters { - /** - * Request body metadata - */ - requestBody?: Schema$AccountTicket; - } - export interface Params$Resource$Provisioning$Createaccounttree extends StandardParameters { - /** - * Request body metadata - */ - requestBody?: Schema$AccountTreeRequest; - } - - export class Resource$Userdeletion { - context: APIRequestContext; - userDeletionRequest: Resource$Userdeletion$Userdeletionrequest; - constructor(context: APIRequestContext) { - this.context = context; - this.userDeletionRequest = new Resource$Userdeletion$Userdeletionrequest( - this.context - ); - } - } - - export class Resource$Userdeletion$Userdeletionrequest { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Insert or update a user deletion requests. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/analytics.googleapis.com - * // - Login into gcloud by running: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const analytics = google.analytics('v3'); - * - * 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/analytics.user.deletion'], - * }); - * - * // 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 analytics.userDeletion.userDeletionRequest.upsert({ - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "deletionRequestTime": "my_deletionRequestTime", - * // "firebaseProjectId": "my_firebaseProjectId", - * // "id": {}, - * // "kind": "my_kind", - * // "propertyId": "my_propertyId", - * // "webPropertyId": "my_webPropertyId" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "deletionRequestTime": "my_deletionRequestTime", - * // "firebaseProjectId": "my_firebaseProjectId", - * // "id": {}, - * // "kind": "my_kind", - * // "propertyId": "my_propertyId", - * // "webPropertyId": "my_webPropertyId" - * // } - * } - * - * 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. - */ - upsert( - params: Params$Resource$Userdeletion$Userdeletionrequest$Upsert, - options: StreamMethodOptions - ): Promise>; - upsert( - params?: Params$Resource$Userdeletion$Userdeletionrequest$Upsert, - options?: MethodOptions - ): Promise>; - upsert( - params: Params$Resource$Userdeletion$Userdeletionrequest$Upsert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - upsert( - params: Params$Resource$Userdeletion$Userdeletionrequest$Upsert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - upsert( - params: Params$Resource$Userdeletion$Userdeletionrequest$Upsert, - callback: BodyResponseCallback - ): void; - upsert(callback: BodyResponseCallback): void; - upsert( - paramsOrCallback?: - | Params$Resource$Userdeletion$Userdeletionrequest$Upsert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Userdeletion$Userdeletionrequest$Upsert; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Userdeletion$Userdeletionrequest$Upsert; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://analytics.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/analytics/v3/userDeletion/userDeletionRequests:upsert' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Userdeletion$Userdeletionrequest$Upsert extends StandardParameters { - /** - * Request body metadata - */ - requestBody?: Schema$UserDeletionRequest; - } -} From 1f4ddad3b0e858f6e9fc726e1fd21d7d8132b48e Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 04/29] fix(androidpublisher): update the API #### androidpublisher:v3 The following keys were changed: - schemas.GeneratedApksPerSigningKey.description --- discovery/androidpublisher-v3.json | 4 ++-- src/apis/androidpublisher/v3.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/discovery/androidpublisher-v3.json b/discovery/androidpublisher-v3.json index 0837d0e19a..a1048ffa67 100644 --- a/discovery/androidpublisher-v3.json +++ b/discovery/androidpublisher-v3.json @@ -5639,7 +5639,7 @@ } } }, - "revision": "20260519", + "revision": "20260528", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "Abi": { @@ -8094,7 +8094,7 @@ "type": "object" }, "GeneratedApksPerSigningKey": { - "description": "Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given key. Next ID: 10", + "description": "Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given key.", "id": "GeneratedApksPerSigningKey", "properties": { "certificateSha256Hash": { diff --git a/src/apis/androidpublisher/v3.ts b/src/apis/androidpublisher/v3.ts index 1a01a7feac..3c9896a8b9 100644 --- a/src/apis/androidpublisher/v3.ts +++ b/src/apis/androidpublisher/v3.ts @@ -1863,7 +1863,7 @@ export namespace androidpublisher_v3 { generatedApks?: Schema$GeneratedApksPerSigningKey[]; } /** - * Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given key. Next ID: 10 + * Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given key. */ export interface Schema$GeneratedApksPerSigningKey { /** From 00703a6c4122ef9d9aae0f294b75682c97f168ce Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 05/29] fix(apphub): update the API #### apphub:v1alpha The following keys were changed: - resources.projects.resources.locations.methods.updateBoundary.parameters.updateMask.description - resources.projects.resources.locations.resources.applications.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.applications.resources.services.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.applications.resources.workloads.methods.patch.parameters.updateMask.description #### apphub:v1 The following keys were changed: - resources.projects.resources.locations.methods.updateBoundary.parameters.updateMask.description - resources.projects.resources.locations.resources.applications.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.applications.resources.services.methods.patch.parameters.updateMask.description - resources.projects.resources.locations.resources.applications.resources.workloads.methods.patch.parameters.updateMask.description --- discovery/apphub-v1.json | 10 +++++----- discovery/apphub-v1alpha.json | 10 +++++----- src/apis/apphub/v1.ts | 16 ++++++++-------- src/apis/apphub/v1alpha.ts | 16 ++++++++-------- 4 files changed, 26 insertions(+), 26 deletions(-) diff --git a/discovery/apphub-v1.json b/discovery/apphub-v1.json index b3d9b56b44..5069019978 100644 --- a/discovery/apphub-v1.json +++ b/discovery/apphub-v1.json @@ -281,7 +281,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Boundary 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.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Boundary 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" @@ -494,7 +494,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -732,7 +732,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -914,7 +914,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1486,7 +1486,7 @@ } } }, - "revision": "20260422", + "revision": "20260520", "rootUrl": "https://apphub.googleapis.com/", "schemas": { "Application": { diff --git a/discovery/apphub-v1alpha.json b/discovery/apphub-v1alpha.json index c9f9fa3b79..58e150a9d3 100644 --- a/discovery/apphub-v1alpha.json +++ b/discovery/apphub-v1alpha.json @@ -281,7 +281,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Boundary 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.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Boundary 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" @@ -494,7 +494,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -732,7 +732,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -914,7 +914,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", + "description": "Optional. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1578,7 +1578,7 @@ } } }, - "revision": "20260422", + "revision": "20260520", "rootUrl": "https://apphub.googleapis.com/", "schemas": { "Application": { diff --git a/src/apis/apphub/v1.ts b/src/apis/apphub/v1.ts index 6dea67d0c0..0717e2462d 100644 --- a/src/apis/apphub/v1.ts +++ b/src/apis/apphub/v1.ts @@ -1755,7 +1755,7 @@ export namespace apphub_v1 { * name: 'projects/my-project/locations/my-location/boundary', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Boundary 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. + * // Optional. Field mask is used to specify the fields to be overwritten in the Boundary 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 @@ -1936,7 +1936,7 @@ export namespace apphub_v1 { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Boundary 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. + * Optional. Field mask is used to specify the fields to be overwritten in the Boundary 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; @@ -2731,7 +2731,7 @@ export namespace apphub_v1 { * name: 'projects/my-project/locations/my-location/applications/my-application', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * // Optional. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. * updateMask: 'placeholder-value', * * // Request body metadata @@ -3234,7 +3234,7 @@ export namespace apphub_v1 { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * Optional. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. */ updateMask?: string; @@ -3909,7 +3909,7 @@ export namespace apphub_v1 { * name: 'projects/my-project/locations/my-location/applications/my-application/services/my-service', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * // Optional. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. * updateMask: 'placeholder-value', * * // Request body metadata @@ -4103,7 +4103,7 @@ export namespace apphub_v1 { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * Optional. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. */ updateMask?: string; @@ -4756,7 +4756,7 @@ export namespace apphub_v1 { * name: 'projects/my-project/locations/my-location/applications/my-application/workloads/my-workload', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * // Optional. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. * updateMask: 'placeholder-value', * * // Request body metadata @@ -4950,7 +4950,7 @@ export namespace apphub_v1 { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * Optional. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. */ updateMask?: string; diff --git a/src/apis/apphub/v1alpha.ts b/src/apis/apphub/v1alpha.ts index 455fa501e2..dd29cb2b15 100644 --- a/src/apis/apphub/v1alpha.ts +++ b/src/apis/apphub/v1alpha.ts @@ -1805,7 +1805,7 @@ export namespace apphub_v1alpha { * name: 'projects/my-project/locations/my-location/boundary', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Boundary 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. + * // Optional. Field mask is used to specify the fields to be overwritten in the Boundary 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 @@ -1986,7 +1986,7 @@ export namespace apphub_v1alpha { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Boundary 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. + * Optional. Field mask is used to specify the fields to be overwritten in the Boundary 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; @@ -2781,7 +2781,7 @@ export namespace apphub_v1alpha { * name: 'projects/my-project/locations/my-location/applications/my-application', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * // Optional. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. * updateMask: 'placeholder-value', * * // Request body metadata @@ -3284,7 +3284,7 @@ export namespace apphub_v1alpha { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * Optional. Field mask is used to specify the fields to be overwritten in the Application resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. */ updateMask?: string; @@ -3959,7 +3959,7 @@ export namespace apphub_v1alpha { * name: 'projects/my-project/locations/my-location/applications/my-application/services/my-service', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * // Optional. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. * updateMask: 'placeholder-value', * * // Request body metadata @@ -4153,7 +4153,7 @@ export namespace apphub_v1alpha { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * Optional. Field mask is used to specify the fields to be overwritten in the Service resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. */ updateMask?: string; @@ -4806,7 +4806,7 @@ export namespace apphub_v1alpha { * name: 'projects/my-project/locations/my-location/applications/my-application/workloads/my-workload', * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * // Optional. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. * updateMask: 'placeholder-value', * * // Request body metadata @@ -5000,7 +5000,7 @@ export namespace apphub_v1alpha { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. + * Optional. Field mask is used to specify the fields to be overwritten in the Workload resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. The API changes the values of the fields as specified in the update_mask. The API ignores the values of all fields not covered by the update_mask. You can also unset a field by not specifying it in the updated message, but adding the field to the mask. This clears whatever value the field previously had. */ updateMask?: string; From 7fb5be0717d30e7eb5458c862932ff6773a07e63 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 06/29] feat(artifactregistry): update the API #### artifactregistry:v1beta1 The following keys were changed: - resources.projects.resources.locations.methods.list.description - resources.projects.resources.locations.methods.list.parameters.extraLocationTypes.description #### artifactregistry:v1 The following keys were added: - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.description - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.flatPath - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.httpMethod - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.id - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.parameterOrder - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.parameters.repository.description - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.parameters.repository.location - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.parameters.repository.pattern - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.parameters.repository.required - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.parameters.repository.type - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.path - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.request.$ref - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.response.$ref - resources.projects.resources.locations.resources.repositories.methods.checkPrewarmedArtifact.scopes - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.description - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.flatPath - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.httpMethod - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.id - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.parameterOrder - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.parameters.repository.description - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.parameters.repository.location - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.parameters.repository.pattern - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.parameters.repository.required - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.parameters.repository.type - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.path - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.request.$ref - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.response.$ref - resources.projects.resources.locations.resources.repositories.methods.prewarmArtifact.scopes - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.description - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.flatPath - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.httpMethod - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.id - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.parameterOrder - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.parameters.repository.description - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.parameters.repository.location - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.parameters.repository.pattern - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.parameters.repository.required - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.parameters.repository.type - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.path - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.request.$ref - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.response.$ref - resources.projects.resources.locations.resources.repositories.methods.removePrewarmedArtifact.scopes - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.description - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.flatPath - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.httpMethod - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.id - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameterOrder - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.filter.description - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.filter.location - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.filter.type - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageSize.format - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageSize.location - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageSize.type - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageToken.location - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.pageToken.type - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.parent.description - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.parent.location - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.parent.pattern - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.parent.required - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.parameters.parent.type - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.path - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.response.$ref - resources.projects.resources.locations.resources.repositories.resources.prewarmedArtifacts.methods.list.scopes - schemas.CheckPrewarmedArtifactRequest.description - schemas.CheckPrewarmedArtifactRequest.id - schemas.CheckPrewarmedArtifactRequest.properties.streamLocation.description - schemas.CheckPrewarmedArtifactRequest.properties.streamLocation.type - schemas.CheckPrewarmedArtifactRequest.properties.tag.description - schemas.CheckPrewarmedArtifactRequest.properties.tag.type - schemas.CheckPrewarmedArtifactRequest.properties.version.description - schemas.CheckPrewarmedArtifactRequest.properties.version.type - schemas.CheckPrewarmedArtifactRequest.type - schemas.CheckPrewarmedArtifactResponse.description - schemas.CheckPrewarmedArtifactResponse.id - schemas.CheckPrewarmedArtifactResponse.properties.prewarmedArtifact.$ref - schemas.CheckPrewarmedArtifactResponse.properties.prewarmedArtifact.description - schemas.CheckPrewarmedArtifactResponse.type - schemas.ListPrewarmedArtifactsResponse.description - schemas.ListPrewarmedArtifactsResponse.id - schemas.ListPrewarmedArtifactsResponse.properties.nextPageToken.description - schemas.ListPrewarmedArtifactsResponse.properties.nextPageToken.type - schemas.ListPrewarmedArtifactsResponse.properties.prewarmedArtifacts.description - schemas.ListPrewarmedArtifactsResponse.properties.prewarmedArtifacts.items.$ref - schemas.ListPrewarmedArtifactsResponse.properties.prewarmedArtifacts.type - schemas.ListPrewarmedArtifactsResponse.type - schemas.PrewarmArtifactRequest.description - schemas.PrewarmArtifactRequest.id - schemas.PrewarmArtifactRequest.properties.force.description - schemas.PrewarmArtifactRequest.properties.force.type - schemas.PrewarmArtifactRequest.properties.retentionDays.description - schemas.PrewarmArtifactRequest.properties.retentionDays.format - schemas.PrewarmArtifactRequest.properties.retentionDays.type - schemas.PrewarmArtifactRequest.properties.streamLocation.description - schemas.PrewarmArtifactRequest.properties.streamLocation.type - schemas.PrewarmArtifactRequest.properties.tag.description - schemas.PrewarmArtifactRequest.properties.tag.type - schemas.PrewarmArtifactRequest.properties.version.description - schemas.PrewarmArtifactRequest.properties.version.type - schemas.PrewarmArtifactRequest.type - schemas.PrewarmArtifactResponse.description - schemas.PrewarmArtifactResponse.id - schemas.PrewarmArtifactResponse.properties.prewarmedArtifact.$ref - schemas.PrewarmArtifactResponse.properties.prewarmedArtifact.description - schemas.PrewarmArtifactResponse.type - schemas.PrewarmedArtifact.description - schemas.PrewarmedArtifact.id - schemas.PrewarmedArtifact.properties.expirationTime.description - schemas.PrewarmedArtifact.properties.expirationTime.format - schemas.PrewarmedArtifact.properties.expirationTime.type - schemas.PrewarmedArtifact.properties.location.description - schemas.PrewarmedArtifact.properties.location.type - schemas.PrewarmedArtifact.properties.uri.description - schemas.PrewarmedArtifact.properties.uri.type - schemas.PrewarmedArtifact.type - schemas.RemovePrewarmedArtifactRequest.description - schemas.RemovePrewarmedArtifactRequest.id - schemas.RemovePrewarmedArtifactRequest.properties.streamLocation.description - schemas.RemovePrewarmedArtifactRequest.properties.streamLocation.type - schemas.RemovePrewarmedArtifactRequest.properties.tag.description - schemas.RemovePrewarmedArtifactRequest.properties.tag.type - schemas.RemovePrewarmedArtifactRequest.properties.version.description - schemas.RemovePrewarmedArtifactRequest.properties.version.type - schemas.RemovePrewarmedArtifactRequest.type - schemas.RemovePrewarmedArtifactResponse.description - schemas.RemovePrewarmedArtifactResponse.id - schemas.RemovePrewarmedArtifactResponse.properties.prewarmedArtifact.$ref - schemas.RemovePrewarmedArtifactResponse.properties.prewarmedArtifact.description - schemas.RemovePrewarmedArtifactResponse.type The following keys were changed: - resources.projects.resources.locations.methods.list.description - resources.projects.resources.locations.methods.list.parameters.extraLocationTypes.description --- discovery/artifactregistry-v1.json | 276 ++++++- discovery/artifactregistry-v1beta1.json | 6 +- src/apis/artifactregistry/v1.ts | 928 ++++++++++++++++++++++-- src/apis/artifactregistry/v1beta1.ts | 6 +- 4 files changed, 1154 insertions(+), 62 deletions(-) diff --git a/discovery/artifactregistry-v1.json b/discovery/artifactregistry-v1.json index 6726566ecf..6b1a4ec2e9 100644 --- a/discovery/artifactregistry-v1.json +++ b/discovery/artifactregistry-v1.json @@ -490,7 +490,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "artifactregistry.projects.locations.list", @@ -499,7 +499,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -667,6 +667,35 @@ }, "repositories": { "methods": { + "checkPrewarmedArtifact": { + "description": "Checks an artifact streaming.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}:checkPrewarmedArtifact", + "httpMethod": "POST", + "id": "artifactregistry.projects.locations.repositories.checkPrewarmedArtifact", + "parameterOrder": [ + "repository" + ], + "parameters": { + "repository": { + "description": "Required. The name of the repository, for example: `projects/p1/locations/us-central1/repositories/repo1`. If the package or version ID parts contain slashes, the slashes are escaped.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+repository}:checkPrewarmedArtifact", + "request": { + "$ref": "CheckPrewarmedArtifactRequest" + }, + "response": { + "$ref": "CheckPrewarmedArtifactResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "create": { "description": "Creates a repository. The returned Operation will finish once the repository has been created. Its response will be the created Repository.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories", @@ -892,6 +921,64 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "prewarmArtifact": { + "description": "Prewarms an artifact for streaming.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}:prewarmArtifact", + "httpMethod": "POST", + "id": "artifactregistry.projects.locations.repositories.prewarmArtifact", + "parameterOrder": [ + "repository" + ], + "parameters": { + "repository": { + "description": "Required. The repository name, for example: `projects/p1/locations/us-central1/repositories/repo1`. If the package or version ID parts contain slashes, the slashes are escaped.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+repository}:prewarmArtifact", + "request": { + "$ref": "PrewarmArtifactRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "removePrewarmedArtifact": { + "description": "Removes an artifact from streaming.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}:removePrewarmedArtifact", + "httpMethod": "POST", + "id": "artifactregistry.projects.locations.repositories.removePrewarmedArtifact", + "parameterOrder": [ + "repository" + ], + "parameters": { + "repository": { + "description": "Required. The repository name, for example: `projects/p1/locations/us-central1/repositories/repo1`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+repository}:removePrewarmedArtifact", + "request": { + "$ref": "RemovePrewarmedArtifactRequest" + }, + "response": { + "$ref": "RemovePrewarmedArtifactResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "setIamPolicy": { "description": "Updates the IAM policy for a given resource.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}:setIamPolicy", @@ -2276,6 +2363,52 @@ } } }, + "prewarmedArtifacts": { + "methods": { + "list": { + "description": "Lists all streamed artifacts in a repository.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}/prewarmedArtifacts", + "httpMethod": "GET", + "id": "artifactregistry.projects.locations.repositories.prewarmedArtifacts.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter should only support The location of the prewarmed artifacts. multi-region is not supported for this field.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of prewarmed artifacts to return. Maximum page size is 1,000. Default page size is 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The next_page_token value returned from a previous list request, if any.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The repository of the artifact to list. Format: projects/{project}/locations/{location}/repositories/{repository}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/prewarmedArtifacts", + "response": { + "$ref": "ListPrewarmedArtifactsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } + }, "pythonPackages": { "methods": { "get": { @@ -2581,7 +2714,7 @@ } } }, - "revision": "20260320", + "revision": "20260522", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { @@ -2761,6 +2894,36 @@ "properties": {}, "type": "object" }, + "CheckPrewarmedArtifactRequest": { + "description": "The request for checking an artifact for streaming.", + "id": "CheckPrewarmedArtifactRequest", + "properties": { + "streamLocation": { + "description": "Optional. The location of the prewarmed artifact. multi-region is not supported for this field.", + "type": "string" + }, + "tag": { + "description": "Optional. The artifact tag Format:projects/{project}/locations/{location}/repositories/{repository}/packages/{package}/tags/{tag}", + "type": "string" + }, + "version": { + "description": "Optional. The artifact version Format: projects/{project}/locations/{location}/repositories/{repository}/packages/{package}/versions/{version}", + "type": "string" + } + }, + "type": "object" + }, + "CheckPrewarmedArtifactResponse": { + "description": "The response for checking an artifact for streaming.", + "id": "CheckPrewarmedArtifactResponse", + "properties": { + "prewarmedArtifact": { + "$ref": "PrewarmedArtifact", + "description": "The prewarmed artifact that was checked." + } + }, + "type": "object" + }, "CleanupPolicy": { "description": "Artifact policy configuration for repository cleanup policies.", "id": "CleanupPolicy", @@ -3790,6 +3953,24 @@ }, "type": "object" }, + "ListPrewarmedArtifactsResponse": { + "description": "The response for listing artifacts for streaming.", + "id": "ListPrewarmedArtifactsResponse", + "properties": { + "nextPageToken": { + "description": "The token to retrieve the next page of prewarmed artifacts, or empty if there are no more streamings to return.", + "type": "string" + }, + "prewarmedArtifacts": { + "description": "The prewarmed artifacts.", + "items": { + "$ref": "PrewarmedArtifact" + }, + "type": "array" + } + }, + "type": "object" + }, "ListPythonPackagesResponse": { "description": "The response from listing python packages.", "id": "ListPythonPackagesResponse", @@ -4206,6 +4387,65 @@ }, "type": "object" }, + "PrewarmArtifactRequest": { + "description": "The request for prewarming an artifact for streaming.", + "id": "PrewarmArtifactRequest", + "properties": { + "force": { + "description": "Optional. If true, old artifact will be evicted to make room for the new artifact.", + "type": "boolean" + }, + "retentionDays": { + "description": "Optional. The retention days of the prewarmed artifact. If not specified, the artifact will be cached for 3 days.", + "format": "int64", + "type": "string" + }, + "streamLocation": { + "description": "Optional. The location to cache the artifact in. If not specified, the artifact will be cached in the same location as the artifact. multi-region is not supported for this field.", + "type": "string" + }, + "tag": { + "description": "Optional. The artifact tag Format:projects/{project}/locations/{location}/repositories/{repository}/packages/{package}/tags/{tag}", + "type": "string" + }, + "version": { + "description": "Optional. The artifact version Format: projects/{project}/locations/{location}/repositories/{repository}/packages/{package}/versions/{version}", + "type": "string" + } + }, + "type": "object" + }, + "PrewarmArtifactResponse": { + "description": "The response for prewarming an artifact for streaming.", + "id": "PrewarmArtifactResponse", + "properties": { + "prewarmedArtifact": { + "$ref": "PrewarmedArtifact", + "description": "The prewarmed artifact that was prewarmed." + } + }, + "type": "object" + }, + "PrewarmedArtifact": { + "description": "PrewarmedArtifact represents a streamed artifact.", + "id": "PrewarmedArtifact", + "properties": { + "expirationTime": { + "description": "The expiration time of the prewarmed artifact.", + "format": "google-datetime", + "type": "string" + }, + "location": { + "description": "The location of the prewarmed artifact.", + "type": "string" + }, + "uri": { + "description": "URL to access the image. Example: us-west4-docker.pkg.dev/test-project/test-repo/nginx@sha256:e9954c1fc875017be1c3e36eca16be2d9e9bccc4bf072163515467d6a823c7cf", + "type": "string" + } + }, + "type": "object" + }, "ProjectConfig": { "description": "The Artifact Registry logging configurations that apply to a Project.", "id": "ProjectConfig", @@ -4370,6 +4610,36 @@ }, "type": "object" }, + "RemovePrewarmedArtifactRequest": { + "description": "The request for removing an artifact from streaming.", + "id": "RemovePrewarmedArtifactRequest", + "properties": { + "streamLocation": { + "description": "Optional. The location of the prewarmed artifact. multi-region is not supported for this field.", + "type": "string" + }, + "tag": { + "description": "Optional. The artifact tag Format:projects/{project}/locations/{location}/repositories/{repository}/packages/{package}/tags/{tag}", + "type": "string" + }, + "version": { + "description": "Optional. The artifact version Format: projects/{project}/locations/{location}/repositories/{repository}/packages/{package}/versions/{version}", + "type": "string" + } + }, + "type": "object" + }, + "RemovePrewarmedArtifactResponse": { + "description": "The response for removing an artifact from streaming.", + "id": "RemovePrewarmedArtifactResponse", + "properties": { + "prewarmedArtifact": { + "$ref": "PrewarmedArtifact", + "description": "The prewarmed artifact that was removed." + } + }, + "type": "object" + }, "Repository": { "description": "A Repository for storing artifacts with a specific format.", "id": "Repository", diff --git a/discovery/artifactregistry-v1beta1.json b/discovery/artifactregistry-v1beta1.json index f9afa46a58..531942f735 100644 --- a/discovery/artifactregistry-v1beta1.json +++ b/discovery/artifactregistry-v1beta1.json @@ -376,7 +376,7 @@ ] }, "list": { - "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", + "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.", "flatPath": "v1beta1/projects/{projectsId}/locations", "httpMethod": "GET", "id": "artifactregistry.projects.locations.list", @@ -385,7 +385,7 @@ ], "parameters": { "extraLocationTypes": { - "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.", + "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage.", "location": "query", "repeated": true, "type": "string" @@ -1182,7 +1182,7 @@ } } }, - "revision": "20260320", + "revision": "20260522", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "Binding": { diff --git a/src/apis/artifactregistry/v1.ts b/src/apis/artifactregistry/v1.ts index 14dcaa8eb8..7198e8a9a1 100644 --- a/src/apis/artifactregistry/v1.ts +++ b/src/apis/artifactregistry/v1.ts @@ -250,6 +250,32 @@ export namespace artifactregistry_v1 { * The request message for Operations.CancelOperation. */ export interface Schema$CancelOperationRequest {} + /** + * The request for checking an artifact for streaming. + */ + export interface Schema$CheckPrewarmedArtifactRequest { + /** + * Optional. The location of the prewarmed artifact. multi-region is not supported for this field. + */ + streamLocation?: string | null; + /** + * Optional. The artifact tag Format:projects/{project\}/locations/{location\}/repositories/{repository\}/packages/{package\}/tags/{tag\} + */ + tag?: string | null; + /** + * Optional. The artifact version Format: projects/{project\}/locations/{location\}/repositories/{repository\}/packages/{package\}/versions/{version\} + */ + version?: string | null; + } + /** + * The response for checking an artifact for streaming. + */ + export interface Schema$CheckPrewarmedArtifactResponse { + /** + * The prewarmed artifact that was checked. + */ + prewarmedArtifact?: Schema$PrewarmedArtifact; + } /** * Artifact policy configuration for repository cleanup policies. */ @@ -974,6 +1000,19 @@ export namespace artifactregistry_v1 { */ packages?: Schema$Package[]; } + /** + * The response for listing artifacts for streaming. + */ + export interface Schema$ListPrewarmedArtifactsResponse { + /** + * The token to retrieve the next page of prewarmed artifacts, or empty if there are no more streamings to return. + */ + nextPageToken?: string | null; + /** + * The prewarmed artifacts. + */ + prewarmedArtifacts?: Schema$PrewarmedArtifact[]; + } /** * The response from listing python packages. */ @@ -1249,6 +1288,57 @@ export namespace artifactregistry_v1 { */ version?: number | null; } + /** + * The request for prewarming an artifact for streaming. + */ + export interface Schema$PrewarmArtifactRequest { + /** + * Optional. If true, old artifact will be evicted to make room for the new artifact. + */ + force?: boolean | null; + /** + * Optional. The retention days of the prewarmed artifact. If not specified, the artifact will be cached for 3 days. + */ + retentionDays?: string | null; + /** + * Optional. The location to cache the artifact in. If not specified, the artifact will be cached in the same location as the artifact. multi-region is not supported for this field. + */ + streamLocation?: string | null; + /** + * Optional. The artifact tag Format:projects/{project\}/locations/{location\}/repositories/{repository\}/packages/{package\}/tags/{tag\} + */ + tag?: string | null; + /** + * Optional. The artifact version Format: projects/{project\}/locations/{location\}/repositories/{repository\}/packages/{package\}/versions/{version\} + */ + version?: string | null; + } + /** + * The response for prewarming an artifact for streaming. + */ + export interface Schema$PrewarmArtifactResponse { + /** + * The prewarmed artifact that was prewarmed. + */ + prewarmedArtifact?: Schema$PrewarmedArtifact; + } + /** + * PrewarmedArtifact represents a streamed artifact. + */ + export interface Schema$PrewarmedArtifact { + /** + * The expiration time of the prewarmed artifact. + */ + expirationTime?: string | null; + /** + * The location of the prewarmed artifact. + */ + location?: string | null; + /** + * URL to access the image. Example: us-west4-docker.pkg.dev/test-project/test-repo/nginx@sha256:e9954c1fc875017be1c3e36eca16be2d9e9bccc4bf072163515467d6a823c7cf + */ + uri?: string | null; + } /** * The Artifact Registry logging configurations that apply to a Project. */ @@ -1366,6 +1456,32 @@ export namespace artifactregistry_v1 { */ yumRepository?: Schema$YumRepository; } + /** + * The request for removing an artifact from streaming. + */ + export interface Schema$RemovePrewarmedArtifactRequest { + /** + * Optional. The location of the prewarmed artifact. multi-region is not supported for this field. + */ + streamLocation?: string | null; + /** + * Optional. The artifact tag Format:projects/{project\}/locations/{location\}/repositories/{repository\}/packages/{package\}/tags/{tag\} + */ + tag?: string | null; + /** + * Optional. The artifact version Format: projects/{project\}/locations/{location\}/repositories/{repository\}/packages/{package\}/versions/{version\} + */ + version?: string | null; + } + /** + * The response for removing an artifact from streaming. + */ + export interface Schema$RemovePrewarmedArtifactResponse { + /** + * The prewarmed artifact that was removed. + */ + prewarmedArtifact?: Schema$PrewarmedArtifact; + } /** * A Repository for storing artifacts with a specific format. */ @@ -2596,7 +2712,7 @@ export namespace artifactregistry_v1 { } /** - * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -2629,7 +2745,7 @@ export namespace artifactregistry_v1 { * * // Do the magic * const res = await artifactregistry.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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', @@ -3064,7 +3180,7 @@ export namespace artifactregistry_v1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** @@ -3434,6 +3550,7 @@ export namespace artifactregistry_v1 { mavenArtifacts: Resource$Projects$Locations$Repositories$Mavenartifacts; npmPackages: Resource$Projects$Locations$Repositories$Npmpackages; packages: Resource$Projects$Locations$Repositories$Packages; + prewarmedArtifacts: Resource$Projects$Locations$Repositories$Prewarmedartifacts; pythonPackages: Resource$Projects$Locations$Repositories$Pythonpackages; rules: Resource$Projects$Locations$Repositories$Rules; yumArtifacts: Resource$Projects$Locations$Repositories$Yumartifacts; @@ -3470,6 +3587,10 @@ export namespace artifactregistry_v1 { this.packages = new Resource$Projects$Locations$Repositories$Packages( this.context ); + this.prewarmedArtifacts = + new Resource$Projects$Locations$Repositories$Prewarmedartifacts( + this.context + ); this.pythonPackages = new Resource$Projects$Locations$Repositories$Pythonpackages( this.context @@ -3481,6 +3602,168 @@ export namespace artifactregistry_v1 { new Resource$Projects$Locations$Repositories$Yumartifacts(this.context); } + /** + * Checks an artifact streaming. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('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/cloud-platform.read-only', + * ], + * }); + * + * // 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 artifactregistry.projects.locations.repositories.checkPrewarmedArtifact( + * { + * // Required. The name of the repository, for example: `projects/p1/locations/us-central1/repositories/repo1`. If the package or version ID parts contain slashes, the slashes are escaped. + * repository: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "streamLocation": "my_streamLocation", + * // "tag": "my_tag", + * // "version": "my_version" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "prewarmedArtifact": {} + * // } + * } + * + * 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. + */ + checkPrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact, + options: StreamMethodOptions + ): Promise>; + checkPrewarmedArtifact( + params?: Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact, + options?: MethodOptions + ): Promise>; + checkPrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + checkPrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + checkPrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact, + callback: BodyResponseCallback + ): void; + checkPrewarmedArtifact( + callback: BodyResponseCallback + ): void; + checkPrewarmedArtifact( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+repository}:checkPrewarmedArtifact').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['repository'], + pathParams: ['repository'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Creates a repository. The returned Operation will finish once the repository has been created. Its response will be the created Repository. * @example @@ -4473,27 +4756,339 @@ export namespace artifactregistry_v1 { * * // Example response * // { - * // "cleanupPolicies": {}, - * // "cleanupPolicyDryRun": false, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "disallowUnspecifiedMode": false, - * // "dockerConfig": {}, - * // "format": "my_format", - * // "kmsKeyName": "my_kmsKeyName", - * // "labels": {}, - * // "mavenConfig": {}, - * // "mode": "my_mode", - * // "name": "my_name", - * // "platformLogsConfig": {}, - * // "registryUri": "my_registryUri", - * // "remoteRepositoryConfig": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "sizeBytes": "my_sizeBytes", - * // "updateTime": "my_updateTime", - * // "virtualRepositoryConfig": {}, - * // "vulnerabilityScanningConfig": {} + * // "cleanupPolicies": {}, + * // "cleanupPolicyDryRun": false, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "disallowUnspecifiedMode": false, + * // "dockerConfig": {}, + * // "format": "my_format", + * // "kmsKeyName": "my_kmsKeyName", + * // "labels": {}, + * // "mavenConfig": {}, + * // "mode": "my_mode", + * // "name": "my_name", + * // "platformLogsConfig": {}, + * // "registryUri": "my_registryUri", + * // "remoteRepositoryConfig": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "sizeBytes": "my_sizeBytes", + * // "updateTime": "my_updateTime", + * // "virtualRepositoryConfig": {}, + * // "vulnerabilityScanningConfig": {} + * // } + * } + * + * 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$Repositories$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Projects$Locations$Repositories$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Repositories$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Repositories$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Prewarms an artifact for streaming. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('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/cloud-platform.read-only', + * ], + * }); + * + * // 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 artifactregistry.projects.locations.repositories.prewarmArtifact({ + * // Required. The repository name, for example: `projects/p1/locations/us-central1/repositories/repo1`. If the package or version ID parts contain slashes, the slashes are escaped. + * repository: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "force": false, + * // "retentionDays": "my_retentionDays", + * // "streamLocation": "my_streamLocation", + * // "tag": "my_tag", + * // "version": "my_version" + * // } + * }, + * }); + * 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. + */ + prewarmArtifact( + params: Params$Resource$Projects$Locations$Repositories$Prewarmartifact, + options: StreamMethodOptions + ): Promise>; + prewarmArtifact( + params?: Params$Resource$Projects$Locations$Repositories$Prewarmartifact, + options?: MethodOptions + ): Promise>; + prewarmArtifact( + params: Params$Resource$Projects$Locations$Repositories$Prewarmartifact, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + prewarmArtifact( + params: Params$Resource$Projects$Locations$Repositories$Prewarmartifact, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + prewarmArtifact( + params: Params$Resource$Projects$Locations$Repositories$Prewarmartifact, + callback: BodyResponseCallback + ): void; + prewarmArtifact(callback: BodyResponseCallback): void; + prewarmArtifact( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Prewarmartifact + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Prewarmartifact; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Prewarmartifact; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+repository}:prewarmArtifact').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['repository'], + pathParams: ['repository'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Removes an artifact from streaming. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('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/cloud-platform.read-only', + * ], + * }); + * + * // 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 artifactregistry.projects.locations.repositories.removePrewarmedArtifact( + * { + * // Required. The repository name, for example: `projects/p1/locations/us-central1/repositories/repo1`. + * repository: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "streamLocation": "my_streamLocation", + * // "tag": "my_tag", + * // "version": "my_version" + * // } + * }, + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "prewarmedArtifact": {} * // } * } * @@ -4509,53 +5104,58 @@ export namespace artifactregistry_v1 { * @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$Repositories$Patch, + removePrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Repositories$Patch, + removePrewarmedArtifact( + params?: Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Repositories$Patch, + ): Promise>; + removePrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + removePrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Repositories$Patch, - callback: BodyResponseCallback + removePrewarmedArtifact( + params: Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + removePrewarmedArtifact( + callback: BodyResponseCallback + ): void; + removePrewarmedArtifact( paramsOrCallback?: - | Params$Resource$Projects$Locations$Repositories$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Repositories$Patch; + {}) as Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Repositories$Patch; + params = + {} as Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact; options = {}; } @@ -4569,24 +5169,28 @@ export namespace artifactregistry_v1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: ( + rootUrl + '/v1/{+repository}:removePrewarmedArtifact' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['repository'], + pathParams: ['repository'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } @@ -4898,6 +5502,17 @@ export namespace artifactregistry_v1 { } } + export interface Params$Resource$Projects$Locations$Repositories$Checkprewarmedartifact extends StandardParameters { + /** + * Required. The name of the repository, for example: `projects/p1/locations/us-central1/repositories/repo1`. If the package or version ID parts contain slashes, the slashes are escaped. + */ + repository?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CheckPrewarmedArtifactRequest; + } export interface Params$Resource$Projects$Locations$Repositories$Create extends StandardParameters { /** * Required. The name of the parent resource where the repository will be created. @@ -4983,6 +5598,28 @@ export namespace artifactregistry_v1 { */ requestBody?: Schema$Repository; } + export interface Params$Resource$Projects$Locations$Repositories$Prewarmartifact extends StandardParameters { + /** + * Required. The repository name, for example: `projects/p1/locations/us-central1/repositories/repo1`. If the package or version ID parts contain slashes, the slashes are escaped. + */ + repository?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PrewarmArtifactRequest; + } + export interface Params$Resource$Projects$Locations$Repositories$Removeprewarmedartifact extends StandardParameters { + /** + * Required. The repository name, for example: `projects/p1/locations/us-central1/repositories/repo1`. + */ + repository?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RemovePrewarmedArtifactRequest; + } export interface Params$Resource$Projects$Locations$Repositories$Setiampolicy extends StandardParameters { /** * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. @@ -11292,6 +11929,191 @@ export namespace artifactregistry_v1 { requestBody?: Schema$Version; } + export class Resource$Projects$Locations$Repositories$Prewarmedartifacts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Lists all streamed artifacts in a repository. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/artifactregistry.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const artifactregistry = google.artifactregistry('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/cloud-platform.read-only', + * ], + * }); + * + * // 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 artifactregistry.projects.locations.repositories.prewarmedArtifacts.list( + * { + * // Optional. Filter should only support The location of the prewarmed artifacts. multi-region is not supported for this field. + * filter: 'placeholder-value', + * // Optional. The maximum number of prewarmed artifacts to return. Maximum page size is 1,000. Default page size is 100. + * pageSize: 'placeholder-value', + * // Optional. The next_page_token value returned from a previous list request, if any. + * pageToken: 'placeholder-value', + * // Required. The repository of the artifact to list. Format: projects/{project\}/locations/{location\}/repositories/{repository\} + * parent: + * 'projects/my-project/locations/my-location/repositories/my-repositorie', + * }, + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "prewarmedArtifacts": [] + * // } + * } + * + * 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$Repositories$Prewarmedartifacts$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://artifactregistry.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1/{+parent}/prewarmedArtifacts').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Repositories$Prewarmedartifacts$List extends StandardParameters { + /** + * Optional. Filter should only support The location of the prewarmed artifacts. multi-region is not supported for this field. + */ + filter?: string; + /** + * Optional. The maximum number of prewarmed artifacts to return. Maximum page size is 1,000. Default page size is 100. + */ + pageSize?: number; + /** + * Optional. The next_page_token value returned from a previous list request, if any. + */ + pageToken?: string; + /** + * Required. The repository of the artifact to list. Format: projects/{project\}/locations/{location\}/repositories/{repository\} + */ + parent?: string; + } + export class Resource$Projects$Locations$Repositories$Pythonpackages { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/artifactregistry/v1beta1.ts b/src/apis/artifactregistry/v1beta1.ts index 023476b39b..e1598d56f1 100644 --- a/src/apis/artifactregistry/v1beta1.ts +++ b/src/apis/artifactregistry/v1beta1.ts @@ -668,7 +668,7 @@ export namespace artifactregistry_v1beta1 { } /** - * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the [ListLocationsRequest.name] field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -701,7 +701,7 @@ export namespace artifactregistry_v1beta1 { * * // Do the magic * const res = await artifactregistry.projects.locations.list({ - * // Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. * extraLocationTypes: 'placeholder-value', * // 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', @@ -828,7 +828,7 @@ export namespace artifactregistry_v1beta1 { } export interface Params$Resource$Projects$Locations$List extends StandardParameters { /** - * Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. */ extraLocationTypes?: string[]; /** From 89fa7536a9406c60c62d76255581598a83a64166 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 07/29] feat(chromemanagement): update the API #### chromemanagement:v1 The following keys were added: - resources.customers.resources.reports.methods.countChromeProfileVersions.description - resources.customers.resources.reports.methods.countChromeProfileVersions.flatPath - resources.customers.resources.reports.methods.countChromeProfileVersions.httpMethod - resources.customers.resources.reports.methods.countChromeProfileVersions.id - resources.customers.resources.reports.methods.countChromeProfileVersions.parameterOrder - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.customer.description - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.customer.location - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.customer.pattern - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.customer.required - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.customer.type - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.filter.description - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.filter.location - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.filter.type - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.orgUnitId.description - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.orgUnitId.location - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.orgUnitId.type - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageSize.description - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageSize.format - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageSize.location - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageSize.type - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageToken.description - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageToken.location - resources.customers.resources.reports.methods.countChromeProfileVersions.parameters.pageToken.type - resources.customers.resources.reports.methods.countChromeProfileVersions.path - resources.customers.resources.reports.methods.countChromeProfileVersions.response.$ref - resources.customers.resources.reports.methods.countChromeProfileVersions.scopes - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.description - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.id - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.nextPageToken.description - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.nextPageToken.type - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.profileBrowserVersions.description - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.profileBrowserVersions.items.$ref - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.profileBrowserVersions.type - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.totalSize.description - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.totalSize.format - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.properties.totalSize.type - schemas.GoogleChromeManagementV1CountChromeProfileVersionsResponse.type --- discovery/chromemanagement-v1.json | 71 +++++++++- src/apis/chromemanagement/v1.ts | 200 +++++++++++++++++++++++++++++ 2 files changed, 270 insertions(+), 1 deletion(-) diff --git a/discovery/chromemanagement-v1.json b/discovery/chromemanagement-v1.json index 6de1c51c72..c4742a673c 100644 --- a/discovery/chromemanagement-v1.json +++ b/discovery/chromemanagement-v1.json @@ -1152,6 +1152,52 @@ "https://www.googleapis.com/auth/chrome.management.reports.readonly" ] }, + "countChromeProfileVersions": { + "description": "Generate report of installed Chrome versions on managed profiles.", + "flatPath": "v1/customers/{customersId}/reports:countChromeProfileVersions", + "httpMethod": "GET", + "id": "chromemanagement.customers.reports.countChromeProfileVersions", + "parameterOrder": [ + "customer" + ], + "parameters": { + "customer": { + "description": "Required. Customer id or \"my_customer\" to use the customer associated to the account making the request.", + "location": "path", + "pattern": "^customers/[^/]+$", + "required": true, + "type": "string" + }, + "filter": { + "description": "Optional. Query string to filter results, AND-separated fields in EBNF syntax. Note: OR operations are not supported in this filter. Supported filter fields: * last_active_date", + "location": "query", + "type": "string" + }, + "orgUnitId": { + "description": "The ID of the organizational unit. If omitted, all data will be returned.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of results to return. Maximum and default are 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Token to specify the page of the request to be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+customer}/reports:countChromeProfileVersions", + "response": { + "$ref": "GoogleChromeManagementV1CountChromeProfileVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/chrome.management.reports.readonly" + ] + }, "countChromeVersions": { "description": "Generate report of installed Chrome versions.", "flatPath": "v1/customers/{customersId}/reports:countChromeVersions", @@ -2085,7 +2131,7 @@ } } }, - "revision": "20260520", + "revision": "20260528", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { @@ -2988,6 +3034,29 @@ }, "type": "object" }, + "GoogleChromeManagementV1CountChromeProfileVersionsResponse": { + "description": "Response containing requested managed profile versions details and counts.", + "id": "GoogleChromeManagementV1CountChromeProfileVersionsResponse", + "properties": { + "nextPageToken": { + "description": "Token to specify the next page of the request.", + "type": "string" + }, + "profileBrowserVersions": { + "description": "List of all browser versions reported for profiles and their install counts.", + "items": { + "$ref": "GoogleChromeManagementV1BrowserVersion" + }, + "type": "array" + }, + "totalSize": { + "description": "Total number browser versions matching request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleChromeManagementV1CountChromeVersionsResponse": { "description": "Response containing requested browser versions details and counts.", "id": "GoogleChromeManagementV1CountChromeVersionsResponse", diff --git a/src/apis/chromemanagement/v1.ts b/src/apis/chromemanagement/v1.ts index a271fd3da1..4641eaf700 100644 --- a/src/apis/chromemanagement/v1.ts +++ b/src/apis/chromemanagement/v1.ts @@ -685,6 +685,23 @@ export namespace chromemanagement_v1 { */ storageReports?: Schema$GoogleChromeManagementV1DeviceHardwareCountReport[]; } + /** + * Response containing requested managed profile versions details and counts. + */ + export interface Schema$GoogleChromeManagementV1CountChromeProfileVersionsResponse { + /** + * Token to specify the next page of the request. + */ + nextPageToken?: string | null; + /** + * List of all browser versions reported for profiles and their install counts. + */ + profileBrowserVersions?: Schema$GoogleChromeManagementV1BrowserVersion[]; + /** + * Total number browser versions matching request. + */ + totalSize?: number | null; + } /** * Response containing requested browser versions details and counts. */ @@ -8965,6 +8982,167 @@ export namespace chromemanagement_v1 { } } + /** + * Generate report of installed Chrome versions on managed profiles. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/chromemanagement.googleapis.com + * // - Login into gcloud by running: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const chromemanagement = google.chromemanagement('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/chrome.management.reports.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 chromemanagement.customers.reports.countChromeProfileVersions({ + * // Required. Customer id or "my_customer" to use the customer associated to the account making the request. + * customer: 'customers/my-customer', + * // Optional. Query string to filter results, AND-separated fields in EBNF syntax. Note: OR operations are not supported in this filter. Supported filter fields: * last_active_date + * filter: 'placeholder-value', + * // The ID of the organizational unit. If omitted, all data will be returned. + * orgUnitId: 'placeholder-value', + * // Optional. Maximum number of results to return. Maximum and default are 100. + * pageSize: 'placeholder-value', + * // Optional. Token to specify the page of the request to be returned. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "profileBrowserVersions": [], + * // "totalSize": 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. + */ + countChromeProfileVersions( + params: Params$Resource$Customers$Reports$Countchromeprofileversions, + options: StreamMethodOptions + ): Promise>; + countChromeProfileVersions( + params?: Params$Resource$Customers$Reports$Countchromeprofileversions, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + countChromeProfileVersions( + params: Params$Resource$Customers$Reports$Countchromeprofileversions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countChromeProfileVersions( + params: Params$Resource$Customers$Reports$Countchromeprofileversions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + countChromeProfileVersions( + params: Params$Resource$Customers$Reports$Countchromeprofileversions, + callback: BodyResponseCallback + ): void; + countChromeProfileVersions( + callback: BodyResponseCallback + ): void; + countChromeProfileVersions( + paramsOrCallback?: + | Params$Resource$Customers$Reports$Countchromeprofileversions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Customers$Reports$Countchromeprofileversions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Customers$Reports$Countchromeprofileversions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://chromemanagement.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/v1/{+customer}/reports:countChromeProfileVersions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['customer'], + pathParams: ['customer'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** * Generate report of installed Chrome versions. * @example @@ -10518,6 +10696,28 @@ export namespace chromemanagement_v1 { */ readMask?: string; } + export interface Params$Resource$Customers$Reports$Countchromeprofileversions extends StandardParameters { + /** + * Required. Customer id or "my_customer" to use the customer associated to the account making the request. + */ + customer?: string; + /** + * Optional. Query string to filter results, AND-separated fields in EBNF syntax. Note: OR operations are not supported in this filter. Supported filter fields: * last_active_date + */ + filter?: string; + /** + * The ID of the organizational unit. If omitted, all data will be returned. + */ + orgUnitId?: string; + /** + * Optional. Maximum number of results to return. Maximum and default are 100. + */ + pageSize?: number; + /** + * Optional. Token to specify the page of the request to be returned. + */ + pageToken?: string; + } export interface Params$Resource$Customers$Reports$Countchromeversions extends StandardParameters { /** * Required. Customer id or "my_customer" to use the customer associated to the account making the request. From b573c5e5e383ecbf35fcc608ad35f5bad5830631 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 08/29] feat(cloudkms): update the API #### cloudkms:v1 The following keys were added: - schemas.AutokeyConfig.properties.state.enumDeprecated The following keys were changed: - resources.folders.methods.getAutokeyConfig.parameters.name.description - resources.folders.methods.updateAutokeyConfig.parameters.name.description - resources.projects.methods.getAutokeyConfig.parameters.name.description - resources.projects.methods.updateAutokeyConfig.parameters.name.description - schemas.AutokeyConfig.properties.name.description - schemas.AutokeyConfig.properties.state.enum - schemas.AutokeyConfig.properties.state.enumDescriptions --- discovery/cloudkms-v1.json | 25 +++++++++++++++++-------- src/apis/cloudkms/v1.ts | 18 +++++++++--------- 2 files changed, 26 insertions(+), 17 deletions(-) diff --git a/discovery/cloudkms-v1.json b/discovery/cloudkms-v1.json index 2e54f51571..f96b0519ee 100644 --- a/discovery/cloudkms-v1.json +++ b/discovery/cloudkms-v1.json @@ -227,7 +227,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or `projects/{PROJECT_NUMBER}/autokeyConfig`.", + "description": "Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`, `projects/{PROJECT_NUMBER}/autokeyConfig`, or `projects/{PROJECT_ID}/autokeyConfig`.", "location": "path", "pattern": "^folders/[^/]+/autokeyConfig$", "required": true, @@ -279,7 +279,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or `projects/{PROJECT_NUMBER}/autokeyConfig`.", + "description": "Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`, `projects/{PROJECT_NUMBER}/autokeyConfig`, or `projects/{PROJECT_ID}/autokeyConfig`.", "location": "path", "pattern": "^folders/[^/]+/autokeyConfig$", "required": true, @@ -418,7 +418,7 @@ ], "parameters": { "name": { - "description": "Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or `projects/{PROJECT_NUMBER}/autokeyConfig`.", + "description": "Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`, `projects/{PROJECT_NUMBER}/autokeyConfig`, or `projects/{PROJECT_ID}/autokeyConfig`.", "location": "path", "pattern": "^projects/[^/]+/autokeyConfig$", "required": true, @@ -548,7 +548,7 @@ ], "parameters": { "name": { - "description": "Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or `projects/{PROJECT_NUMBER}/autokeyConfig`.", + "description": "Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`, `projects/{PROJECT_NUMBER}/autokeyConfig`, or `projects/{PROJECT_ID}/autokeyConfig`.", "location": "path", "pattern": "^projects/[^/]+/autokeyConfig$", "required": true, @@ -2967,7 +2967,7 @@ } } }, - "revision": "20260514", + "revision": "20260522", "rootUrl": "https://cloudkms.googleapis.com/", "schemas": { "AddQuorumMember": { @@ -3212,7 +3212,7 @@ "type": "string" }, "name": { - "description": "Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or `projects/{PROJECT_NUMBER}/autokeyConfig`.", + "description": "Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`, `projects/{PROJECT_NUMBER}/autokeyConfig`, or `projects/{PROJECT_ID}/autokeyConfig`.", "type": "string" }, "state": { @@ -3221,13 +3221,22 @@ "STATE_UNSPECIFIED", "ACTIVE", "KEY_PROJECT_DELETED", - "UNINITIALIZED" + "UNINITIALIZED", + "KEY_PROJECT_PERMISSION_DENIED" + ], + "enumDeprecated": [ + false, + false, + false, + false, + true ], "enumDescriptions": [ "The state of the AutokeyConfig is unspecified.", "The AutokeyConfig is currently active.", "A previously configured key project has been deleted and the current AutokeyConfig is unusable.", - "The AutokeyConfig is not yet initialized or has been reset to its default uninitialized state." + "The AutokeyConfig is not yet initialized or has been reset to its default uninitialized state.", + "Deprecated: This state is not returned by the backend." ], "readOnly": true, "type": "string" diff --git a/src/apis/cloudkms/v1.ts b/src/apis/cloudkms/v1.ts index 83c08e8fba..2deff532da 100644 --- a/src/apis/cloudkms/v1.ts +++ b/src/apis/cloudkms/v1.ts @@ -281,7 +281,7 @@ export namespace cloudkms_v1 { */ keyProjectResolutionMode?: string | null; /** - * Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. */ name?: string | null; /** @@ -1895,7 +1895,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.folders.getAutokeyConfig({ - * // Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * // Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. * name: 'folders/my-folder/autokeyConfig', * }); * console.log(res.data); @@ -2187,7 +2187,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.folders.updateAutokeyConfig({ - * // Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * // Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. * name: 'folders/my-folder/autokeyConfig', * // Required. Masks which fields of the AutokeyConfig to update, e.g. `keyProject`. * updateMask: 'placeholder-value', @@ -2474,7 +2474,7 @@ export namespace cloudkms_v1 { export interface Params$Resource$Folders$Getautokeyconfig extends StandardParameters { /** - * Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. */ name?: string; } @@ -2486,7 +2486,7 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Folders$Updateautokeyconfig extends StandardParameters { /** - * Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. */ name?: string; /** @@ -2896,7 +2896,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.projects.getAutokeyConfig({ - * // Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * // Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. * name: 'projects/my-project/autokeyConfig', * }); * console.log(res.data); @@ -3646,7 +3646,7 @@ export namespace cloudkms_v1 { * * // Do the magic * const res = await cloudkms.projects.updateAutokeyConfig({ - * // Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * // Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. * name: 'projects/my-project/autokeyConfig', * // Required. Masks which fields of the AutokeyConfig to update, e.g. `keyProject`. * updateMask: 'placeholder-value', @@ -3933,7 +3933,7 @@ export namespace cloudkms_v1 { export interface Params$Resource$Projects$Getautokeyconfig extends StandardParameters { /** - * Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * Required. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. */ name?: string; } @@ -3963,7 +3963,7 @@ export namespace cloudkms_v1 { } export interface Params$Resource$Projects$Updateautokeyconfig extends StandardParameters { /** - * Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig` or `projects/{PROJECT_NUMBER\}/autokeyConfig`. + * Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER\}/autokeyConfig`, `projects/{PROJECT_NUMBER\}/autokeyConfig`, or `projects/{PROJECT_ID\}/autokeyConfig`. */ name?: string; /** From 428a83e3187b34763a825c087924b663d5219d68 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 09/29] fix(cloudtasks): update the API #### cloudtasks:v2beta3 The following keys were changed: - schemas.RateLimits.properties.maxDispatchesPerSecond.description - schemas.RetryConfig.properties.maxAttempts.description - schemas.RetryConfig.properties.maxBackoff.description - schemas.RetryConfig.properties.maxRetryDuration.description - schemas.RetryConfig.properties.minBackoff.description #### cloudtasks:v2 The following keys were changed: - schemas.RateLimits.properties.maxDispatchesPerSecond.description - schemas.RetryConfig.properties.maxAttempts.description - schemas.RetryConfig.properties.maxBackoff.description - schemas.RetryConfig.properties.maxRetryDuration.description - schemas.RetryConfig.properties.minBackoff.description --- discovery/cloudtasks-v2.json | 12 ++++++------ discovery/cloudtasks-v2beta3.json | 12 ++++++------ src/apis/cloudtasks/v2.ts | 10 +++++----- src/apis/cloudtasks/v2beta3.ts | 10 +++++----- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/discovery/cloudtasks-v2.json b/discovery/cloudtasks-v2.json index a289bad3f8..6426ca6d71 100644 --- a/discovery/cloudtasks-v2.json +++ b/discovery/cloudtasks-v2.json @@ -785,7 +785,7 @@ } } }, - "revision": "20260423", + "revision": "20260512", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AppEngineHttpRequest": { @@ -1426,7 +1426,7 @@ "type": "integer" }, "maxDispatchesPerSecond": { - "description": "The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. * The maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).", + "description": "The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. The maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).", "format": "double", "type": "number" } @@ -1444,12 +1444,12 @@ "id": "RetryConfig", "properties": { "maxAttempts": { - "description": "Number of attempts per task. Cloud Tasks will attempt the task `max_attempts` times (that is, if the first attempt fails, then there will be `max_attempts - 1` retries). Must be >= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). Note: Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If you want your task to retry infinitely, you must set `max_attempts` to -1 and `max_retry_duration` to 0.", + "description": "Number of attempts per task, including the first attempt. (If the first attempt fails, there will be `max_attempts - 1` retries.) Must be greater than or equal to -1, which indicates unlimited attempts. Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied, or when the task is successfully executed. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If `max_attempts` is set to -1 and `max_retry_duration` is set to 0, the task is retried until the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit is reached. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "int32", "type": "integer" }, "maxBackoff": { - "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "google-duration", "type": "string" }, @@ -1459,12 +1459,12 @@ "type": "integer" }, "maxRetryDuration": { - "description": "If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts are made and the task is deleted. A zero (0) indicates an unlimited duration, up to the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "google-duration", "type": "string" }, "minBackoff": { - "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "google-duration", "type": "string" } diff --git a/discovery/cloudtasks-v2beta3.json b/discovery/cloudtasks-v2beta3.json index b90b870cd7..950613f91f 100644 --- a/discovery/cloudtasks-v2beta3.json +++ b/discovery/cloudtasks-v2beta3.json @@ -797,7 +797,7 @@ } } }, - "revision": "20260423", + "revision": "20260512", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AppEngineHttpQueue": { @@ -1531,7 +1531,7 @@ "type": "integer" }, "maxDispatchesPerSecond": { - "description": "The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. * For App Engine queues, the maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).", + "description": "The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. For App Engine queues, the maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).", "format": "double", "type": "number" } @@ -1549,12 +1549,12 @@ "id": "RetryConfig", "properties": { "maxAttempts": { - "description": "Number of attempts per task. Cloud Tasks will attempt the task `max_attempts` times (that is, if the first attempt fails, then there will be `max_attempts - 1` retries). Must be >= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). Note: Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If you want your task to retry infinitely, you must set `max_attempts` to -1 and `max_retry_duration` to 0.", + "description": "Number of attempts per task, including the first attempt. (If the first attempt fails, there will be `max_attempts - 1` retries.) Must be greater than or equal to -1, which indicates unlimited attempts. Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied, or when the task is successfully executed. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If `max_attempts` is set to -1 and `max_retry_duration` is set to 0, the task is retried until the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit is reached. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "int32", "type": "integer" }, "maxBackoff": { - "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "google-duration", "type": "string" }, @@ -1564,12 +1564,12 @@ "type": "integer" }, "maxRetryDuration": { - "description": "If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts are made and the task is deleted. A zero (0) indicates an unlimited duration, up to the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "google-duration", "type": "string" }, "minBackoff": { - "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", + "description": "A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for \"seconds\"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).", "format": "google-duration", "type": "string" } diff --git a/src/apis/cloudtasks/v2.ts b/src/apis/cloudtasks/v2.ts index f4101b5858..7c4df34cc2 100644 --- a/src/apis/cloudtasks/v2.ts +++ b/src/apis/cloudtasks/v2.ts @@ -571,7 +571,7 @@ export namespace cloudtasks_v2 { */ maxConcurrentDispatches?: number | null; /** - * The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. * The maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate). + * The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. The maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate). */ maxDispatchesPerSecond?: number | null; } @@ -584,11 +584,11 @@ export namespace cloudtasks_v2 { */ export interface Schema$RetryConfig { /** - * Number of attempts per task. Cloud Tasks will attempt the task `max_attempts` times (that is, if the first attempt fails, then there will be `max_attempts - 1` retries). Must be \>= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). Note: Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If you want your task to retry infinitely, you must set `max_attempts` to -1 and `max_retry_duration` to 0. + * Number of attempts per task, including the first attempt. (If the first attempt fails, there will be `max_attempts - 1` retries.) Must be greater than or equal to -1, which indicates unlimited attempts. Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied, or when the task is successfully executed. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If `max_attempts` is set to -1 and `max_retry_duration` is set to 0, the task is retried until the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit is reached. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ maxAttempts?: number | null; /** - * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). + * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ maxBackoff?: string | null; /** @@ -596,11 +596,11 @@ export namespace cloudtasks_v2 { */ maxDoublings?: number | null; /** - * If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). + * If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts are made and the task is deleted. A zero (0) indicates an unlimited duration, up to the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ maxRetryDuration?: string | null; /** - * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). + * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ minBackoff?: string | null; } diff --git a/src/apis/cloudtasks/v2beta3.ts b/src/apis/cloudtasks/v2beta3.ts index 62a2801d06..c10f3c0965 100644 --- a/src/apis/cloudtasks/v2beta3.ts +++ b/src/apis/cloudtasks/v2beta3.ts @@ -634,7 +634,7 @@ export namespace cloudtasks_v2beta3 { */ maxConcurrentDispatches?: number | null; /** - * The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. * For App Engine queues, the maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate). + * The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default. For App Engine queues, the maximum allowed value is 500. This field has the same meaning as [rate in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate). */ maxDispatchesPerSecond?: number | null; } @@ -647,11 +647,11 @@ export namespace cloudtasks_v2beta3 { */ export interface Schema$RetryConfig { /** - * Number of attempts per task. Cloud Tasks will attempt the task `max_attempts` times (that is, if the first attempt fails, then there will be `max_attempts - 1` retries). Must be \>= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). Note: Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If you want your task to retry infinitely, you must set `max_attempts` to -1 and `max_retry_duration` to 0. + * Number of attempts per task, including the first attempt. (If the first attempt fails, there will be `max_attempts - 1` retries.) Must be greater than or equal to -1, which indicates unlimited attempts. Cloud Tasks stops retrying only when `max_attempts` and `max_retry_duration` are both satisfied, or when the task is successfully executed. When the task has been attempted `max_attempts` times and when the `max_retry_duration` time has passed, no further attempts are made, and the task is deleted. If `max_attempts` is set to -1 and `max_retry_duration` is set to 0, the task is retried until the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit is reached. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_retry_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ maxAttempts?: number | null; /** - * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). + * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [max_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ maxBackoff?: string | null; /** @@ -659,11 +659,11 @@ export namespace cloudtasks_v2beta3 { */ maxDoublings?: number | null; /** - * If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). + * If positive, `max_retry_duration` specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once `max_retry_duration` time has passed *and* the task has been attempted max_attempts times, no further attempts are made and the task is deleted. A zero (0) indicates an unlimited duration, up to the [maximum task retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For the maximum possible value or the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `max_retry_duration` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [task_age_limit in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ maxRetryDuration?: string | null; /** - * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. If unspecified when the queue is created, Cloud Tasks will pick the default. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). + * A task will be scheduled for retry between min_backoff and max_backoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried. The value must be given as a string that indicates the length of time (in seconds) followed by `s` (for "seconds"). For more information on the format, see the documentation for [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration). `min_backoff` will be truncated to the nearest second. If unspecified when the queue is created, Cloud Tasks will pick the default. This field has the same meaning as [min_backoff_seconds in queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters). */ minBackoff?: string | null; } From 0ee98a1246affb8798f383db753528b121869c07 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:08 +0000 Subject: [PATCH 10/29] feat(composer): update the API #### composer:v1beta1 The following keys were added: - schemas.UserWorkloadsSecret.properties.type.description - schemas.UserWorkloadsSecret.properties.type.type --- discovery/composer-v1beta1.json | 6 +++++- src/apis/composer/v1beta1.ts | 19 ++++++++++++++----- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/discovery/composer-v1beta1.json b/discovery/composer-v1beta1.json index 77e46c52ef..d081e8bd60 100644 --- a/discovery/composer-v1beta1.json +++ b/discovery/composer-v1beta1.json @@ -1278,7 +1278,7 @@ } } }, - "revision": "20260423", + "revision": "20260525", "rootUrl": "https://composer.googleapis.com/", "schemas": { "AirflowMetadataRetentionPolicyConfig": { @@ -2810,6 +2810,10 @@ "name": { "description": "Identifier. The resource name of the Secret, in the form: \"projects/{projectId}/locations/{locationId}/environments/{environmentId}/userWorkloadsSecrets/{userWorkloadsSecretId}\"", "type": "string" + }, + "type": { + "description": "Optional. The \"type\" field of Kubernetes Secret. For details see: https://kubernetes.io/docs/concepts/configuration/secret/#secret-types", + "type": "string" } }, "type": "object" diff --git a/src/apis/composer/v1beta1.ts b/src/apis/composer/v1beta1.ts index 1977a368c1..438a79ab32 100644 --- a/src/apis/composer/v1beta1.ts +++ b/src/apis/composer/v1beta1.ts @@ -1210,6 +1210,10 @@ export namespace composer_v1beta1 { * Identifier. The resource name of the Secret, in the form: "projects/{projectId\}/locations/{locationId\}/environments/{environmentId\}/userWorkloadsSecrets/{userWorkloadsSecretId\}" */ name?: string | null; + /** + * Optional. The "type" field of Kubernetes Secret. For details see: https://kubernetes.io/docs/concepts/configuration/secret/#secret-types + */ + type?: string | null; } /** * The configuration settings for the Airflow web server App Engine instance. Supported for Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*. @@ -4508,7 +4512,8 @@ export namespace composer_v1beta1 { * // request body parameters * // { * // "data": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "type": "my_type" * // } * }, * }); @@ -4517,7 +4522,8 @@ export namespace composer_v1beta1 { * // Example response * // { * // "data": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "type": "my_type" * // } * } * @@ -4798,7 +4804,8 @@ export namespace composer_v1beta1 { * // Example response * // { * // "data": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "type": "my_type" * // } * } * @@ -5097,7 +5104,8 @@ export namespace composer_v1beta1 { * // request body parameters * // { * // "data": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "type": "my_type" * // } * }, * }); @@ -5106,7 +5114,8 @@ export namespace composer_v1beta1 { * // Example response * // { * // "data": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "type": "my_type" * // } * } * From 62f26dea4d6f26d49a73216b9143e49e13626cf6 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:09 +0000 Subject: [PATCH 11/29] feat(compute)!: update the API BREAKING CHANGE: This release has breaking changes. #### compute:alpha The following keys were deleted: - schemas.HaControllersFailoverRequest.properties.primaryZone.deprecated - schemas.HaControllersFailoverRequest.properties.primaryZone.description - schemas.HaControllersFailoverRequest.properties.primaryZone.pattern - schemas.HaControllersFailoverRequest.properties.primaryZone.type The following keys were added: - resources.folderZoneVmExtensionPolicies.methods.delete.description - resources.folderZoneVmExtensionPolicies.methods.delete.flatPath - resources.folderZoneVmExtensionPolicies.methods.delete.httpMethod - resources.folderZoneVmExtensionPolicies.methods.delete.id - resources.folderZoneVmExtensionPolicies.methods.delete.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.requestId.description - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.requestId.location - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.requestId.type - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.description - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.location - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.required - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.type - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.delete.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.delete.path - resources.folderZoneVmExtensionPolicies.methods.delete.response.$ref - resources.folderZoneVmExtensionPolicies.methods.delete.scopes - resources.folderZoneVmExtensionPolicies.methods.get.description - resources.folderZoneVmExtensionPolicies.methods.get.flatPath - resources.folderZoneVmExtensionPolicies.methods.get.httpMethod - resources.folderZoneVmExtensionPolicies.methods.get.id - resources.folderZoneVmExtensionPolicies.methods.get.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.get.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.get.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.get.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.get.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.get.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.description - resources.folderZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.location - resources.folderZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.pattern - resources.folderZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.required - resources.folderZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.type - resources.folderZoneVmExtensionPolicies.methods.get.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.get.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.get.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.get.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.get.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.get.path - resources.folderZoneVmExtensionPolicies.methods.get.response.$ref - resources.folderZoneVmExtensionPolicies.methods.get.scopes - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.description - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.flatPath - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.httpMethod - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.id - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.location - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.pattern - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.required - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.type - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.path - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.response.$ref - resources.folderZoneVmExtensionPolicies.methods.getVmExtension.scopes - resources.folderZoneVmExtensionPolicies.methods.insert.description - resources.folderZoneVmExtensionPolicies.methods.insert.flatPath - resources.folderZoneVmExtensionPolicies.methods.insert.httpMethod - resources.folderZoneVmExtensionPolicies.methods.insert.id - resources.folderZoneVmExtensionPolicies.methods.insert.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.requestId.description - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.requestId.location - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.requestId.type - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.insert.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.insert.path - resources.folderZoneVmExtensionPolicies.methods.insert.request.$ref - resources.folderZoneVmExtensionPolicies.methods.insert.response.$ref - resources.folderZoneVmExtensionPolicies.methods.insert.scopes - resources.folderZoneVmExtensionPolicies.methods.list.description - resources.folderZoneVmExtensionPolicies.methods.list.flatPath - resources.folderZoneVmExtensionPolicies.methods.list.httpMethod - resources.folderZoneVmExtensionPolicies.methods.list.id - resources.folderZoneVmExtensionPolicies.methods.list.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.list.parameters.filter.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.filter.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.filter.type - resources.folderZoneVmExtensionPolicies.methods.list.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.list.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.list.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.list.parameters.maxResults.default - resources.folderZoneVmExtensionPolicies.methods.list.parameters.maxResults.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.maxResults.format - resources.folderZoneVmExtensionPolicies.methods.list.parameters.maxResults.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.maxResults.minimum - resources.folderZoneVmExtensionPolicies.methods.list.parameters.maxResults.type - resources.folderZoneVmExtensionPolicies.methods.list.parameters.orderBy.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.orderBy.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.orderBy.type - resources.folderZoneVmExtensionPolicies.methods.list.parameters.pageToken.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.pageToken.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.pageToken.type - resources.folderZoneVmExtensionPolicies.methods.list.parameters.returnPartialSuccess.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.returnPartialSuccess.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.returnPartialSuccess.type - resources.folderZoneVmExtensionPolicies.methods.list.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.list.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.list.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.list.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.list.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.list.path - resources.folderZoneVmExtensionPolicies.methods.list.response.$ref - resources.folderZoneVmExtensionPolicies.methods.list.scopes - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.flatPath - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.httpMethod - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.id - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.filter.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.filter.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.filter.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.default - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.format - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.minimum - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.orderBy.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.orderBy.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.orderBy.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.pageToken.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.pageToken.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.pageToken.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.returnPartialSuccess.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.returnPartialSuccess.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.returnPartialSuccess.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.path - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.response.$ref - resources.folderZoneVmExtensionPolicies.methods.listVmExtensions.scopes - resources.folderZoneVmExtensionPolicies.methods.update.description - resources.folderZoneVmExtensionPolicies.methods.update.flatPath - resources.folderZoneVmExtensionPolicies.methods.update.httpMethod - resources.folderZoneVmExtensionPolicies.methods.update.id - resources.folderZoneVmExtensionPolicies.methods.update.parameterOrder - resources.folderZoneVmExtensionPolicies.methods.update.parameters.folder.description - resources.folderZoneVmExtensionPolicies.methods.update.parameters.folder.location - resources.folderZoneVmExtensionPolicies.methods.update.parameters.folder.pattern - resources.folderZoneVmExtensionPolicies.methods.update.parameters.folder.required - resources.folderZoneVmExtensionPolicies.methods.update.parameters.folder.type - resources.folderZoneVmExtensionPolicies.methods.update.parameters.requestId.description - resources.folderZoneVmExtensionPolicies.methods.update.parameters.requestId.location - resources.folderZoneVmExtensionPolicies.methods.update.parameters.requestId.type - resources.folderZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.description - resources.folderZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.location - resources.folderZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.required - resources.folderZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.type - resources.folderZoneVmExtensionPolicies.methods.update.parameters.zone.description - resources.folderZoneVmExtensionPolicies.methods.update.parameters.zone.location - resources.folderZoneVmExtensionPolicies.methods.update.parameters.zone.pattern - resources.folderZoneVmExtensionPolicies.methods.update.parameters.zone.required - resources.folderZoneVmExtensionPolicies.methods.update.parameters.zone.type - resources.folderZoneVmExtensionPolicies.methods.update.path - resources.folderZoneVmExtensionPolicies.methods.update.request.$ref - resources.folderZoneVmExtensionPolicies.methods.update.response.$ref - resources.folderZoneVmExtensionPolicies.methods.update.scopes - resources.orgVmExtensionPolicies.methods.delete.description - resources.orgVmExtensionPolicies.methods.delete.flatPath - resources.orgVmExtensionPolicies.methods.delete.httpMethod - resources.orgVmExtensionPolicies.methods.delete.id - resources.orgVmExtensionPolicies.methods.delete.parameterOrder - resources.orgVmExtensionPolicies.methods.delete.parameters.organization.description - resources.orgVmExtensionPolicies.methods.delete.parameters.organization.location - resources.orgVmExtensionPolicies.methods.delete.parameters.organization.pattern - resources.orgVmExtensionPolicies.methods.delete.parameters.organization.required - resources.orgVmExtensionPolicies.methods.delete.parameters.organization.type - resources.orgVmExtensionPolicies.methods.delete.parameters.requestId.description - resources.orgVmExtensionPolicies.methods.delete.parameters.requestId.location - resources.orgVmExtensionPolicies.methods.delete.parameters.requestId.type - resources.orgVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.description - resources.orgVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.location - resources.orgVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.required - resources.orgVmExtensionPolicies.methods.delete.parameters.vmExtensionPolicy.type - resources.orgVmExtensionPolicies.methods.delete.parameters.zone.description - resources.orgVmExtensionPolicies.methods.delete.parameters.zone.location - resources.orgVmExtensionPolicies.methods.delete.parameters.zone.pattern - resources.orgVmExtensionPolicies.methods.delete.parameters.zone.required - resources.orgVmExtensionPolicies.methods.delete.parameters.zone.type - resources.orgVmExtensionPolicies.methods.delete.path - resources.orgVmExtensionPolicies.methods.delete.response.$ref - resources.orgVmExtensionPolicies.methods.delete.scopes - resources.organizationRolloutPlans.methods.delete.description - resources.organizationRolloutPlans.methods.delete.flatPath - resources.organizationRolloutPlans.methods.delete.httpMethod - resources.organizationRolloutPlans.methods.delete.id - resources.organizationRolloutPlans.methods.delete.parameterOrder - resources.organizationRolloutPlans.methods.delete.parameters.organization.description - resources.organizationRolloutPlans.methods.delete.parameters.organization.location - resources.organizationRolloutPlans.methods.delete.parameters.organization.pattern - resources.organizationRolloutPlans.methods.delete.parameters.organization.required - resources.organizationRolloutPlans.methods.delete.parameters.organization.type - resources.organizationRolloutPlans.methods.delete.parameters.requestId.description - resources.organizationRolloutPlans.methods.delete.parameters.requestId.location - resources.organizationRolloutPlans.methods.delete.parameters.requestId.type - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.description - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.location - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.pattern - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.required - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.type - resources.organizationRolloutPlans.methods.delete.path - resources.organizationRolloutPlans.methods.delete.response.$ref - resources.organizationRolloutPlans.methods.delete.scopes - resources.organizationRolloutPlans.methods.get.description - resources.organizationRolloutPlans.methods.get.flatPath - resources.organizationRolloutPlans.methods.get.httpMethod - resources.organizationRolloutPlans.methods.get.id - resources.organizationRolloutPlans.methods.get.parameterOrder - resources.organizationRolloutPlans.methods.get.parameters.organization.description - resources.organizationRolloutPlans.methods.get.parameters.organization.location - resources.organizationRolloutPlans.methods.get.parameters.organization.pattern - resources.organizationRolloutPlans.methods.get.parameters.organization.required - resources.organizationRolloutPlans.methods.get.parameters.organization.type - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.description - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.location - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.pattern - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.required - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.type - resources.organizationRolloutPlans.methods.get.path - resources.organizationRolloutPlans.methods.get.response.$ref - resources.organizationRolloutPlans.methods.get.scopes - resources.organizationRolloutPlans.methods.insert.description - resources.organizationRolloutPlans.methods.insert.flatPath - resources.organizationRolloutPlans.methods.insert.httpMethod - resources.organizationRolloutPlans.methods.insert.id - resources.organizationRolloutPlans.methods.insert.parameterOrder - resources.organizationRolloutPlans.methods.insert.parameters.organization.description - resources.organizationRolloutPlans.methods.insert.parameters.organization.location - resources.organizationRolloutPlans.methods.insert.parameters.organization.pattern - resources.organizationRolloutPlans.methods.insert.parameters.organization.required - resources.organizationRolloutPlans.methods.insert.parameters.organization.type - resources.organizationRolloutPlans.methods.insert.parameters.requestId.description - resources.organizationRolloutPlans.methods.insert.parameters.requestId.location - resources.organizationRolloutPlans.methods.insert.parameters.requestId.type - resources.organizationRolloutPlans.methods.insert.path - resources.organizationRolloutPlans.methods.insert.request.$ref - resources.organizationRolloutPlans.methods.insert.response.$ref - resources.organizationRolloutPlans.methods.insert.scopes - resources.organizationRolloutPlans.methods.list.description - resources.organizationRolloutPlans.methods.list.flatPath - resources.organizationRolloutPlans.methods.list.httpMethod - resources.organizationRolloutPlans.methods.list.id - resources.organizationRolloutPlans.methods.list.parameterOrder - resources.organizationRolloutPlans.methods.list.parameters.filter.description - resources.organizationRolloutPlans.methods.list.parameters.filter.location - resources.organizationRolloutPlans.methods.list.parameters.filter.type - resources.organizationRolloutPlans.methods.list.parameters.maxResults.default - resources.organizationRolloutPlans.methods.list.parameters.maxResults.description - resources.organizationRolloutPlans.methods.list.parameters.maxResults.format - resources.organizationRolloutPlans.methods.list.parameters.maxResults.location - resources.organizationRolloutPlans.methods.list.parameters.maxResults.minimum - resources.organizationRolloutPlans.methods.list.parameters.maxResults.type - resources.organizationRolloutPlans.methods.list.parameters.orderBy.description - resources.organizationRolloutPlans.methods.list.parameters.orderBy.location - resources.organizationRolloutPlans.methods.list.parameters.orderBy.type - resources.organizationRolloutPlans.methods.list.parameters.organization.description - resources.organizationRolloutPlans.methods.list.parameters.organization.location - resources.organizationRolloutPlans.methods.list.parameters.organization.pattern - resources.organizationRolloutPlans.methods.list.parameters.organization.required - resources.organizationRolloutPlans.methods.list.parameters.organization.type - resources.organizationRolloutPlans.methods.list.parameters.pageToken.description - resources.organizationRolloutPlans.methods.list.parameters.pageToken.location - resources.organizationRolloutPlans.methods.list.parameters.pageToken.type - resources.organizationRolloutPlans.methods.list.parameters.returnPartialSuccess.description - resources.organizationRolloutPlans.methods.list.parameters.returnPartialSuccess.location - resources.organizationRolloutPlans.methods.list.parameters.returnPartialSuccess.type - resources.organizationRolloutPlans.methods.list.path - resources.organizationRolloutPlans.methods.list.response.$ref - resources.organizationRolloutPlans.methods.list.scopes - resources.organizationRollouts.methods.advance.description - resources.organizationRollouts.methods.advance.flatPath - resources.organizationRollouts.methods.advance.httpMethod - resources.organizationRollouts.methods.advance.id - resources.organizationRollouts.methods.advance.parameterOrder - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.description - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.format - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.location - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.type - resources.organizationRollouts.methods.advance.parameters.organization.description - resources.organizationRollouts.methods.advance.parameters.organization.location - resources.organizationRollouts.methods.advance.parameters.organization.pattern - resources.organizationRollouts.methods.advance.parameters.organization.required - resources.organizationRollouts.methods.advance.parameters.organization.type - resources.organizationRollouts.methods.advance.parameters.requestId.description - resources.organizationRollouts.methods.advance.parameters.requestId.location - resources.organizationRollouts.methods.advance.parameters.requestId.type - resources.organizationRollouts.methods.advance.parameters.rollout.description - resources.organizationRollouts.methods.advance.parameters.rollout.location - resources.organizationRollouts.methods.advance.parameters.rollout.pattern - resources.organizationRollouts.methods.advance.parameters.rollout.required - resources.organizationRollouts.methods.advance.parameters.rollout.type - resources.organizationRollouts.methods.advance.path - resources.organizationRollouts.methods.advance.response.$ref - resources.organizationRollouts.methods.advance.scopes - resources.organizationRollouts.methods.cancel.description - resources.organizationRollouts.methods.cancel.flatPath - resources.organizationRollouts.methods.cancel.httpMethod - resources.organizationRollouts.methods.cancel.id - resources.organizationRollouts.methods.cancel.parameterOrder - resources.organizationRollouts.methods.cancel.parameters.organization.description - resources.organizationRollouts.methods.cancel.parameters.organization.location - resources.organizationRollouts.methods.cancel.parameters.organization.pattern - resources.organizationRollouts.methods.cancel.parameters.organization.required - resources.organizationRollouts.methods.cancel.parameters.organization.type - resources.organizationRollouts.methods.cancel.parameters.requestId.description - resources.organizationRollouts.methods.cancel.parameters.requestId.location - resources.organizationRollouts.methods.cancel.parameters.requestId.type - resources.organizationRollouts.methods.cancel.parameters.rollback.description - resources.organizationRollouts.methods.cancel.parameters.rollback.location - resources.organizationRollouts.methods.cancel.parameters.rollback.type - resources.organizationRollouts.methods.cancel.parameters.rollout.description - resources.organizationRollouts.methods.cancel.parameters.rollout.location - resources.organizationRollouts.methods.cancel.parameters.rollout.pattern - resources.organizationRollouts.methods.cancel.parameters.rollout.required - resources.organizationRollouts.methods.cancel.parameters.rollout.type - resources.organizationRollouts.methods.cancel.path - resources.organizationRollouts.methods.cancel.response.$ref - resources.organizationRollouts.methods.cancel.scopes - resources.organizationRollouts.methods.delete.description - resources.organizationRollouts.methods.delete.flatPath - resources.organizationRollouts.methods.delete.httpMethod - resources.organizationRollouts.methods.delete.id - resources.organizationRollouts.methods.delete.parameterOrder - resources.organizationRollouts.methods.delete.parameters.organization.description - resources.organizationRollouts.methods.delete.parameters.organization.location - resources.organizationRollouts.methods.delete.parameters.organization.pattern - resources.organizationRollouts.methods.delete.parameters.organization.required - resources.organizationRollouts.methods.delete.parameters.organization.type - resources.organizationRollouts.methods.delete.parameters.requestId.description - resources.organizationRollouts.methods.delete.parameters.requestId.location - resources.organizationRollouts.methods.delete.parameters.requestId.type - resources.organizationRollouts.methods.delete.parameters.rollout.description - resources.organizationRollouts.methods.delete.parameters.rollout.location - resources.organizationRollouts.methods.delete.parameters.rollout.pattern - resources.organizationRollouts.methods.delete.parameters.rollout.required - resources.organizationRollouts.methods.delete.parameters.rollout.type - resources.organizationRollouts.methods.delete.path - resources.organizationRollouts.methods.delete.response.$ref - resources.organizationRollouts.methods.delete.scopes - resources.organizationRollouts.methods.get.description - resources.organizationRollouts.methods.get.flatPath - resources.organizationRollouts.methods.get.httpMethod - resources.organizationRollouts.methods.get.id - resources.organizationRollouts.methods.get.parameterOrder - resources.organizationRollouts.methods.get.parameters.organization.description - resources.organizationRollouts.methods.get.parameters.organization.location - resources.organizationRollouts.methods.get.parameters.organization.pattern - resources.organizationRollouts.methods.get.parameters.organization.required - resources.organizationRollouts.methods.get.parameters.organization.type - resources.organizationRollouts.methods.get.parameters.rollout.description - resources.organizationRollouts.methods.get.parameters.rollout.location - resources.organizationRollouts.methods.get.parameters.rollout.pattern - resources.organizationRollouts.methods.get.parameters.rollout.required - resources.organizationRollouts.methods.get.parameters.rollout.type - resources.organizationRollouts.methods.get.path - resources.organizationRollouts.methods.get.response.$ref - resources.organizationRollouts.methods.get.scopes - resources.organizationRollouts.methods.list.description - resources.organizationRollouts.methods.list.flatPath - resources.organizationRollouts.methods.list.httpMethod - resources.organizationRollouts.methods.list.id - resources.organizationRollouts.methods.list.parameterOrder - resources.organizationRollouts.methods.list.parameters.filter.description - resources.organizationRollouts.methods.list.parameters.filter.location - resources.organizationRollouts.methods.list.parameters.filter.type - resources.organizationRollouts.methods.list.parameters.maxResults.default - resources.organizationRollouts.methods.list.parameters.maxResults.description - resources.organizationRollouts.methods.list.parameters.maxResults.format - resources.organizationRollouts.methods.list.parameters.maxResults.location - resources.organizationRollouts.methods.list.parameters.maxResults.minimum - resources.organizationRollouts.methods.list.parameters.maxResults.type - resources.organizationRollouts.methods.list.parameters.orderBy.description - resources.organizationRollouts.methods.list.parameters.orderBy.location - resources.organizationRollouts.methods.list.parameters.orderBy.type - resources.organizationRollouts.methods.list.parameters.organization.description - resources.organizationRollouts.methods.list.parameters.organization.location - resources.organizationRollouts.methods.list.parameters.organization.pattern - resources.organizationRollouts.methods.list.parameters.organization.required - resources.organizationRollouts.methods.list.parameters.organization.type - resources.organizationRollouts.methods.list.parameters.pageToken.description - resources.organizationRollouts.methods.list.parameters.pageToken.location - resources.organizationRollouts.methods.list.parameters.pageToken.type - resources.organizationRollouts.methods.list.parameters.returnPartialSuccess.description - resources.organizationRollouts.methods.list.parameters.returnPartialSuccess.location - resources.organizationRollouts.methods.list.parameters.returnPartialSuccess.type - resources.organizationRollouts.methods.list.path - resources.organizationRollouts.methods.list.response.$ref - resources.organizationRollouts.methods.list.scopes - resources.organizationRollouts.methods.pause.description - resources.organizationRollouts.methods.pause.flatPath - resources.organizationRollouts.methods.pause.httpMethod - resources.organizationRollouts.methods.pause.id - resources.organizationRollouts.methods.pause.parameterOrder - resources.organizationRollouts.methods.pause.parameters.etag.description - resources.organizationRollouts.methods.pause.parameters.etag.location - resources.organizationRollouts.methods.pause.parameters.etag.type - resources.organizationRollouts.methods.pause.parameters.organization.description - resources.organizationRollouts.methods.pause.parameters.organization.location - resources.organizationRollouts.methods.pause.parameters.organization.pattern - resources.organizationRollouts.methods.pause.parameters.organization.required - resources.organizationRollouts.methods.pause.parameters.organization.type - resources.organizationRollouts.methods.pause.parameters.requestId.description - resources.organizationRollouts.methods.pause.parameters.requestId.location - resources.organizationRollouts.methods.pause.parameters.requestId.type - resources.organizationRollouts.methods.pause.parameters.rollout.description - resources.organizationRollouts.methods.pause.parameters.rollout.location - resources.organizationRollouts.methods.pause.parameters.rollout.pattern - resources.organizationRollouts.methods.pause.parameters.rollout.required - resources.organizationRollouts.methods.pause.parameters.rollout.type - resources.organizationRollouts.methods.pause.path - resources.organizationRollouts.methods.pause.response.$ref - resources.organizationRollouts.methods.pause.scopes - resources.organizationRollouts.methods.resume.description - resources.organizationRollouts.methods.resume.flatPath - resources.organizationRollouts.methods.resume.httpMethod - resources.organizationRollouts.methods.resume.id - resources.organizationRollouts.methods.resume.parameterOrder - resources.organizationRollouts.methods.resume.parameters.etag.description - resources.organizationRollouts.methods.resume.parameters.etag.location - resources.organizationRollouts.methods.resume.parameters.etag.type - resources.organizationRollouts.methods.resume.parameters.organization.description - resources.organizationRollouts.methods.resume.parameters.organization.location - resources.organizationRollouts.methods.resume.parameters.organization.pattern - resources.organizationRollouts.methods.resume.parameters.organization.required - resources.organizationRollouts.methods.resume.parameters.organization.type - resources.organizationRollouts.methods.resume.parameters.requestId.description - resources.organizationRollouts.methods.resume.parameters.requestId.location - resources.organizationRollouts.methods.resume.parameters.requestId.type - resources.organizationRollouts.methods.resume.parameters.rollout.description - resources.organizationRollouts.methods.resume.parameters.rollout.location - resources.organizationRollouts.methods.resume.parameters.rollout.pattern - resources.organizationRollouts.methods.resume.parameters.rollout.required - resources.organizationRollouts.methods.resume.parameters.rollout.type - resources.organizationRollouts.methods.resume.path - resources.organizationRollouts.methods.resume.response.$ref - resources.organizationRollouts.methods.resume.scopes - resources.organizationZoneVmExtensionPolicies.methods.get.description - resources.organizationZoneVmExtensionPolicies.methods.get.flatPath - resources.organizationZoneVmExtensionPolicies.methods.get.httpMethod - resources.organizationZoneVmExtensionPolicies.methods.get.id - resources.organizationZoneVmExtensionPolicies.methods.get.parameterOrder - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.organization.description - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.organization.location - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.organization.pattern - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.organization.required - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.organization.type - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.description - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.location - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.pattern - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.required - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.vmExtensionPolicy.type - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.zone.description - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.zone.location - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.zone.pattern - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.zone.required - resources.organizationZoneVmExtensionPolicies.methods.get.parameters.zone.type - resources.organizationZoneVmExtensionPolicies.methods.get.path - resources.organizationZoneVmExtensionPolicies.methods.get.response.$ref - resources.organizationZoneVmExtensionPolicies.methods.get.scopes - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.description - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.flatPath - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.httpMethod - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.id - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameterOrder - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.location - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.pattern - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.required - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.extensionName.type - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.organization.description - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.organization.location - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.organization.pattern - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.organization.required - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.organization.type - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.description - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.location - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.pattern - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.required - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.parameters.zone.type - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.path - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.response.$ref - resources.organizationZoneVmExtensionPolicies.methods.getVmExtension.scopes - resources.organizationZoneVmExtensionPolicies.methods.insert.description - resources.organizationZoneVmExtensionPolicies.methods.insert.flatPath - resources.organizationZoneVmExtensionPolicies.methods.insert.httpMethod - resources.organizationZoneVmExtensionPolicies.methods.insert.id - resources.organizationZoneVmExtensionPolicies.methods.insert.parameterOrder - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.organization.description - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.organization.location - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.organization.pattern - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.organization.required - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.organization.type - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.requestId.description - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.requestId.location - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.requestId.type - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.zone.description - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.zone.location - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.zone.pattern - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.zone.required - resources.organizationZoneVmExtensionPolicies.methods.insert.parameters.zone.type - resources.organizationZoneVmExtensionPolicies.methods.insert.path - resources.organizationZoneVmExtensionPolicies.methods.insert.request.$ref - resources.organizationZoneVmExtensionPolicies.methods.insert.response.$ref - resources.organizationZoneVmExtensionPolicies.methods.insert.scopes - resources.organizationZoneVmExtensionPolicies.methods.list.description - resources.organizationZoneVmExtensionPolicies.methods.list.flatPath - resources.organizationZoneVmExtensionPolicies.methods.list.httpMethod - resources.organizationZoneVmExtensionPolicies.methods.list.id - resources.organizationZoneVmExtensionPolicies.methods.list.parameterOrder - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.filter.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.filter.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.filter.type - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.maxResults.default - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.maxResults.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.maxResults.format - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.maxResults.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.maxResults.minimum - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.maxResults.type - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.orderBy.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.orderBy.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.orderBy.type - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.organization.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.organization.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.organization.pattern - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.organization.required - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.organization.type - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.pageToken.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.pageToken.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.pageToken.type - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.returnPartialSuccess.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.returnPartialSuccess.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.returnPartialSuccess.type - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.zone.description - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.zone.location - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.zone.pattern - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.zone.required - resources.organizationZoneVmExtensionPolicies.methods.list.parameters.zone.type - resources.organizationZoneVmExtensionPolicies.methods.list.path - resources.organizationZoneVmExtensionPolicies.methods.list.response.$ref - resources.organizationZoneVmExtensionPolicies.methods.list.scopes - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.flatPath - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.httpMethod - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.id - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameterOrder - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.filter.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.filter.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.filter.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.default - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.format - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.minimum - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.maxResults.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.orderBy.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.orderBy.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.orderBy.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.organization.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.organization.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.organization.pattern - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.organization.required - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.organization.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.pageToken.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.pageToken.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.pageToken.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.returnPartialSuccess.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.returnPartialSuccess.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.returnPartialSuccess.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.description - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.location - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.pattern - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.required - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.parameters.zone.type - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.path - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.response.$ref - resources.organizationZoneVmExtensionPolicies.methods.listVmExtensions.scopes - resources.organizationZoneVmExtensionPolicies.methods.update.description - resources.organizationZoneVmExtensionPolicies.methods.update.flatPath - resources.organizationZoneVmExtensionPolicies.methods.update.httpMethod - resources.organizationZoneVmExtensionPolicies.methods.update.id - resources.organizationZoneVmExtensionPolicies.methods.update.parameterOrder - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.organization.description - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.organization.location - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.organization.pattern - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.organization.required - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.organization.type - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.requestId.description - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.requestId.location - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.requestId.type - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.description - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.location - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.required - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.vmExtensionPolicy.type - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.zone.description - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.zone.location - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.zone.pattern - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.zone.required - resources.organizationZoneVmExtensionPolicies.methods.update.parameters.zone.type - resources.organizationZoneVmExtensionPolicies.methods.update.path - resources.organizationZoneVmExtensionPolicies.methods.update.request.$ref - resources.organizationZoneVmExtensionPolicies.methods.update.response.$ref - resources.organizationZoneVmExtensionPolicies.methods.update.scopes - schemas.BackendServiceLogConfig.properties.loggingHttpRequestHeaders.description - schemas.BackendServiceLogConfig.properties.loggingHttpRequestHeaders.items.$ref - schemas.BackendServiceLogConfig.properties.loggingHttpRequestHeaders.type - schemas.BackendServiceLogConfig.properties.loggingHttpResponseHeaders.description - schemas.BackendServiceLogConfig.properties.loggingHttpResponseHeaders.items.$ref - schemas.BackendServiceLogConfig.properties.loggingHttpResponseHeaders.type - schemas.BackendServiceLogConfigLoggingHttpHeader.description - schemas.BackendServiceLogConfigLoggingHttpHeader.id - schemas.BackendServiceLogConfigLoggingHttpHeader.properties.headerName.description - schemas.BackendServiceLogConfigLoggingHttpHeader.properties.headerName.type - schemas.BackendServiceLogConfigLoggingHttpHeader.type - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.description - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.items.enum - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.items.enumDescriptions - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.items.type - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.type - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.description - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enum - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enumDescriptions - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.type - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.type - schemas.OrganizationRolloutsListResponse.id - schemas.OrganizationRolloutsListResponse.properties.etag.type - schemas.OrganizationRolloutsListResponse.properties.id.description - schemas.OrganizationRolloutsListResponse.properties.id.type - schemas.OrganizationRolloutsListResponse.properties.items.description - schemas.OrganizationRolloutsListResponse.properties.items.items.$ref - schemas.OrganizationRolloutsListResponse.properties.items.type - schemas.OrganizationRolloutsListResponse.properties.nextPageToken.description - schemas.OrganizationRolloutsListResponse.properties.nextPageToken.type - schemas.OrganizationRolloutsListResponse.properties.selfLink.description - schemas.OrganizationRolloutsListResponse.properties.selfLink.readOnly - schemas.OrganizationRolloutsListResponse.properties.selfLink.type - schemas.OrganizationRolloutsListResponse.properties.unreachables.description - schemas.OrganizationRolloutsListResponse.properties.unreachables.items.type - schemas.OrganizationRolloutsListResponse.properties.unreachables.readOnly - schemas.OrganizationRolloutsListResponse.properties.unreachables.type - schemas.OrganizationRolloutsListResponse.properties.warning.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.enum - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.enumDeprecated - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.enumDescriptions - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.key.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.key.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.value.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.value.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.message.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.message.type - schemas.OrganizationRolloutsListResponse.properties.warning.type - schemas.OrganizationRolloutsListResponse.type - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.description - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enum - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enumDescriptions - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.type - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.type - schemas.ResourceStatusPhysicalHostTopology.properties.additionalAttributes.$ref - schemas.ResourceStatusPhysicalHostTopology.properties.additionalAttributes.description - schemas.ResourceStatusPhysicalHostTopology.properties.additionalAttributes.readOnly - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.description - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.id - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.additionalProperties.type - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.description - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.readOnly - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.type - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.type - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.description - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.format - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.readOnly - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.type - schemas.SnapshotRecycleBinPolicy.properties.systemRules.additionalProperties.$ref - schemas.SnapshotRecycleBinPolicy.properties.systemRules.description - schemas.SnapshotRecycleBinPolicy.properties.systemRules.readOnly - schemas.SnapshotRecycleBinPolicy.properties.systemRules.type The following keys were changed: - resources.imageViews.methods.get.description - resources.imageViews.methods.list.description - schemas.AllocationAggregateReservation.properties.vmFamily.enum - schemas.AllocationAggregateReservation.properties.vmFamily.enumDescriptions - schemas.AutoscalingPolicy.properties.mode.enumDescriptions - schemas.Commitment.properties.type.enum - schemas.Commitment.properties.type.enumDescriptions - schemas.FutureResourcesSpecAggregateResources.properties.vmFamily.enum - schemas.FutureResourcesSpecAggregateResources.properties.vmFamily.enumDescriptions - schemas.InstanceManagedByIgmError.properties.error.description - schemas.InstanceManagedByIgmError.properties.instanceActionDetails.description - schemas.InstanceManagedByIgmError.properties.timestamp.description - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.action.description - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.instance.description - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.version.description - schemas.InstanceManagedByIgmErrorManagedInstanceError.properties.code.description - schemas.InstanceManagedByIgmErrorManagedInstanceError.properties.message.description - schemas.PeriodicPartialMaintenanceSchedule.properties.subType.enumDescriptions #### compute:beta The following keys were added: - resources.organizationRolloutPlans.methods.delete.description - resources.organizationRolloutPlans.methods.delete.flatPath - resources.organizationRolloutPlans.methods.delete.httpMethod - resources.organizationRolloutPlans.methods.delete.id - resources.organizationRolloutPlans.methods.delete.parameterOrder - resources.organizationRolloutPlans.methods.delete.parameters.organization.description - resources.organizationRolloutPlans.methods.delete.parameters.organization.location - resources.organizationRolloutPlans.methods.delete.parameters.organization.pattern - resources.organizationRolloutPlans.methods.delete.parameters.organization.required - resources.organizationRolloutPlans.methods.delete.parameters.organization.type - resources.organizationRolloutPlans.methods.delete.parameters.requestId.description - resources.organizationRolloutPlans.methods.delete.parameters.requestId.location - resources.organizationRolloutPlans.methods.delete.parameters.requestId.type - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.description - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.location - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.pattern - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.required - resources.organizationRolloutPlans.methods.delete.parameters.rolloutPlan.type - resources.organizationRolloutPlans.methods.delete.path - resources.organizationRolloutPlans.methods.delete.response.$ref - resources.organizationRolloutPlans.methods.delete.scopes - resources.organizationRolloutPlans.methods.get.description - resources.organizationRolloutPlans.methods.get.flatPath - resources.organizationRolloutPlans.methods.get.httpMethod - resources.organizationRolloutPlans.methods.get.id - resources.organizationRolloutPlans.methods.get.parameterOrder - resources.organizationRolloutPlans.methods.get.parameters.organization.description - resources.organizationRolloutPlans.methods.get.parameters.organization.location - resources.organizationRolloutPlans.methods.get.parameters.organization.pattern - resources.organizationRolloutPlans.methods.get.parameters.organization.required - resources.organizationRolloutPlans.methods.get.parameters.organization.type - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.description - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.location - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.pattern - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.required - resources.organizationRolloutPlans.methods.get.parameters.rolloutPlan.type - resources.organizationRolloutPlans.methods.get.path - resources.organizationRolloutPlans.methods.get.response.$ref - resources.organizationRolloutPlans.methods.get.scopes - resources.organizationRolloutPlans.methods.insert.description - resources.organizationRolloutPlans.methods.insert.flatPath - resources.organizationRolloutPlans.methods.insert.httpMethod - resources.organizationRolloutPlans.methods.insert.id - resources.organizationRolloutPlans.methods.insert.parameterOrder - resources.organizationRolloutPlans.methods.insert.parameters.organization.description - resources.organizationRolloutPlans.methods.insert.parameters.organization.location - resources.organizationRolloutPlans.methods.insert.parameters.organization.pattern - resources.organizationRolloutPlans.methods.insert.parameters.organization.required - resources.organizationRolloutPlans.methods.insert.parameters.organization.type - resources.organizationRolloutPlans.methods.insert.parameters.requestId.description - resources.organizationRolloutPlans.methods.insert.parameters.requestId.location - resources.organizationRolloutPlans.methods.insert.parameters.requestId.type - resources.organizationRolloutPlans.methods.insert.path - resources.organizationRolloutPlans.methods.insert.request.$ref - resources.organizationRolloutPlans.methods.insert.response.$ref - resources.organizationRolloutPlans.methods.insert.scopes - resources.organizationRolloutPlans.methods.list.description - resources.organizationRolloutPlans.methods.list.flatPath - resources.organizationRolloutPlans.methods.list.httpMethod - resources.organizationRolloutPlans.methods.list.id - resources.organizationRolloutPlans.methods.list.parameterOrder - resources.organizationRolloutPlans.methods.list.parameters.filter.description - resources.organizationRolloutPlans.methods.list.parameters.filter.location - resources.organizationRolloutPlans.methods.list.parameters.filter.type - resources.organizationRolloutPlans.methods.list.parameters.maxResults.default - resources.organizationRolloutPlans.methods.list.parameters.maxResults.description - resources.organizationRolloutPlans.methods.list.parameters.maxResults.format - resources.organizationRolloutPlans.methods.list.parameters.maxResults.location - resources.organizationRolloutPlans.methods.list.parameters.maxResults.minimum - resources.organizationRolloutPlans.methods.list.parameters.maxResults.type - resources.organizationRolloutPlans.methods.list.parameters.orderBy.description - resources.organizationRolloutPlans.methods.list.parameters.orderBy.location - resources.organizationRolloutPlans.methods.list.parameters.orderBy.type - resources.organizationRolloutPlans.methods.list.parameters.organization.description - resources.organizationRolloutPlans.methods.list.parameters.organization.location - resources.organizationRolloutPlans.methods.list.parameters.organization.pattern - resources.organizationRolloutPlans.methods.list.parameters.organization.required - resources.organizationRolloutPlans.methods.list.parameters.organization.type - resources.organizationRolloutPlans.methods.list.parameters.pageToken.description - resources.organizationRolloutPlans.methods.list.parameters.pageToken.location - resources.organizationRolloutPlans.methods.list.parameters.pageToken.type - resources.organizationRolloutPlans.methods.list.parameters.returnPartialSuccess.description - resources.organizationRolloutPlans.methods.list.parameters.returnPartialSuccess.location - resources.organizationRolloutPlans.methods.list.parameters.returnPartialSuccess.type - resources.organizationRolloutPlans.methods.list.path - resources.organizationRolloutPlans.methods.list.response.$ref - resources.organizationRolloutPlans.methods.list.scopes - resources.organizationRollouts.methods.advance.description - resources.organizationRollouts.methods.advance.flatPath - resources.organizationRollouts.methods.advance.httpMethod - resources.organizationRollouts.methods.advance.id - resources.organizationRollouts.methods.advance.parameterOrder - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.description - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.format - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.location - resources.organizationRollouts.methods.advance.parameters.currentWaveNumber.type - resources.organizationRollouts.methods.advance.parameters.organization.description - resources.organizationRollouts.methods.advance.parameters.organization.location - resources.organizationRollouts.methods.advance.parameters.organization.pattern - resources.organizationRollouts.methods.advance.parameters.organization.required - resources.organizationRollouts.methods.advance.parameters.organization.type - resources.organizationRollouts.methods.advance.parameters.requestId.description - resources.organizationRollouts.methods.advance.parameters.requestId.location - resources.organizationRollouts.methods.advance.parameters.requestId.type - resources.organizationRollouts.methods.advance.parameters.rollout.description - resources.organizationRollouts.methods.advance.parameters.rollout.location - resources.organizationRollouts.methods.advance.parameters.rollout.pattern - resources.organizationRollouts.methods.advance.parameters.rollout.required - resources.organizationRollouts.methods.advance.parameters.rollout.type - resources.organizationRollouts.methods.advance.path - resources.organizationRollouts.methods.advance.response.$ref - resources.organizationRollouts.methods.advance.scopes - resources.organizationRollouts.methods.cancel.description - resources.organizationRollouts.methods.cancel.flatPath - resources.organizationRollouts.methods.cancel.httpMethod - resources.organizationRollouts.methods.cancel.id - resources.organizationRollouts.methods.cancel.parameterOrder - resources.organizationRollouts.methods.cancel.parameters.organization.description - resources.organizationRollouts.methods.cancel.parameters.organization.location - resources.organizationRollouts.methods.cancel.parameters.organization.pattern - resources.organizationRollouts.methods.cancel.parameters.organization.required - resources.organizationRollouts.methods.cancel.parameters.organization.type - resources.organizationRollouts.methods.cancel.parameters.requestId.description - resources.organizationRollouts.methods.cancel.parameters.requestId.location - resources.organizationRollouts.methods.cancel.parameters.requestId.type - resources.organizationRollouts.methods.cancel.parameters.rollback.description - resources.organizationRollouts.methods.cancel.parameters.rollback.location - resources.organizationRollouts.methods.cancel.parameters.rollback.type - resources.organizationRollouts.methods.cancel.parameters.rollout.description - resources.organizationRollouts.methods.cancel.parameters.rollout.location - resources.organizationRollouts.methods.cancel.parameters.rollout.pattern - resources.organizationRollouts.methods.cancel.parameters.rollout.required - resources.organizationRollouts.methods.cancel.parameters.rollout.type - resources.organizationRollouts.methods.cancel.path - resources.organizationRollouts.methods.cancel.response.$ref - resources.organizationRollouts.methods.cancel.scopes - resources.organizationRollouts.methods.delete.description - resources.organizationRollouts.methods.delete.flatPath - resources.organizationRollouts.methods.delete.httpMethod - resources.organizationRollouts.methods.delete.id - resources.organizationRollouts.methods.delete.parameterOrder - resources.organizationRollouts.methods.delete.parameters.organization.description - resources.organizationRollouts.methods.delete.parameters.organization.location - resources.organizationRollouts.methods.delete.parameters.organization.pattern - resources.organizationRollouts.methods.delete.parameters.organization.required - resources.organizationRollouts.methods.delete.parameters.organization.type - resources.organizationRollouts.methods.delete.parameters.requestId.description - resources.organizationRollouts.methods.delete.parameters.requestId.location - resources.organizationRollouts.methods.delete.parameters.requestId.type - resources.organizationRollouts.methods.delete.parameters.rollout.description - resources.organizationRollouts.methods.delete.parameters.rollout.location - resources.organizationRollouts.methods.delete.parameters.rollout.pattern - resources.organizationRollouts.methods.delete.parameters.rollout.required - resources.organizationRollouts.methods.delete.parameters.rollout.type - resources.organizationRollouts.methods.delete.path - resources.organizationRollouts.methods.delete.response.$ref - resources.organizationRollouts.methods.delete.scopes - resources.organizationRollouts.methods.get.description - resources.organizationRollouts.methods.get.flatPath - resources.organizationRollouts.methods.get.httpMethod - resources.organizationRollouts.methods.get.id - resources.organizationRollouts.methods.get.parameterOrder - resources.organizationRollouts.methods.get.parameters.organization.description - resources.organizationRollouts.methods.get.parameters.organization.location - resources.organizationRollouts.methods.get.parameters.organization.pattern - resources.organizationRollouts.methods.get.parameters.organization.required - resources.organizationRollouts.methods.get.parameters.organization.type - resources.organizationRollouts.methods.get.parameters.rollout.description - resources.organizationRollouts.methods.get.parameters.rollout.location - resources.organizationRollouts.methods.get.parameters.rollout.pattern - resources.organizationRollouts.methods.get.parameters.rollout.required - resources.organizationRollouts.methods.get.parameters.rollout.type - resources.organizationRollouts.methods.get.path - resources.organizationRollouts.methods.get.response.$ref - resources.organizationRollouts.methods.get.scopes - resources.organizationRollouts.methods.list.description - resources.organizationRollouts.methods.list.flatPath - resources.organizationRollouts.methods.list.httpMethod - resources.organizationRollouts.methods.list.id - resources.organizationRollouts.methods.list.parameterOrder - resources.organizationRollouts.methods.list.parameters.filter.description - resources.organizationRollouts.methods.list.parameters.filter.location - resources.organizationRollouts.methods.list.parameters.filter.type - resources.organizationRollouts.methods.list.parameters.maxResults.default - resources.organizationRollouts.methods.list.parameters.maxResults.description - resources.organizationRollouts.methods.list.parameters.maxResults.format - resources.organizationRollouts.methods.list.parameters.maxResults.location - resources.organizationRollouts.methods.list.parameters.maxResults.minimum - resources.organizationRollouts.methods.list.parameters.maxResults.type - resources.organizationRollouts.methods.list.parameters.orderBy.description - resources.organizationRollouts.methods.list.parameters.orderBy.location - resources.organizationRollouts.methods.list.parameters.orderBy.type - resources.organizationRollouts.methods.list.parameters.organization.description - resources.organizationRollouts.methods.list.parameters.organization.location - resources.organizationRollouts.methods.list.parameters.organization.pattern - resources.organizationRollouts.methods.list.parameters.organization.required - resources.organizationRollouts.methods.list.parameters.organization.type - resources.organizationRollouts.methods.list.parameters.pageToken.description - resources.organizationRollouts.methods.list.parameters.pageToken.location - resources.organizationRollouts.methods.list.parameters.pageToken.type - resources.organizationRollouts.methods.list.parameters.returnPartialSuccess.description - resources.organizationRollouts.methods.list.parameters.returnPartialSuccess.location - resources.organizationRollouts.methods.list.parameters.returnPartialSuccess.type - resources.organizationRollouts.methods.list.path - resources.organizationRollouts.methods.list.response.$ref - resources.organizationRollouts.methods.list.scopes - resources.organizationRollouts.methods.pause.description - resources.organizationRollouts.methods.pause.flatPath - resources.organizationRollouts.methods.pause.httpMethod - resources.organizationRollouts.methods.pause.id - resources.organizationRollouts.methods.pause.parameterOrder - resources.organizationRollouts.methods.pause.parameters.etag.description - resources.organizationRollouts.methods.pause.parameters.etag.location - resources.organizationRollouts.methods.pause.parameters.etag.type - resources.organizationRollouts.methods.pause.parameters.organization.description - resources.organizationRollouts.methods.pause.parameters.organization.location - resources.organizationRollouts.methods.pause.parameters.organization.pattern - resources.organizationRollouts.methods.pause.parameters.organization.required - resources.organizationRollouts.methods.pause.parameters.organization.type - resources.organizationRollouts.methods.pause.parameters.requestId.description - resources.organizationRollouts.methods.pause.parameters.requestId.location - resources.organizationRollouts.methods.pause.parameters.requestId.type - resources.organizationRollouts.methods.pause.parameters.rollout.description - resources.organizationRollouts.methods.pause.parameters.rollout.location - resources.organizationRollouts.methods.pause.parameters.rollout.pattern - resources.organizationRollouts.methods.pause.parameters.rollout.required - resources.organizationRollouts.methods.pause.parameters.rollout.type - resources.organizationRollouts.methods.pause.path - resources.organizationRollouts.methods.pause.response.$ref - resources.organizationRollouts.methods.pause.scopes - resources.organizationRollouts.methods.resume.description - resources.organizationRollouts.methods.resume.flatPath - resources.organizationRollouts.methods.resume.httpMethod - resources.organizationRollouts.methods.resume.id - resources.organizationRollouts.methods.resume.parameterOrder - resources.organizationRollouts.methods.resume.parameters.etag.description - resources.organizationRollouts.methods.resume.parameters.etag.location - resources.organizationRollouts.methods.resume.parameters.etag.type - resources.organizationRollouts.methods.resume.parameters.organization.description - resources.organizationRollouts.methods.resume.parameters.organization.location - resources.organizationRollouts.methods.resume.parameters.organization.pattern - resources.organizationRollouts.methods.resume.parameters.organization.required - resources.organizationRollouts.methods.resume.parameters.organization.type - resources.organizationRollouts.methods.resume.parameters.requestId.description - resources.organizationRollouts.methods.resume.parameters.requestId.location - resources.organizationRollouts.methods.resume.parameters.requestId.type - resources.organizationRollouts.methods.resume.parameters.rollout.description - resources.organizationRollouts.methods.resume.parameters.rollout.location - resources.organizationRollouts.methods.resume.parameters.rollout.pattern - resources.organizationRollouts.methods.resume.parameters.rollout.required - resources.organizationRollouts.methods.resume.parameters.rollout.type - resources.organizationRollouts.methods.resume.path - resources.organizationRollouts.methods.resume.response.$ref - resources.organizationRollouts.methods.resume.scopes - schemas.BackendServiceLogConfig.properties.loggingHttpRequestHeaders.description - schemas.BackendServiceLogConfig.properties.loggingHttpRequestHeaders.items.$ref - schemas.BackendServiceLogConfig.properties.loggingHttpRequestHeaders.type - schemas.BackendServiceLogConfig.properties.loggingHttpResponseHeaders.description - schemas.BackendServiceLogConfig.properties.loggingHttpResponseHeaders.items.$ref - schemas.BackendServiceLogConfig.properties.loggingHttpResponseHeaders.type - schemas.BackendServiceLogConfigLoggingHttpHeader.description - schemas.BackendServiceLogConfigLoggingHttpHeader.id - schemas.BackendServiceLogConfigLoggingHttpHeader.properties.headerName.description - schemas.BackendServiceLogConfigLoggingHttpHeader.properties.headerName.type - schemas.BackendServiceLogConfigLoggingHttpHeader.type - schemas.DateTime.description - schemas.DateTime.id - schemas.DateTime.properties.day.description - schemas.DateTime.properties.day.format - schemas.DateTime.properties.day.type - schemas.DateTime.properties.hours.description - schemas.DateTime.properties.hours.format - schemas.DateTime.properties.hours.type - schemas.DateTime.properties.minutes.description - schemas.DateTime.properties.minutes.format - schemas.DateTime.properties.minutes.type - schemas.DateTime.properties.month.description - schemas.DateTime.properties.month.format - schemas.DateTime.properties.month.type - schemas.DateTime.properties.nanos.description - schemas.DateTime.properties.nanos.format - schemas.DateTime.properties.nanos.type - schemas.DateTime.properties.seconds.description - schemas.DateTime.properties.seconds.format - schemas.DateTime.properties.seconds.type - schemas.DateTime.properties.timeZone.$ref - schemas.DateTime.properties.timeZone.description - schemas.DateTime.properties.utcOffset.description - schemas.DateTime.properties.utcOffset.format - schemas.DateTime.properties.utcOffset.type - schemas.DateTime.properties.year.description - schemas.DateTime.properties.year.format - schemas.DateTime.properties.year.type - schemas.DateTime.type - schemas.HttpRouteAction.properties.imageOptimizationPolicy.$ref - schemas.HttpRouteAction.properties.imageOptimizationPolicy.description - schemas.ImageOptimizationPolicy.description - schemas.ImageOptimizationPolicy.id - schemas.ImageOptimizationPolicy.properties.queryParameterInterpretation.description - schemas.ImageOptimizationPolicy.properties.queryParameterInterpretation.enum - schemas.ImageOptimizationPolicy.properties.queryParameterInterpretation.enumDescriptions - schemas.ImageOptimizationPolicy.properties.queryParameterInterpretation.type - schemas.ImageOptimizationPolicy.type - schemas.InstanceGroupManagerActionsSummary.properties.restartingInPlace.description - schemas.InstanceGroupManagerActionsSummary.properties.restartingInPlace.format - schemas.InstanceGroupManagerActionsSummary.properties.restartingInPlace.readOnly - schemas.InstanceGroupManagerActionsSummary.properties.restartingInPlace.type - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.description - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.items.enum - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.items.enumDescriptions - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.items.type - schemas.InstanceGroupManagerUpdatePolicy.properties.allowedActions.type - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.description - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enum - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enumDescriptions - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.type - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.type - schemas.OrganizationRolloutsListResponse.id - schemas.OrganizationRolloutsListResponse.properties.etag.type - schemas.OrganizationRolloutsListResponse.properties.id.description - schemas.OrganizationRolloutsListResponse.properties.id.type - schemas.OrganizationRolloutsListResponse.properties.items.description - schemas.OrganizationRolloutsListResponse.properties.items.items.$ref - schemas.OrganizationRolloutsListResponse.properties.items.type - schemas.OrganizationRolloutsListResponse.properties.nextPageToken.description - schemas.OrganizationRolloutsListResponse.properties.nextPageToken.type - schemas.OrganizationRolloutsListResponse.properties.selfLink.description - schemas.OrganizationRolloutsListResponse.properties.selfLink.readOnly - schemas.OrganizationRolloutsListResponse.properties.selfLink.type - schemas.OrganizationRolloutsListResponse.properties.unreachables.description - schemas.OrganizationRolloutsListResponse.properties.unreachables.items.type - schemas.OrganizationRolloutsListResponse.properties.unreachables.readOnly - schemas.OrganizationRolloutsListResponse.properties.unreachables.type - schemas.OrganizationRolloutsListResponse.properties.warning.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.enum - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.enumDeprecated - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.enumDescriptions - schemas.OrganizationRolloutsListResponse.properties.warning.properties.code.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.key.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.key.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.value.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.properties.value.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.items.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.data.type - schemas.OrganizationRolloutsListResponse.properties.warning.properties.message.description - schemas.OrganizationRolloutsListResponse.properties.warning.properties.message.type - schemas.OrganizationRolloutsListResponse.properties.warning.type - schemas.OrganizationRolloutsListResponse.type - schemas.PeriodicPartialMaintenanceSchedule.description - schemas.PeriodicPartialMaintenanceSchedule.id - schemas.PeriodicPartialMaintenanceSchedule.properties.subType.description - schemas.PeriodicPartialMaintenanceSchedule.properties.subType.enum - schemas.PeriodicPartialMaintenanceSchedule.properties.subType.enumDescriptions - schemas.PeriodicPartialMaintenanceSchedule.properties.subType.type - schemas.PeriodicPartialMaintenanceSchedule.properties.targetResource.description - schemas.PeriodicPartialMaintenanceSchedule.properties.targetResource.type - schemas.PeriodicPartialMaintenanceSchedule.properties.type.enum - schemas.PeriodicPartialMaintenanceSchedule.properties.type.enumDescriptions - schemas.PeriodicPartialMaintenanceSchedule.properties.type.type - schemas.PeriodicPartialMaintenanceSchedule.properties.windowEndTime.$ref - schemas.PeriodicPartialMaintenanceSchedule.properties.windowEndTime.description - schemas.PeriodicPartialMaintenanceSchedule.properties.windowStartTime.$ref - schemas.PeriodicPartialMaintenanceSchedule.properties.windowStartTime.description - schemas.PeriodicPartialMaintenanceSchedule.type - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.description - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enum - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.enumDescriptions - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.items.type - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.allowedActions.type - schemas.ResourceStatusPhysicalHostTopology.properties.additionalAttributes.$ref - schemas.ResourceStatusPhysicalHostTopology.properties.additionalAttributes.description - schemas.ResourceStatusPhysicalHostTopology.properties.additionalAttributes.readOnly - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.description - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.id - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.additionalProperties.type - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.description - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.readOnly - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.properties.acceleratorTopologyIds.type - schemas.ResourceStatusPhysicalHostTopologyAdditionalAttributes.type - schemas.ResourceStatusReservationConsumptionInfo.properties.consumedReservationBlock.description - schemas.ResourceStatusReservationConsumptionInfo.properties.consumedReservationBlock.readOnly - schemas.ResourceStatusReservationConsumptionInfo.properties.consumedReservationBlock.type - schemas.ResourceStatusReservationConsumptionInfo.properties.consumedReservationSubBlock.description - schemas.ResourceStatusReservationConsumptionInfo.properties.consumedReservationSubBlock.readOnly - schemas.ResourceStatusReservationConsumptionInfo.properties.consumedReservationSubBlock.type - schemas.Rollout.properties.pauseTime.description - schemas.Rollout.properties.pauseTime.readOnly - schemas.Rollout.properties.pauseTime.type - schemas.Rollout.properties.resumeTime.description - schemas.Rollout.properties.resumeTime.readOnly - schemas.Rollout.properties.resumeTime.type - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.description - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.format - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.readOnly - schemas.RouterNat.properties.effectiveTcpTimeWaitTimeoutSec.type - schemas.TimeZone.description - schemas.TimeZone.id - schemas.TimeZone.properties.id.description - schemas.TimeZone.properties.id.type - schemas.TimeZone.properties.version.description - schemas.TimeZone.properties.version.type - schemas.TimeZone.type - schemas.Zone.properties.resourceStatus.$ref - schemas.Zone.properties.resourceStatus.readOnly - schemas.ZoneResourceStatus.id - schemas.ZoneResourceStatus.properties.upcomingMaintenances.description - schemas.ZoneResourceStatus.properties.upcomingMaintenances.items.$ref - schemas.ZoneResourceStatus.properties.upcomingMaintenances.readOnly - schemas.ZoneResourceStatus.properties.upcomingMaintenances.type - schemas.ZoneResourceStatus.type The following keys were changed: - schemas.AutoscalingPolicy.properties.mode.enumDescriptions - schemas.InstanceGroupManagerUpdatePolicy.properties.minimalAction.enum - schemas.InstanceGroupManagerUpdatePolicy.properties.minimalAction.enumDescriptions - schemas.InstanceGroupManagerUpdatePolicy.properties.mostDisruptiveAllowedAction.enum - schemas.InstanceGroupManagerUpdatePolicy.properties.mostDisruptiveAllowedAction.enumDescriptions - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.minimalAction.enum - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.minimalAction.enumDescriptions - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.mostDisruptiveAllowedAction.enum - schemas.InstanceGroupManagersApplyUpdatesRequest.properties.mostDisruptiveAllowedAction.enumDescriptions - schemas.InstanceManagedByIgmError.properties.error.description - schemas.InstanceManagedByIgmError.properties.instanceActionDetails.description - schemas.InstanceManagedByIgmError.properties.timestamp.description - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.action.description - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.action.enum - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.action.enumDescriptions - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.instance.description - schemas.InstanceManagedByIgmErrorInstanceActionDetails.properties.version.description - schemas.InstanceManagedByIgmErrorManagedInstanceError.properties.code.description - schemas.InstanceManagedByIgmErrorManagedInstanceError.properties.message.description - schemas.ManagedInstance.properties.currentAction.enum - schemas.ManagedInstance.properties.currentAction.enumDescriptions - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.minimalAction.enum - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.minimalAction.enumDescriptions - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.mostDisruptiveAllowedAction.enum - schemas.RegionInstanceGroupManagersApplyUpdatesRequest.properties.mostDisruptiveAllowedAction.enumDescriptions --- discovery/compute-alpha.json | 2218 +- discovery/compute-beta.json | 995 +- src/apis/compute/alpha.ts | 83188 ++++++++++++++++++--------------- src/apis/compute/beta.ts | 2846 +- 4 files changed, 50302 insertions(+), 38945 deletions(-) diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index 03ea7c8837..a24b1c0de5 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -5525,6 +5525,358 @@ } } }, + "folderZoneVmExtensionPolicies": { + "methods": { + "delete": { + "description": "Deletes a specified zone VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "DELETE", + "id": "compute.folderZoneVmExtensionPolicies.delete", + "parameterOrder": [ + "folder", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Retrieves details of a specific zone VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.get", + "parameterOrder": [ + "folder", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the VM extension policy 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" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "VmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVmExtension": { + "description": "Retrieves details of a specific VM extension within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "folder", + "zone", + "extensionName" + ], + "parameters": { + "extensionName": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensions/{extensionName}", + "response": { + "$ref": "VmExtension" + }, + "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 new zone-level VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.folderZoneVmExtensionPolicies.insert", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists all VM extension policies within a specific zone for a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.list", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies", + "response": { + "$ref": "VmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listVmExtensions": { + "description": "Lists all VM extensions within a specific zone for a folder.\nThis is a read-only API.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensions", + "httpMethod": "GET", + "id": "compute.folderZoneVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "folder", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensions", + "response": { + "$ref": "ListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Modifies an existing zone VM extension policy within a folder.", + "flatPath": "folders/{foldersId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.folderZoneVmExtensionPolicies.update", + "parameterOrder": [ + "folder", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "folder": { + "description": "Folder ID for this request.", + "location": "path", + "pattern": "folders/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "forwardingRules": { "methods": { "aggregatedList": { @@ -9866,7 +10218,7 @@ "imageViews": { "methods": { "get": { - "description": "Returns the specified global Image resource by providing a regional\ncontext to read the metadata from the Global Clone in the region.", + "description": "Returns the specified global ImageView resource, with a regional\ncontext.", "flatPath": "projects/{project}/regions/{region}/imageViews/{resourceId}", "httpMethod": "GET", "id": "compute.imageViews.get", @@ -9909,7 +10261,7 @@ ] }, "list": { - "description": "Retrieves the list of global Image resources available to the project by\nproviding a regional context to read the metadata from the Global Clone in\nthe region.", + "description": "Returns a list of global ImageView resources, with a regional\ncontext.", "flatPath": "projects/{project}/regions/{region}/imageViews", "httpMethod": "GET", "id": "compute.imageViews.list", @@ -24425,6 +24777,533 @@ } } }, + "orgVmExtensionPolicies": { + "methods": { + "delete": { + "description": "Deletes a specified zone VM extension policy within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "DELETE", + "id": "compute.orgVmExtensionPolicies.delete", + "parameterOrder": [ + "organization", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to delete.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "organizationRolloutPlans": { + "methods": { + "delete": { + "description": "Deletes an OrganizationRolloutPlan.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "DELETE", + "id": "compute.organizationRolloutPlans.delete", + "parameterOrder": [ + "organization", + "rolloutPlan" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rolloutPlan": { + "description": "Name of the OrganizationRolloutPlan 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": "{+organization}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets details of a single organization-scoped RolloutPlan.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "GET", + "id": "compute.organizationRolloutPlans.get", + "parameterOrder": [ + "organization", + "rolloutPlan" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "rolloutPlan": { + "description": "Name of the persistent rollout plan 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": "{+organization}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "RolloutPlan" + }, + "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 new RolloutPlan in a given organization and location.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans", + "httpMethod": "POST", + "id": "compute.organizationRolloutPlans.insert", + "parameterOrder": [ + "organization" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/rolloutPlans", + "request": { + "$ref": "RolloutPlan" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists OrganizationRolloutPlans in a given organization and location.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans", + "httpMethod": "GET", + "id": "compute.organizationRolloutPlans.list", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "{+organization}/global/rolloutPlans", + "response": { + "$ref": "RolloutPlansListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "organizationRollouts": { + "methods": { + "advance": { + "description": "Advances a Rollout to the next wave, or completes it if no waves remain.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}/advance", + "httpMethod": "POST", + "id": "compute.organizationRollouts.advance", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "currentWaveNumber": { + "description": "Required. Wave number of the current wave.", + "format": "int64", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to advance.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}/advance", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "cancel": { + "description": "Cancels a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}", + "httpMethod": "PATCH", + "id": "compute.organizationRollouts.cancel", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollback": { + "description": "Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel\nthe rollout without taking any further actions. Note that products must\nsupport at least one of these options, however, it does not need to support\nboth.", + "location": "query", + "type": "boolean" + }, + "rollout": { + "description": "Name of the Rollout resource to cancel.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}", + "httpMethod": "DELETE", + "id": "compute.organizationRollouts.delete", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Name of the Rollout 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": "{+organization}/global/rollouts/{rollout}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets details of a single organization-scoped Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}", + "httpMethod": "GET", + "id": "compute.organizationRollouts.get", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "rollout": { + "description": "Name of the persistent rollout 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": "{+organization}/global/rollouts/{rollout}", + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Lists Rollouts in a given organization and location.", + "flatPath": "organizations/{organizationsId}/global/rollouts", + "httpMethod": "GET", + "id": "compute.organizationRollouts.list", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "{+organization}/global/rollouts", + "response": { + "$ref": "OrganizationRolloutsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "pause": { + "description": "Pauses a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}/pause", + "httpMethod": "POST", + "id": "compute.organizationRollouts.pause", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "etag": { + "description": "The etag of the Rollout.\nIf this is provided, the request will only succeed if the etag matches\nthe current etag of the Rollout.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to pause.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}/pause", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resume": { + "description": "Resumes a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}/resume", + "httpMethod": "POST", + "id": "compute.organizationRollouts.resume", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "etag": { + "description": "The etag of the Rollout.\nIf this is provided, the request will only succeed if the etag matches\nthe current etag of the Rollout.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to resume.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}/resume", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "organizationSecurityPolicies": { "methods": { "addAssociation": { @@ -25072,6 +25951,312 @@ } } }, + "organizationZoneVmExtensionPolicies": { + "methods": { + "get": { + "description": "Retrieves details of a specific zone VM extension policy within an\norganization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.get", + "parameterOrder": [ + "organization", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the VM extension policy 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" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "response": { + "$ref": "VmExtensionPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getVmExtension": { + "description": "Retrieves details of a specific VM extension within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensions/{extensionName}", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.getVmExtension", + "parameterOrder": [ + "organization", + "zone", + "extensionName" + ], + "parameters": { + "extensionName": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensions/{extensionName}", + "response": { + "$ref": "VmExtension" + }, + "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 new zone-level VM extension policy within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "POST", + "id": "compute.organizationZoneVmExtensionPolicies.insert", + "parameterOrder": [ + "organization", + "zone" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists all VM extension policies within a specific zone for an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.list", + "parameterOrder": [ + "organization", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies", + "response": { + "$ref": "VmExtensionPolicyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listVmExtensions": { + "description": "Lists all VM extensions within a specific zone for an organization.\nThis is a read-only API.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensions", + "httpMethod": "GET", + "id": "compute.organizationZoneVmExtensionPolicies.listVmExtensions", + "parameterOrder": [ + "organization", + "zone" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensions", + "response": { + "$ref": "ListVmExtensionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "description": "Modifies an existing zone VM extension policy within an organization.", + "flatPath": "organizations/{organizationsId}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "httpMethod": "PATCH", + "id": "compute.organizationZoneVmExtensionPolicies.update", + "parameterOrder": [ + "organization", + "zone", + "vmExtensionPolicy" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "vmExtensionPolicy": { + "description": "Name of the zone VM extension policy to update.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}", + "request": { + "$ref": "VmExtensionPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "packetMirrorings": { "methods": { "aggregatedList": { @@ -55121,7 +56306,7 @@ } } }, - "revision": "20260501", + "revision": "20260520", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -56600,7 +57785,8 @@ "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P", "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P", "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X" + "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU8I_METAL" ], "enumDescriptions": [ "", @@ -56611,6 +57797,7 @@ "", "", "", + "", "" ], "type": "string" @@ -57960,7 +59147,7 @@ "Do not automatically scale the MIG in or out.\nThe recommended_size field contains the size of MIG that would be set if\nthe actuation mode was enabled.", "Automatically scale the MIG in and out according to the policy.", "Automatically create VMs according to the policy, but do not scale\nthe MIG in.", - "Automatically create VMs according to the policy, but do not scale\nthe MIG in." + "Automatically create VMs according to the policy, but do not scale\nthe MIG in.\nIt's recommended to use ONLY_SCALE_OUT instead of ONLY_UP." ], "type": "string" }, @@ -60470,6 +61657,20 @@ "description": "Denotes whether to enable logging for the load balancer\ntraffic served by this backend service. The default value is false.", "type": "boolean" }, + "loggingHttpRequestHeaders": { + "description": "The list of request headers that will be logged to Stackdriver.", + "items": { + "$ref": "BackendServiceLogConfigLoggingHttpHeader" + }, + "type": "array" + }, + "loggingHttpResponseHeaders": { + "description": "The list of response headers that will be logged to Stackdriver.", + "items": { + "$ref": "BackendServiceLogConfigLoggingHttpHeader" + }, + "type": "array" + }, "optional": { "deprecated": true, "description": "Deprecated in favor of optionalMode.\nThis field can only be specified if logging is enabled for this backend\nservice. Configures whether all, none or a subset of optional fields\nshould be added to the reported logs. One of [INCLUDE_ALL_OPTIONAL,\nEXCLUDE_ALL_OPTIONAL, CUSTOM]. Default is EXCLUDE_ALL_OPTIONAL.", @@ -60518,6 +61719,17 @@ }, "type": "object" }, + "BackendServiceLogConfigLoggingHttpHeader": { + "description": "Determines which HTTP headers will be logged to Stackdriver.", + "id": "BackendServiceLogConfigLoggingHttpHeader", + "properties": { + "headerName": { + "description": "The name of the header to be logged.", + "type": "string" + } + }, + "type": "object" + }, "BackendServiceNetworkPassThroughLbTrafficPolicy": { "id": "BackendServiceNetworkPassThroughLbTrafficPolicy", "properties": { @@ -62287,6 +63499,7 @@ "ACCELERATOR_OPTIMIZED_A4", "ACCELERATOR_OPTIMIZED_A4X", "ACCELERATOR_OPTIMIZED_A4X_MAX", + "ACCELERATOR_OPTIMIZED_A5X", "COMPUTE_OPTIMIZED", "COMPUTE_OPTIMIZED_C2D", "COMPUTE_OPTIMIZED_C3", @@ -62322,6 +63535,7 @@ "MEMORY_OPTIMIZED_X4_960_12T", "MEMORY_OPTIMIZED_X4_960_16T", "STORAGE_OPTIMIZED_Z3", + "STORAGE_OPTIMIZED_Z4D", "TYPE_UNSPECIFIED" ], "enumDescriptions": [ @@ -62357,6 +63571,7 @@ "", "", "", + "", "CUD bucket for X4 machine with 1440 vCPUs and 24TB of memory.", "", "CUD bucket for X4 machine with 1920 vCPUs and 32TB of memory.", @@ -62367,6 +63582,7 @@ "CUD bucket for X4 machine with 960 vCPUs and 12TB of memory.", "CUD bucket for X4 machine with 960 vCPUs and 16TB of memory.", "", + "CUD bucket for Z4D machines.", "Note for internal users: When adding a new enum Type for v1, make sure\nto also add it in the comment for the `optional Type type` definition.\nThis ensures that the public documentation displays the new enum Type." ], "type": "string" @@ -69637,7 +70853,8 @@ "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P", "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P", "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7", - "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X" + "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X", + "VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU8I_METAL" ], "enumDescriptions": [ "", @@ -69648,6 +70865,7 @@ "", "", "", + "", "" ], "type": "string" @@ -71635,12 +72853,6 @@ "description": "Name of the destination zone for the failover.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" - }, - "primaryZone": { - "deprecated": true, - "description": "Name of the destination zone for the failover.\nDeprecated: use failover_to_zone instead.", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "type": "string" } }, "type": "object" @@ -79021,6 +80233,27 @@ "InstanceGroupManagerUpdatePolicy": { "id": "InstanceGroupManagerUpdatePolicy", "properties": { + "allowedActions": { + "description": "Actions that are allowed to update instances within MIG.", + "items": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART", + "RESTART_IN_PLACE" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." + ], + "type": "string" + }, + "type": "array" + }, "disruptionMode": { "description": "Whether the boot disk is allowed to be updated with restart.", "enum": [ @@ -79164,6 +80397,27 @@ "description": "Flag to update all instances instead of specified list of “instances”.\nIf the flag is set to true then the instances may not be specified\nin the request.", "type": "boolean" }, + "allowedActions": { + "description": "Actions that are allowed to update instances within MIG.", + "items": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART", + "RESTART_IN_PLACE" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." + ], + "type": "string" + }, + "type": "array" + }, "disruptionMode": { "description": "Whether the boot disk is allowed to be updated with restart.", "enum": [ @@ -80650,16 +81904,16 @@ "properties": { "error": { "$ref": "InstanceManagedByIgmErrorManagedInstanceError", - "description": "Output only. [Output Only] Contents of the error.", + "description": "Output only. Contents of the error.", "readOnly": true }, "instanceActionDetails": { "$ref": "InstanceManagedByIgmErrorInstanceActionDetails", - "description": "Output only. [Output Only] Details of the instance action that triggered this error.\nMay be null, if the error was not caused by an action on an instance.\nThis field is optional.", + "description": "Output only. Details of the instance action that triggered this error.\nMay be null, if the error was not caused by an action on an instance.\nThis field is optional.", "readOnly": true }, "timestamp": { - "description": "Output only. [Output Only] The time that this error occurred.\nThis value is in RFC3339 text format.", + "description": "Output only. The time that this error occurred. This value is in RFC3339 text format.", "readOnly": true, "type": "string" } @@ -80670,7 +81924,7 @@ "id": "InstanceManagedByIgmErrorInstanceActionDetails", "properties": { "action": { - "description": "Output only. [Output Only] Action that managed instance group was executing on\nthe instance when the error occurred. Possible values:", + "description": "Output only. Action that managed instance group was executing on the instance when the\nerror occurred. Possible values:", "enum": [ "ABANDONING", "ADOPTING", @@ -80713,13 +81967,13 @@ "type": "string" }, "instance": { - "description": "Output only. [Output Only] The URL of the instance.\nThe URL can be set even if the instance has not yet been created.", + "description": "Output only. The URL of the instance. The URL can be set even if the instance has not\nyet been created.", "readOnly": true, "type": "string" }, "version": { "$ref": "ManagedInstanceVersion", - "description": "Output only. [Output Only] Version this instance was created from, or was being\ncreated from, but the creation failed. Corresponds to one of the versions\nthat were set on the Instance Group Manager resource at the time this\ninstance was being created.", + "description": "Output only. Version this instance was created from, or was being\ncreated from, but the creation failed. Corresponds to one of the versions\nthat were set on the Instance Group Manager resource at the time this\ninstance was being created.", "readOnly": true } }, @@ -80729,12 +81983,12 @@ "id": "InstanceManagedByIgmErrorManagedInstanceError", "properties": { "code": { - "description": "Output only. [Output Only] Error code.", + "description": "Output only. Error code.", "readOnly": true, "type": "string" }, "message": { - "description": "Output only. [Output Only] Error message.", + "description": "Output only. Error message.", "readOnly": true, "type": "string" } @@ -98215,327 +99469,491 @@ }, "type": "object" }, - "Operation": { - "description": "Represents an Operation resource.\n\nGoogle Compute Engine has three Operation resources:\n\n* [Global](/compute/docs/reference/rest/alpha/globalOperations)\n* [Regional](/compute/docs/reference/rest/alpha/regionOperations)\n* [Zonal](/compute/docs/reference/rest/alpha/zoneOperations)\n\nYou can use an operation resource to manage asynchronous API requests.\nFor more information, readHandling\nAPI responses.\n\nOperations can be global, regional or zonal.\n \n - For global operations, use the `globalOperations`\n resource. \n - For regional operations, use the\n `regionOperations` resource. \n - For zonal operations, use\n the `zoneOperations` resource.\n\n\n\nFor more information, read\nGlobal, Regional, and Zonal Resources.\n\nNote that completed Operation resources have a limited \nretention period.", - "id": "Operation", - "properties": { - "clientOperationId": { - "description": "[Output Only] The value of `requestId` if you provided it in the request.\nNot present otherwise.", - "type": "string" - }, - "creationTimestamp": { - "description": "[Deprecated] This field is deprecated.", - "type": "string" - }, - "description": { - "description": "[Output Only] A textual description of the operation, which is\nset when the operation is created.", - "type": "string" - }, - "endTime": { - "description": "[Output Only] The time that this operation was completed. This value is inRFC3339\ntext format.", - "type": "string" - }, - "error": { - "description": "[Output Only] If errors are generated during processing of the operation,\nthis field will be populated.", - "properties": { - "errors": { - "description": "[Output Only] The array of errors encountered while processing this\noperation.", - "items": { - "properties": { - "code": { - "description": "[Output Only] The error type identifier for this error.", - "type": "string" - }, - "errorDetails": { - "description": "[Output Only] An optional list of messages that contain the error\ndetails. There is a set of defined message types to use for providing\ndetails.The syntax depends on the error code. For example,\nQuotaExceededInfo will have details when the error code is\nQUOTA_EXCEEDED.", - "items": { - "properties": { - "errorInfo": { - "$ref": "ErrorInfo" - }, - "help": { - "$ref": "Help" - }, - "localizedMessage": { - "$ref": "LocalizedMessage" - }, - "quotaInfo": { - "$ref": "QuotaExceededInfo" - } - }, - "type": "object" - }, - "type": "array" - }, - "location": { - "description": "[Output Only] Indicates the field in the request that caused the error.\nThis property is optional.", - "type": "string" - }, - "message": { - "description": "[Output Only] An optional, human-readable error message.", - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - } - }, - "type": "object" - }, - "getVersionOperationMetadata": { - "$ref": "GetVersionOperationMetadata" - }, - "httpErrorMessage": { - "description": "[Output Only] If the operation fails, this field contains the HTTP error\nmessage that was returned, such as `NOT FOUND`.", - "type": "string" - }, - "httpErrorStatusCode": { - "description": "[Output Only] If the operation fails, this field contains the HTTP error\nstatus code that was returned. For example, a `404` means the\nresource was not found.", - "format": "int32", - "type": "integer" - }, - "id": { - "description": "[Output Only] The unique identifier for the operation. This identifier is\ndefined by the server.", - "format": "uint64", - "type": "string" - }, - "insertTime": { - "description": "[Output Only] The time that this operation was requested.\nThis value is inRFC3339\ntext format.", - "type": "string" - }, - "instancesBulkInsertOperationMetadata": { - "$ref": "InstancesBulkInsertOperationMetadata" - }, - "kind": { - "default": "compute#operation", - "description": "Output only. [Output Only] Type of the resource. Always `compute#operation` for\nOperation resources.", - "readOnly": true, - "type": "string" - }, - "name": { - "description": "[Output Only] Name of the operation.", - "type": "string" - }, - "operationGroupId": { - "description": "Output only. [Output Only] An ID that represents a group of operations, such as when a\ngroup of operations results from a `bulkInsert` API request.", - "readOnly": true, - "type": "string" - }, - "operationType": { - "description": "[Output Only] The type of operation, such as `insert`,\n`update`, or `delete`, and so on.", - "type": "string" - }, - "progress": { - "description": "[Output Only] An optional progress indicator that ranges from 0 to 100.\nThere is no requirement that this be linear or support any granularity of\noperations. This should not be used to guess when the operation will be\ncomplete. This number should monotonically increase as the operation\nprogresses.", - "format": "int32", - "type": "integer" - }, - "region": { - "description": "[Output Only] The URL of the region where the operation resides. Only\napplicable when performing regional operations.", - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for the resource.", - "type": "string" - }, - "selfLinkWithId": { - "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", - "readOnly": true, - "type": "string" - }, - "setCommonInstanceMetadataOperationMetadata": { - "$ref": "SetCommonInstanceMetadataOperationMetadata", - "description": "Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,\nthis field will contain information on all underlying zonal actions and\ntheir state.", - "readOnly": true - }, - "startTime": { - "description": "[Output Only] The time that this operation was started by the server.\nThis value is inRFC3339\ntext format.", - "type": "string" - }, - "status": { - "description": "[Output Only] The status of the operation, which can be one of the\nfollowing:\n`PENDING`, `RUNNING`, or `DONE`.", - "enum": [ - "DONE", - "PENDING", - "RUNNING" - ], - "enumDescriptions": [ - "", - "", - "" - ], - "type": "string" - }, - "statusMessage": { - "description": "[Output Only] An optional textual description of the current status of the\noperation.", - "type": "string" - }, - "targetId": { - "description": "[Output Only] The unique target ID, which identifies a specific incarnation\nof the target resource.", - "format": "uint64", - "type": "string" - }, - "targetLink": { - "description": "[Output Only] The URL of the resource that the operation modifies. For\noperations related to creating a snapshot, this points to the disk\nthat the snapshot was created from.", - "type": "string" - }, - "user": { - "description": "[Output Only] User who requested the operation, for example:\n`user@example.com` or\n`alice_smith_identifier (global/workforcePools/example-com-us-employees)`.", - "type": "string" - }, - "warnings": { - "description": "[Output Only] If warning messages are generated during processing of the\noperation, this field will be populated.", - "items": { - "properties": { - "code": { - "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare 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", - "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", - "LARGE_DEPLOYMENT_WARNING", - "LIST_OVERHEAD_QUOTA_EXCEED", - "MISSING_TYPE_DEPENDENCY", - "NEXT_HOP_ADDRESS_NOT_ASSIGNED", - "NEXT_HOP_CANNOT_IP_FORWARD", - "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", - "NEXT_HOP_INSTANCE_NOT_FOUND", - "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", - "NEXT_HOP_NOT_RUNNING", - "NOT_CRITICAL_ERROR", - "NO_RESULTS_ON_PAGE", - "PARTIAL_SUCCESS", - "QUOTA_INFO_UNAVAILABLE", - "REQUIRED_TOS_AGREEMENT", - "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", - "RESOURCE_NOT_DELETED", - "SCHEMA_VALIDATION_IGNORED", - "SINGLE_INSTANCE_PROPERTY_TEMPLATE", - "UNDECLARED_PROPERTIES", - "UNREACHABLE" - ], - "enumDeprecated": [ - false, - false, - false, - false, - false, - false, - true, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false, - false - ], - "enumDescriptions": [ - "Warning about failed cleanup of transient changes made by a failed\noperation.", - "A link to a deprecated resource was created.", - "When deploying and at least one of the resources has a type marked as\ndeprecated", - "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\nexperimental", - "Warning that is present in an external api call", - "Warning that value of a field has been overridden.\nDeprecated unused field.", - "The operation involved use of an injected kernel, which is deprecated.", - "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", - "When deploying a deployment with a exceedingly large number of resources", - "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", - "A resource depends on a missing type", - "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", - "The route's next hop instance cannot ip forward.", - "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", - "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\nsame 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\nthe mentioned error.", - "No results are present on a particular list page.", - "Success is reported, but some results may be missing due to errors", - "Quota information is not available to client requests (e.g:\nregions.list).", - "The user attempted to use a resource that requires a TOS they have not\naccepted.", - "Warning that a resource is in use.", - "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", - "When a resource schema validation is ignored.", - "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle 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:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", - "items": { - "properties": { - "key": { - "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts 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": "array" - }, - "zone": { - "description": "[Output Only] The URL of the zone where the operation resides. Only\napplicable when performing per-zone operations.", - "type": "string" - } - }, - "type": "object" - }, - "OperationAggregatedList": { - "id": "OperationAggregatedList", + "Operation": { + "description": "Represents an Operation resource.\n\nGoogle Compute Engine has three Operation resources:\n\n* [Global](/compute/docs/reference/rest/alpha/globalOperations)\n* [Regional](/compute/docs/reference/rest/alpha/regionOperations)\n* [Zonal](/compute/docs/reference/rest/alpha/zoneOperations)\n\nYou can use an operation resource to manage asynchronous API requests.\nFor more information, readHandling\nAPI responses.\n\nOperations can be global, regional or zonal.\n \n - For global operations, use the `globalOperations`\n resource. \n - For regional operations, use the\n `regionOperations` resource. \n - For zonal operations, use\n the `zoneOperations` resource.\n\n\n\nFor more information, read\nGlobal, Regional, and Zonal Resources.\n\nNote that completed Operation resources have a limited \nretention period.", + "id": "Operation", + "properties": { + "clientOperationId": { + "description": "[Output Only] The value of `requestId` if you provided it in the request.\nNot present otherwise.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Deprecated] This field is deprecated.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is\nset when the operation is created.", + "type": "string" + }, + "endTime": { + "description": "[Output Only] The time that this operation was completed. This value is inRFC3339\ntext format.", + "type": "string" + }, + "error": { + "description": "[Output Only] If errors are generated during processing of the operation,\nthis field will be populated.", + "properties": { + "errors": { + "description": "[Output Only] The array of errors encountered while processing this\noperation.", + "items": { + "properties": { + "code": { + "description": "[Output Only] The error type identifier for this error.", + "type": "string" + }, + "errorDetails": { + "description": "[Output Only] An optional list of messages that contain the error\ndetails. There is a set of defined message types to use for providing\ndetails.The syntax depends on the error code. For example,\nQuotaExceededInfo will have details when the error code is\nQUOTA_EXCEEDED.", + "items": { + "properties": { + "errorInfo": { + "$ref": "ErrorInfo" + }, + "help": { + "$ref": "Help" + }, + "localizedMessage": { + "$ref": "LocalizedMessage" + }, + "quotaInfo": { + "$ref": "QuotaExceededInfo" + } + }, + "type": "object" + }, + "type": "array" + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error.\nThis property is optional.", + "type": "string" + }, + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "getVersionOperationMetadata": { + "$ref": "GetVersionOperationMetadata" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error\nmessage that was returned, such as `NOT FOUND`.", + "type": "string" + }, + "httpErrorStatusCode": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error\nstatus code that was returned. For example, a `404` means the\nresource was not found.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the operation. This identifier is\ndefined by the server.", + "format": "uint64", + "type": "string" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested.\nThis value is inRFC3339\ntext format.", + "type": "string" + }, + "instancesBulkInsertOperationMetadata": { + "$ref": "InstancesBulkInsertOperationMetadata" + }, + "kind": { + "default": "compute#operation", + "description": "Output only. [Output Only] Type of the resource. Always `compute#operation` for\nOperation resources.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "[Output Only] Name of the operation.", + "type": "string" + }, + "operationGroupId": { + "description": "Output only. [Output Only] An ID that represents a group of operations, such as when a\ngroup of operations results from a `bulkInsert` API request.", + "readOnly": true, + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as `insert`,\n`update`, or `delete`, and so on.", + "type": "string" + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100.\nThere is no requirement that this be linear or support any granularity of\noperations. This should not be used to guess when the operation will be\ncomplete. This number should monotonically increase as the operation\nprogresses.", + "format": "int32", + "type": "integer" + }, + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only\napplicable when performing regional operations.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "selfLinkWithId": { + "description": "Output only. [Output Only] Server-defined URL for this resource with the resource id.", + "readOnly": true, + "type": "string" + }, + "setCommonInstanceMetadataOperationMetadata": { + "$ref": "SetCommonInstanceMetadataOperationMetadata", + "description": "Output only. [Output Only] If the operation is for projects.setCommonInstanceMetadata,\nthis field will contain information on all underlying zonal actions and\ntheir state.", + "readOnly": true + }, + "startTime": { + "description": "[Output Only] The time that this operation was started by the server.\nThis value is inRFC3339\ntext format.", + "type": "string" + }, + "status": { + "description": "[Output Only] The status of the operation, which can be one of the\nfollowing:\n`PENDING`, `RUNNING`, or `DONE`.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the\noperation.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation\nof the target resource.", + "format": "uint64", + "type": "string" + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For\noperations related to creating a snapshot, this points to the disk\nthat the snapshot was created from.", + "type": "string" + }, + "user": { + "description": "[Output Only] User who requested the operation, for example:\n`user@example.com` or\n`alice_smith_identifier (global/workforcePools/example-com-us-employees)`.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the\noperation, this field will be populated.", + "items": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare 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", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "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\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "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\nsame 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\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle 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:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts 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": "array" + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only\napplicable when performing per-zone operations.", + "type": "string" + } + }, + "type": "object" + }, + "OperationAggregatedList": { + "id": "OperationAggregatedList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "OperationsScopedList", + "description": "[Output Only] Name of the scope containing this set of operations." + }, + "description": "[Output Only] A map of scoped operation lists.", + "type": "object" + }, + "kind": { + "default": "compute#operationAggregatedList", + "description": "Output only. [Output Only] Type of resource. Always `compute#operationAggregatedList`\nfor aggregated lists of operations.", + "readOnly": true, + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger than\n`maxResults`, use the `nextPageToken` as a value for\nthe query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare 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", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "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\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "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\nsame 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\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle 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:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts 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" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "id": "OperationList", "properties": { "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "type": "string" }, "items": { - "additionalProperties": { - "$ref": "OperationsScopedList", - "description": "[Output Only] Name of the scope containing this set of operations." + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" }, - "description": "[Output Only] A map of scoped operation lists.", - "type": "object" + "type": "array" }, "kind": { - "default": "compute#operationAggregatedList", - "description": "Output only. [Output Only] Type of resource. Always `compute#operationAggregatedList`\nfor aggregated lists of operations.", + "default": "compute#operationList", + "description": "Output only. [Output Only] Type of resource. Always `compute#operations` for Operations\nresource.", "readOnly": true, "type": "string" }, @@ -98547,14 +99965,6 @@ "description": "[Output Only] Server-defined URL for this resource.", "type": "string" }, - "unreachables": { - "description": "Output only. [Output Only] Unreachable resources.", - "items": { - "type": "string" - }, - "readOnly": true, - "type": "array" - }, "warning": { "description": "[Output Only] Informational warning message.", "properties": { @@ -98682,37 +100092,18 @@ }, "type": "object" }, - "OperationList": { - "description": "Contains a list of Operation resources.", - "id": "OperationList", + "OperationsScopedList": { + "id": "OperationsScopedList", "properties": { - "id": { - "description": "[Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", - "type": "string" - }, - "items": { - "description": "[Output Only] A list of Operation resources.", + "operations": { + "description": "[Output Only] A list of operations contained in this scope.", "items": { "$ref": "Operation" }, "type": "array" }, - "kind": { - "default": "compute#operationList", - "description": "Output only. [Output Only] Type of resource. Always `compute#operations` for Operations\nresource.", - "readOnly": true, - "type": "string" - }, - "nextPageToken": { - "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger than\n`maxResults`, use the `nextPageToken` as a value for\nthe query parameter `pageToken` in the next list request.\nSubsequent list requests will have their own `nextPageToken` to\ncontinue paging through the results.", - "type": "string" - }, - "selfLink": { - "description": "[Output Only] Server-defined URL for this resource.", - "type": "string" - }, "warning": { - "description": "[Output Only] Informational warning message.", + "description": "[Output Only] Informational warning which replaces the list of operations\nwhen the list is empty.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -98838,18 +100229,42 @@ }, "type": "object" }, - "OperationsScopedList": { - "id": "OperationsScopedList", + "OrganizationRolloutsListResponse": { + "id": "OrganizationRolloutsListResponse", "properties": { - "operations": { - "description": "[Output Only] A list of operations contained in this scope.", + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Rollout resources.", "items": { - "$ref": "Operation" + "$ref": "Rollout" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" }, + "readOnly": true, "type": "array" }, "warning": { - "description": "[Output Only] Informational warning which replaces the list of operations\nwhen the list is empty.", + "description": "[Output Only] Informational warning message.", "properties": { "code": { "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare no results in the response.", @@ -99957,10 +101372,10 @@ ], "enumDescriptions": [ "Default value.", - "A dedicated window for customers to perform their own maintenance. This\noften runs concurrently with a DISRUPTIVE_UPGRADE. This corresponds to\nthe Customer Maintenance Window for CME.", - "For disruptive updates, including host machine kernel or firmware\nupgrades. This corresponds to the Critical Services Maintenance Window\nfor CME.", - "A post-maintenance window for customers to conduct final testing and\nperformance validation before resuming full business operations. This\ncorresponds to Performance Stress Testing for CME.", - "For preliminary, non-disruptive tasks such as key rotations. This\ncorresponds to the Zone Swap Window for CME." + "A dedicated window for customers to perform their own maintenance. This\noften runs concurrently with a DISRUPTIVE_UPGRADE.", + "For disruptive updates, including host machine kernel or firmware\nupgrades.", + "A post-maintenance window for customers to conduct final testing and\nperformance validation before resuming full business operations.", + "For preliminary, non-disruptive tasks such as key rotations." ], "type": "string" }, @@ -105041,6 +106456,27 @@ "description": "Flag to update all instances instead of specified list of “instances”.\nIf the flag is set to true then the instances may not be specified\nin the request.", "type": "boolean" }, + "allowedActions": { + "description": "Actions that are allowed to update instances within MIG.", + "items": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART", + "RESTART_IN_PLACE" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." + ], + "type": "string" + }, + "type": "array" + }, "disruptionMode": { "description": "Whether the boot disk is allowed to be updated with restart.", "enum": [ @@ -109439,6 +110875,11 @@ "description": "Represents the physical host topology of the host on which the VM is\nrunning.", "id": "ResourceStatusPhysicalHostTopology", "properties": { + "additionalAttributes": { + "$ref": "ResourceStatusPhysicalHostTopologyAdditionalAttributes", + "description": "Output only. [Output Only] Additional location information of the running instance.", + "readOnly": true + }, "block": { "description": "[Output Only] The ID of the block in which the running instance is\nlocated. Instances within the same block experience low network latency.", "type": "string" @@ -109458,6 +110899,21 @@ }, "type": "object" }, + "ResourceStatusPhysicalHostTopologyAdditionalAttributes": { + "description": "Additional location information of the running instance.", + "id": "ResourceStatusPhysicalHostTopologyAdditionalAttributes", + "properties": { + "acceleratorTopologyIds": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. The IDs of the accelerator topologies the instance belongs to. For\nexample\nThe key will be topologies like \"4x4\", \"2x2x2\" and the value will be\nthe location ID of the topologies.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "ResourceStatusReservationConsumptionInfo": { "description": "Reservation consumption information that the instance is consuming from.", "id": "ResourceStatusReservationConsumptionInfo", @@ -111980,6 +113436,12 @@ }, "type": "array" }, + "effectiveTcpTimeWaitTimeoutSec": { + "description": "Output only. Effective timeout (in seconds) for TCP connections that are in TIME_WAIT\nstate. This value is equal to tcp_time_wait_timeout_sec if it is set,\notherwise it is equal to 120s. The field is output only.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, "enableDynamicPortAllocation": { "description": "Enable Dynamic Port Allocation.\n\n\nIf not specified, it is disabled by default.\n\n\nIf set to true,\n \n - Dynamic Port Allocation will be enabled on this NAT\n config.\n - enableEndpointIndependentMapping cannot be set to true.\n - If minPorts is set, minPortsPerVm must be set to a\n power of two greater than or equal to 32. If minPortsPerVm is not set, a\n minimum of 32 ports will be allocated to a VM from this NAT\n config.", "type": "boolean" @@ -117299,6 +118761,14 @@ }, "description": "The rules for the snapshot recycle bin policy. The key is either 'default'\nor namespacedName of the TagValue which can be in the format:\n`{organization_id}/{tag_key_short_name}/{tag_value_short_name}` or\n`{project_id}/{tag_key_short_name}/{tag_value_short_name}` or\n`{project_number}/{tag_key_short_name}/{tag_value_short_name}`. The default\nrule is applied if snapshots do not have any of these tags.\n The value is the rule for the key.", "type": "object" + }, + "systemRules": { + "additionalProperties": { + "$ref": "SnapshotRecycleBinPolicyRule" + }, + "description": "Output only. The system rules for snapshot recycle bin policy.\nDefines the default rule that applies if no customer-defined rule matches.", + "readOnly": true, + "type": "object" } }, "type": "object" diff --git a/discovery/compute-beta.json b/discovery/compute-beta.json index 7dcc21b431..09a37f11c6 100644 --- a/discovery/compute-beta.json +++ b/discovery/compute-beta.json @@ -22836,6 +22836,483 @@ } } }, + "organizationRolloutPlans": { + "methods": { + "delete": { + "description": "Deletes an OrganizationRolloutPlan.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "DELETE", + "id": "compute.organizationRolloutPlans.delete", + "parameterOrder": [ + "organization", + "rolloutPlan" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rolloutPlan": { + "description": "Name of the OrganizationRolloutPlan 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": "{+organization}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets details of a single organization-scoped RolloutPlan.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans/{rolloutPlan}", + "httpMethod": "GET", + "id": "compute.organizationRolloutPlans.get", + "parameterOrder": [ + "organization", + "rolloutPlan" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "rolloutPlan": { + "description": "Name of the persistent rollout plan 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": "{+organization}/global/rolloutPlans/{rolloutPlan}", + "response": { + "$ref": "RolloutPlan" + }, + "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 new RolloutPlan in a given organization and location.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans", + "httpMethod": "POST", + "id": "compute.organizationRolloutPlans.insert", + "parameterOrder": [ + "organization" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "{+organization}/global/rolloutPlans", + "request": { + "$ref": "RolloutPlan" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists OrganizationRolloutPlans in a given organization and location.", + "flatPath": "organizations/{organizationsId}/global/rolloutPlans", + "httpMethod": "GET", + "id": "compute.organizationRolloutPlans.list", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "{+organization}/global/rolloutPlans", + "response": { + "$ref": "RolloutPlansListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "organizationRollouts": { + "methods": { + "advance": { + "description": "Advances a Rollout to the next wave, or completes it if no waves remain.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}/advance", + "httpMethod": "POST", + "id": "compute.organizationRollouts.advance", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "currentWaveNumber": { + "description": "Required. Wave number of the current wave.", + "format": "int64", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to advance.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}/advance", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "cancel": { + "description": "Cancels a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}", + "httpMethod": "PATCH", + "id": "compute.organizationRollouts.cancel", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollback": { + "description": "Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel\nthe rollout without taking any further actions. Note that products must\nsupport at least one of these options, however, it does not need to support\nboth.", + "location": "query", + "type": "boolean" + }, + "rollout": { + "description": "Name of the Rollout resource to cancel.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "description": "Deletes a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}", + "httpMethod": "DELETE", + "id": "compute.organizationRollouts.delete", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Name of the Rollout 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": "{+organization}/global/rollouts/{rollout}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Gets details of a single organization-scoped Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}", + "httpMethod": "GET", + "id": "compute.organizationRollouts.get", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "organization": { + "description": "Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{0,20}", + "required": true, + "type": "string" + }, + "rollout": { + "description": "Name of the persistent rollout 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": "{+organization}/global/rollouts/{rollout}", + "response": { + "$ref": "Rollout" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "description": "Lists Rollouts in a given organization and location.", + "flatPath": "organizations/{organizationsId}/global/rollouts", + "httpMethod": "GET", + "id": "compute.organizationRollouts.list", + "parameterOrder": [ + "organization" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. Most\nCompute resources support two types of filter expressions:\nexpressions that support regular expressions and expressions that follow\nAPI improvement proposal AIP-160.\nThese two types of filter expressions cannot be mixed in one request.\n\nIf you want to use AIP-160, your expression must specify the field name, an\noperator, and the value that you want to use for filtering. The value\nmust be a string, a number, or a boolean. The operator\nmust be either `=`, `!=`, `>`, `<`, `<=`, `>=` or `:`.\n\nFor example, if you are filtering Compute Engine instances, you can\nexclude instances named `example-instance` by specifying\n`name != example-instance`.\n\nThe `:*` comparison can be used to test whether a key has been defined.\nFor example, to find all objects with `owner` label use:\n```\nlabels.owner:*\n```\n\nYou can also filter nested fields. For example, you could specify\n`scheduling.automaticRestart = false` to include instances only\nif they are not scheduled for automatic restarts. You can use filtering\non nested fields to filter based onresource labels.\n\nTo filter on multiple expressions, provide each separate expression within\nparentheses. For example:\n```\n(scheduling.automaticRestart = true)\n(cpuPlatform = \"Intel Skylake\")\n```\nBy default, each expression is an `AND` expression. However, you\ncan include `AND` and `OR` expressions explicitly.\nFor example:\n```\n(cpuPlatform = \"Intel Skylake\") OR\n(cpuPlatform = \"Intel Broadwell\") AND\n(scheduling.automaticRestart = true)\n```\n\nIf you want to use a regular expression, use the `eq` (equal) or `ne`\n(not equal) operator against a single un-parenthesized expression with or\nwithout quotes or against multiple parenthesized expressions. Examples:\n\n`fieldname eq unquoted literal`\n`fieldname eq 'single quoted literal'`\n`fieldname eq \"double quoted literal\"`\n`(fieldname1 eq literal) (fieldname2 ne \"literal\")`\n\nThe literal value is interpreted as a regular expression using GoogleRE2 library syntax.\nThe literal value must match the entire field.\n\nFor example, to filter for instances that do not end with name \"instance\",\nyou would use `name ne .*instance`.\n\nYou cannot combine constraints on multiple fields using regular\nexpressions.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned.\nIf the number of available results is larger than `maxResults`,\nCompute Engine returns a `nextPageToken` that can be used to get\nthe next page of results in subsequent list requests. Acceptable values are\n`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\nare returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation\ntimestamp using `orderBy=\"creationTimestamp desc\"`. This sorts\nresults based on the `creationTimestamp` field in\nreverse chronological order (newest result first). Use this to sort\nresources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or\n`creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the\n`nextPageToken` returned by a previous list request to get\nthe next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case\nof failure. The default value is false.\n\nFor example, when partial success behavior is enabled, aggregatedList for a\nsingle zone scope either returns all resources in the zone or no resources,\nwith an error code.", + "location": "query", + "type": "boolean" + } + }, + "path": "{+organization}/global/rollouts", + "response": { + "$ref": "OrganizationRolloutsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "pause": { + "description": "Pauses a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}/pause", + "httpMethod": "POST", + "id": "compute.organizationRollouts.pause", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "etag": { + "description": "The etag of the Rollout.\nIf this is provided, the request will only succeed if the etag matches\nthe current etag of the Rollout.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to pause.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}/pause", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resume": { + "description": "Resumes a Rollout.", + "flatPath": "organizations/{organizationsId}/global/rollouts/{rollout}/resume", + "httpMethod": "POST", + "id": "compute.organizationRollouts.resume", + "parameterOrder": [ + "organization", + "rollout" + ], + "parameters": { + "etag": { + "description": "The etag of the Rollout.\nIf this is provided, the request will only succeed if the etag matches\nthe current etag of the Rollout.", + "location": "query", + "type": "string" + }, + "organization": { + "description": "Required. Organization ID for this request.", + "location": "path", + "pattern": "organizations/[0-9]{1,19}", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to resume.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "{+organization}/global/rollouts/{rollout}/resume", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "organizationSecurityPolicies": { "methods": { "addAssociation": { @@ -51930,7 +52407,7 @@ } } }, - "revision": "20260501", + "revision": "20260520", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -54613,7 +55090,7 @@ "Do not automatically scale the MIG in or out.\nThe recommended_size field contains the size of MIG that would be set if\nthe actuation mode was enabled.", "Automatically scale the MIG in and out according to the policy.", "Automatically create VMs according to the policy, but do not scale\nthe MIG in.", - "Automatically create VMs according to the policy, but do not scale\nthe MIG in." + "Automatically create VMs according to the policy, but do not scale\nthe MIG in.\nIt's recommended to use ONLY_SCALE_OUT instead of ONLY_UP." ], "type": "string" }, @@ -57083,6 +57560,20 @@ "description": "Denotes whether to enable logging for the load balancer\ntraffic served by this backend service. The default value is false.", "type": "boolean" }, + "loggingHttpRequestHeaders": { + "description": "The list of request headers that will be logged to Stackdriver.", + "items": { + "$ref": "BackendServiceLogConfigLoggingHttpHeader" + }, + "type": "array" + }, + "loggingHttpResponseHeaders": { + "description": "The list of response headers that will be logged to Stackdriver.", + "items": { + "$ref": "BackendServiceLogConfigLoggingHttpHeader" + }, + "type": "array" + }, "optionalFields": { "description": "This field can only be specified if logging is enabled for this backend\nservice and \"logConfig.optionalMode\" was set to CUSTOM. Contains a list\nof optional fields you want to include in the logs. For example:\nserverInstance, serverGkeDetails.cluster,\nserverGkeDetails.pod.podNamespace", "items": { @@ -57112,6 +57603,17 @@ }, "type": "object" }, + "BackendServiceLogConfigLoggingHttpHeader": { + "description": "Determines which HTTP headers will be logged to Stackdriver.", + "id": "BackendServiceLogConfigLoggingHttpHeader", + "properties": { + "headerName": { + "description": "The name of the header to be logged.", + "type": "string" + } + }, + "type": "object" + }, "BackendServiceNetworkPassThroughLbTrafficPolicy": { "id": "BackendServiceNetworkPassThroughLbTrafficPolicy", "properties": { @@ -60316,6 +60818,57 @@ }, "type": "object" }, + "DateTime": { + "description": "Represents civil time (or occasionally physical time).\n\nThis type can represent a civil time in one of a few possible ways:\n\n * When utc_offset is set and time_zone is unset: a civil time on a calendar\n day with a particular offset from UTC.\n * When time_zone is set and utc_offset is unset: a civil time on a calendar\n day in a particular time zone.\n * When neither time_zone nor utc_offset is set: a civil time on a calendar\n day in local time.\n\nThe date is relative to the Proleptic Gregorian Calendar.\n\nIf year, month, or day are 0, the DateTime is considered not to have a\nspecific year, month, or day respectively.\n\nThis type may also be used to represent a physical time if all the date and\ntime fields are set and either case of the `time_offset` oneof is set.\nConsider using `Timestamp` message for physical time instead. If your use\ncase also would like to store the user's timezone, that can be done in\nanother field.\n\nThis type is more flexible than some applications may want. Make sure to\ndocument and validate your application's limitations.", + "id": "DateTime", + "properties": { + "day": { + "description": "Optional. Day of month. Must be from 1 to 31 and valid for the year and\nmonth, or 0 if specifying a datetime without a day.", + "format": "int32", + "type": "integer" + }, + "hours": { + "description": "Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults\nto 0 (midnight). An API may choose to allow the value \"24:00:00\" for\nscenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Optional. Month of year. Must be from 1 to 12, or 0 if specifying a\ndatetime without a month.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Optional. Fractions of seconds in nanoseconds. Must be from 0 to\n999,999,999, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Optional. Seconds of minutes of the time. Must normally be from 0 to 59,\ndefaults to 0. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + }, + "timeZone": { + "$ref": "TimeZone", + "description": "Time zone." + }, + "utcOffset": { + "description": "UTC offset. Must be whole seconds, between -18 hours and +18 hours.\nFor example, a UTC offset of -4:00 would be represented as\n{ seconds: -14400 }.", + "format": "google-duration", + "type": "string" + }, + "year": { + "description": "Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a\ndatetime without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "DeprecationStatus": { "description": "Deprecation status for a public resource.", "id": "DeprecationStatus", @@ -69737,6 +70290,10 @@ "$ref": "HttpFaultInjection", "description": "The specification for fault injection introduced into traffic to test\nthe resiliency of clients to backend service failure. As part of fault\ninjection, when clients send requests to a backend service, delays can be\nintroduced by a load balancer on a percentage of requests before sending\nthose requests to the backend service. Similarly requests from clients can\nbe aborted by the load balancer for a percentage of requests.timeout and retry_policy is ignored by clients\nthat are configured with a fault_injection_policy if:\n1. The traffic is generated by fault injection AND\n2. The fault injection is not a delay fault injection.\nFault injection is not supported with the classic Application Load Balancer\n. To see which load balancers support fault injection,\nsee Load\nbalancing: Routing and traffic management features." }, + "imageOptimizationPolicy": { + "$ref": "ImageOptimizationPolicy", + "description": "Image optimization policy for this URL Map's route. Available only for\nGlobal EXTERNAL_MANAGED load balancer schemes.\nEither Cloud CDN must be enabled on the backend service or backend bucket\nserving the route, or cache policy must be configured on the same route" + }, "maxStreamDuration": { "$ref": "Duration", "description": "Specifies the maximum duration (timeout) for streams on the selected route.\nUnlike the timeout field where the timeout duration starts\nfrom the time the request has been fully processed (known as*end-of-stream*),\nthe duration in this field is computed from the beginning of the stream\nuntil the response has been processed, including all retries. A\nstream that does not complete in this duration is closed.\n\nIf not specified, this field uses the maximummaxStreamDuration value among all backend services associated\nwith the route.\n\nThis field is only allowed if the Url map is used with backend services\nwith loadBalancingScheme set toINTERNAL_SELF_MANAGED." @@ -70509,6 +71066,27 @@ }, "type": "object" }, + "ImageOptimizationPolicy": { + "description": "The configuration for Cloud CDN's image optimization feature. This feature\ndynamically processes and delivers images from the network edge.\nImage Optimization is only available for Global External Application Load\nBalancers.\nEither Cloud CDN must be enabled on the backend service or backend bucket\nserving the route, or cache policy must be configured on the same route.", + "id": "ImageOptimizationPolicy", + "properties": { + "queryParameterInterpretation": { + "description": "Specifies whether to interpret query parameters for image optimization.", + "enum": [ + "DISABLED", + "ENABLED", + "QUERY_PARAMETER_INTERPRETATION_UNSPECIFIED" + ], + "enumDescriptions": [ + "Query parameters for image optimization are ignored.", + "Query parameters for image optimization are interpreted.", + "Default value. This field value translates to the\ndefault behavior, which is to ignore query parameters for image\noptimization." + ], + "type": "string" + } + }, + "type": "object" + }, "ImageParams": { "description": "Additional image params.", "id": "ImageParams", @@ -71801,6 +72379,12 @@ "readOnly": true, "type": "integer" }, + "restartingInPlace": { + "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be restarted or are currently being restarted.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, "resuming": { "description": "Output only. The number of instances in the managed instance group that\nare scheduled to be resumed or are currently being resumed.", "format": "int32", @@ -73150,6 +73734,27 @@ "InstanceGroupManagerUpdatePolicy": { "id": "InstanceGroupManagerUpdatePolicy", "properties": { + "allowedActions": { + "description": "Actions that are allowed to update instances within MIG.", + "items": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART", + "RESTART_IN_PLACE" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." + ], + "type": "string" + }, + "type": "array" + }, "instanceRedistributionType": { "description": "The \ninstance redistribution policy for regional managed instance groups.\nValid values are: \n \n - PROACTIVE (default): The group attempts to maintain an\n even distribution of VM instances across zones in the region.\n - NONE: For non-autoscaled groups, proactive\n redistribution is disabled.", "enum": [ @@ -73181,13 +73786,15 @@ "NONE", "REFRESH", "REPLACE", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "Do not perform any action.", "Do not stop the instance.", "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." ], "type": "string" }, @@ -73197,13 +73804,15 @@ "NONE", "REFRESH", "REPLACE", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "Do not perform any action.", "Do not stop the instance.", "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." ], "type": "string" }, @@ -73273,6 +73882,27 @@ "description": "Flag to update all instances instead of specified list of “instances”.\nIf the flag is set to true then the instances may not be specified\nin the request.", "type": "boolean" }, + "allowedActions": { + "description": "Actions that are allowed to update instances within MIG.", + "items": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART", + "RESTART_IN_PLACE" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." + ], + "type": "string" + }, + "type": "array" + }, "instances": { "description": "The list of URLs of one or more instances for which you want to apply\nupdates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME].", "items": { @@ -73286,13 +73916,15 @@ "NONE", "REFRESH", "REPLACE", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "Do not perform any action.", "Do not stop the instance.", "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." ], "type": "string" }, @@ -73302,13 +73934,15 @@ "NONE", "REFRESH", "REPLACE", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "Do not perform any action.", "Do not stop the instance.", "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." ], "type": "string" } @@ -74714,16 +75348,16 @@ "properties": { "error": { "$ref": "InstanceManagedByIgmErrorManagedInstanceError", - "description": "Output only. [Output Only] Contents of the error.", + "description": "Output only. Contents of the error.", "readOnly": true }, "instanceActionDetails": { "$ref": "InstanceManagedByIgmErrorInstanceActionDetails", - "description": "Output only. [Output Only] Details of the instance action that triggered this error.\nMay be null, if the error was not caused by an action on an instance.\nThis field is optional.", + "description": "Output only. Details of the instance action that triggered this error.\nMay be null, if the error was not caused by an action on an instance.\nThis field is optional.", "readOnly": true }, "timestamp": { - "description": "Output only. [Output Only] The time that this error occurred.\nThis value is in RFC3339 text format.", + "description": "Output only. The time that this error occurred. This value is in RFC3339 text format.", "readOnly": true, "type": "string" } @@ -74734,7 +75368,7 @@ "id": "InstanceManagedByIgmErrorInstanceActionDetails", "properties": { "action": { - "description": "Output only. [Output Only] Action that managed instance group was executing on\nthe instance when the error occurred. Possible values:", + "description": "Output only. Action that managed instance group was executing on the instance when the\nerror occurred. Possible values:", "enum": [ "ABANDONING", "ADOPTING", @@ -74745,6 +75379,7 @@ "RECREATING", "REFRESHING", "RESTARTING", + "RESTARTING_IN_PLACE", "RESUMING", "STARTING", "STOPPING", @@ -74761,6 +75396,7 @@ "The managed instance group is recreating this instance.", "The managed instance group is applying configuration changes to the\ninstance without stopping it. For example, the group can update the\ntarget pool list for an instance without stopping that instance.", "The managed instance group is restarting this instance.", + "The managed instance group is restarting this instance while preserving\nits capacity and local SSDs.", "The managed instance group is resuming this instance.", "The managed instance group is starting this instance.", "The managed instance group is stopping this instance.", @@ -74771,13 +75407,13 @@ "type": "string" }, "instance": { - "description": "Output only. [Output Only] The URL of the instance.\nThe URL can be set even if the instance has not yet been created.", + "description": "Output only. The URL of the instance. The URL can be set even if the instance has not\nyet been created.", "readOnly": true, "type": "string" }, "version": { "$ref": "ManagedInstanceVersion", - "description": "Output only. [Output Only] Version this instance was created from, or was being\ncreated from, but the creation failed. Corresponds to one of the versions\nthat were set on the Instance Group Manager resource at the time this\ninstance was being created.", + "description": "Output only. Version this instance was created from, or was being\ncreated from, but the creation failed. Corresponds to one of the versions\nthat were set on the Instance Group Manager resource at the time this\ninstance was being created.", "readOnly": true } }, @@ -74787,12 +75423,12 @@ "id": "InstanceManagedByIgmErrorManagedInstanceError", "properties": { "code": { - "description": "Output only. [Output Only] Error code.", + "description": "Output only. Error code.", "readOnly": true, "type": "string" }, "message": { - "description": "Output only. [Output Only] Error message.", + "description": "Output only. Error message.", "readOnly": true, "type": "string" } @@ -82559,6 +83195,7 @@ "RECREATING", "REFRESHING", "RESTARTING", + "RESTARTING_IN_PLACE", "RESUMING", "STARTING", "STOPPING", @@ -82575,6 +83212,7 @@ "The managed instance group is recreating this instance.", "The managed instance group is applying configuration changes to the\ninstance without stopping it. For example, the group can update the\ntarget pool list for an instance without stopping that instance.", "The managed instance group is restarting this instance.", + "The managed instance group is restarting this instance while preserving\nits capacity and local SSDs.", "The managed instance group is resuming this instance.", "The managed instance group is starting this instance.", "The managed instance group is stopping this instance.", @@ -91610,6 +92248,167 @@ }, "type": "object" }, + "OrganizationRolloutsListResponse": { + "id": "OrganizationRolloutsListResponse", + "properties": { + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "description": "A list of Rollout resources.", + "items": { + "$ref": "Rollout" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for\nlist requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for\nthe query parameter pageToken in the next list request.\nSubsequent list requests will have their own nextPageToken to\ncontinue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "Output only. [Output Only] Server-defined URL for this resource.", + "readOnly": true, + "type": "string" + }, + "unreachables": { + "description": "Output only. [Output Only] Unreachable resources.\nend_interface: MixerListResponseWithEtagBuilder", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute\nEngine returns NO_RESULTS_ON_PAGE if there\nare 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", + "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", + "LARGE_DEPLOYMENT_WARNING", + "LIST_OVERHEAD_QUOTA_EXCEED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_HAS_NO_IPV6_INTERFACE", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "QUOTA_INFO_UNAVAILABLE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed\noperation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as\ndeprecated", + "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\nexperimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden.\nDeprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "A WEIGHTED_MAGLEV backend service is associated with a health check that is\nnot of type HTTP/HTTPS/HTTP2.", + "When deploying a deployment with a exceedingly large number of resources", + "Resource can't be retrieved due to list overhead quota exceed\nwhich captures the amount of resources filtered out by\nuser-defined list filter.", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the\nnetwork.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not have an\nipv6 interface on the same network as the route.", + "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\nsame 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\nthe mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "Quota information is not available to client requests (e.g:\nregions.list).", + "The user attempted to use a resource that requires a TOS they have not\naccepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted\nbecause they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but\nits application does not make a lot of sense, because it allows only\nsingle 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:\nvalue format. For example:\n\n\"data\": [\n {\n \"key\": \"scope\",\n \"value\": \"zones/us-east1-d\"\n }", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being\nreturned. For example, for warnings where there are no results in a list\nrequest for a particular zone, this key might be scope and\nthe key value might be the zone name. Other examples might be a key\nindicating a deprecated resource and a suggested replacement, or a\nwarning about invalid network settings (for example, if an instance\nattempts 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" + }, "OrganizationSecurityPoliciesListAssociationsResponse": { "id": "OrganizationSecurityPoliciesListAssociationsResponse", "properties": { @@ -92551,6 +93350,54 @@ }, "type": "object" }, + "PeriodicPartialMaintenanceSchedule": { + "description": "The periodic partial maintenance schedule includes 52 weeks worth of\nmaintenance windows.\nLINT.IfChange(PeriodicPartialMaintenanceSchedule)", + "id": "PeriodicPartialMaintenanceSchedule", + "properties": { + "subType": { + "description": "The maintenance type in which the zone is during the given window.", + "enum": [ + "MAINTENANCE_SUBTYPE_UNSPECIFIED", + "MAINTENANCE_TYPE_CUSTOMER_MAINTENANCE", + "MAINTENANCE_TYPE_DISRUPTIVE_UPGRADE", + "MAINTENANCE_TYPE_STABLE", + "MAINTENANCE_TYPE_TRANSITION" + ], + "enumDescriptions": [ + "Default value.", + "A dedicated window for customers to perform their own maintenance. This\noften runs concurrently with a DISRUPTIVE_UPGRADE.", + "For disruptive updates, including host machine kernel or firmware\nupgrades.", + "A post-maintenance window for customers to conduct final testing and\nperformance validation before resuming full business operations.", + "For preliminary, non-disruptive tasks such as key rotations." + ], + "type": "string" + }, + "targetResource": { + "description": "The target resource that the maintenance window is for.\nFor example, \"projects/my-project/zones/us-central1-a\".", + "type": "string" + }, + "type": { + "enum": [ + "MAINTENANCE_TYPE_UNSPECIFIED", + "PRIVATE_ZONE_MAINTENANCE" + ], + "enumDescriptions": [ + "Default value.", + "The zone is in a private maintenance window." + ], + "type": "string" + }, + "windowEndTime": { + "$ref": "DateTime", + "description": "The end civil timestamp of the window (not inclusive).\nThis contains a time zone." + }, + "windowStartTime": { + "$ref": "DateTime", + "description": "The start civil timestamp of the window.\nThis contains a time zone." + } + }, + "type": "object" + }, "Policy": { "description": "An Identity and Access Management (IAM) policy, which specifies access\ncontrols for Google Cloud resources.\n\n\nA `Policy` is a collection of `bindings`. A `binding` binds one or more\n`members`, or principals, to a single `role`. Principals can be user\naccounts, service accounts, Google groups, and domains (such as G Suite). A\n`role` is a named list of permissions; each `role` can be an IAM predefined\nrole or a user-created custom role.\n\nFor some types of Google Cloud resources, a `binding` can also specify a\n`condition`, which is a logical expression that allows access to a resource\nonly if the expression evaluates to `true`. A condition can add constraints\nbased on attributes of the request, the resource, or both. To learn which\nresources support conditions in their IAM policies, see the\n[IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).\n\n**JSON example:**\n\n```\n {\n \"bindings\": [\n {\n \"role\": \"roles/resourcemanager.organizationAdmin\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-project-id@appspot.gserviceaccount.com\"\n ]\n },\n {\n \"role\": \"roles/resourcemanager.organizationViewer\",\n \"members\": [\n \"user:eve@example.com\"\n ],\n \"condition\": {\n \"title\": \"expirable access\",\n \"description\": \"Does not grant access after Sep 2020\",\n \"expression\": \"request.time < timestamp('2020-10-01T00:00:00.000Z')\",\n }\n }\n ],\n \"etag\": \"BwWWja0YfJA=\",\n \"version\": 3\n }\n```\n\n**YAML example:**\n\n```\n bindings:\n - members:\n - user:mike@example.com\n - group:admins@example.com\n - domain:google.com\n - serviceAccount:my-project-id@appspot.gserviceaccount.com\n role: roles/resourcemanager.organizationAdmin\n - members:\n - user:eve@example.com\n role: roles/resourcemanager.organizationViewer\n condition:\n title: expirable access\n description: Does not grant access after Sep 2020\n expression: request.time < timestamp('2020-10-01T00:00:00.000Z')\n etag: BwWWja0YfJA=\n version: 3\n```\n\nFor a description of IAM and its features, see the\n[IAM documentation](https://cloud.google.com/iam/docs/).", "id": "Policy", @@ -95873,6 +96720,27 @@ "description": "Flag to update all instances instead of specified list of “instances”.\nIf the flag is set to true then the instances may not be specified\nin the request.", "type": "boolean" }, + "allowedActions": { + "description": "Actions that are allowed to update instances within MIG.", + "items": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART", + "RESTART_IN_PLACE" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Do not stop the instance.", + "(Default.) Replace the instance according to the replacement method\noption.", + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." + ], + "type": "string" + }, + "type": "array" + }, "instances": { "description": "The list of URLs of one or more instances for which you want to apply\nupdates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME].", "items": { @@ -95886,13 +96754,15 @@ "NONE", "REFRESH", "REPLACE", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "Do not perform any action.", "Do not stop the instance.", "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." ], "type": "string" }, @@ -95902,13 +96772,15 @@ "NONE", "REFRESH", "REPLACE", - "RESTART" + "RESTART", + "RESTART_IN_PLACE" ], "enumDescriptions": [ "Do not perform any action.", "Do not stop the instance.", "(Default.) Replace the instance according to the replacement method\noption.", - "Stop the instance and start it again." + "Stop the instance and start it again.", + "Restart the instance using the same capacity and preserving local SSDs." ], "type": "string" } @@ -99754,6 +100626,11 @@ "description": "Represents the physical host topology of the host on which the VM is\nrunning.", "id": "ResourceStatusPhysicalHostTopology", "properties": { + "additionalAttributes": { + "$ref": "ResourceStatusPhysicalHostTopologyAdditionalAttributes", + "description": "Output only. [Output Only] Additional location information of the running instance.", + "readOnly": true + }, "block": { "description": "[Output Only] The ID of the block in which the running instance is\nlocated. Instances within the same block experience low network latency.", "type": "string" @@ -99773,6 +100650,21 @@ }, "type": "object" }, + "ResourceStatusPhysicalHostTopologyAdditionalAttributes": { + "description": "Additional location information of the running instance.", + "id": "ResourceStatusPhysicalHostTopologyAdditionalAttributes", + "properties": { + "acceleratorTopologyIds": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. The IDs of the accelerator topologies the instance belongs to. For\nexample\nThe key will be topologies like \"4x4\", \"2x2x2\" and the value will be\nthe location ID of the topologies.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "ResourceStatusReservationConsumptionInfo": { "description": "Reservation consumption information that the instance is consuming from.", "id": "ResourceStatusReservationConsumptionInfo", @@ -99781,6 +100673,16 @@ "description": "Output only. [Output Only] The full resource name of the reservation that this\ninstance is consuming from.", "readOnly": true, "type": "string" + }, + "consumedReservationBlock": { + "description": "Output only. [Output Only] The full resource name of the reservation block that this\ninstance is consuming from.", + "readOnly": true, + "type": "string" + }, + "consumedReservationSubBlock": { + "description": "Output only. [Output Only] The full resource name of the reservation sub-block that\nthis instance is consuming from.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -99890,6 +100792,16 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "pauseTime": { + "description": "Output only. The timestamp at which the Rollout was paused.", + "readOnly": true, + "type": "string" + }, + "resumeTime": { + "description": "Output only. The timestamp at which the Rollout was resumed.", + "readOnly": true, + "type": "string" + }, "rolloutEntity": { "$ref": "RolloutRolloutEntity", "description": "Required. The resource being rolled out." @@ -102071,6 +102983,12 @@ }, "type": "array" }, + "effectiveTcpTimeWaitTimeoutSec": { + "description": "Output only. Effective timeout (in seconds) for TCP connections that are in TIME_WAIT\nstate. This value is equal to tcp_time_wait_timeout_sec if it is set,\notherwise it is equal to 120s. The field is output only.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, "enableDynamicPortAllocation": { "description": "Enable Dynamic Port Allocation.\n\n\nIf not specified, it is disabled by default.\n\n\nIf set to true,\n \n - Dynamic Port Allocation will be enabled on this NAT\n config.\n - enableEndpointIndependentMapping cannot be set to true.\n - If minPorts is set, minPortsPerVm must be set to a\n power of two greater than or equal to 32. If minPortsPerVm is not set, a\n minimum of 32 ports will be allocated to a VM from this NAT\n config.", "type": "boolean" @@ -115607,6 +116525,21 @@ }, "type": "object" }, + "TimeZone": { + "description": "Represents a time zone from the\n[IANA Time Zone Database](https://www.iana.org/time-zones).", + "id": "TimeZone", + "properties": { + "id": { + "description": "IANA Time Zone Database time zone. For example \"America/New_York\".", + "type": "string" + }, + "version": { + "description": "Optional. IANA Time Zone Database version number. For example \"2019a\".", + "type": "string" + } + }, + "type": "object" + }, "Uint128": { "id": "Uint128", "properties": { @@ -119766,6 +120699,10 @@ "description": "[Output Only] Full URL reference to the region which hosts the zone.", "type": "string" }, + "resourceStatus": { + "$ref": "ZoneResourceStatus", + "readOnly": true + }, "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" @@ -119947,6 +120884,20 @@ }, "type": "object" }, + "ZoneResourceStatus": { + "id": "ZoneResourceStatus", + "properties": { + "upcomingMaintenances": { + "description": "Output only. [Output Only] The upcoming maintenance schedule.", + "items": { + "$ref": "PeriodicPartialMaintenanceSchedule" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ZoneSetLabelsRequest": { "id": "ZoneSetLabelsRequest", "properties": { diff --git a/src/apis/compute/alpha.ts b/src/apis/compute/alpha.ts index 913e6b74aa..9d07742634 100644 --- a/src/apis/compute/alpha.ts +++ b/src/apis/compute/alpha.ts @@ -129,6 +129,7 @@ export namespace compute_alpha { externalVpnGateways: Resource$Externalvpngateways; firewallPolicies: Resource$Firewallpolicies; firewalls: Resource$Firewalls; + folderZoneVmExtensionPolicies: Resource$Folderzonevmextensionpolicies; forwardingRules: Resource$Forwardingrules; futureReservations: Resource$Futurereservations; globalAddresses: Resource$Globaladdresses; @@ -174,8 +175,12 @@ export namespace compute_alpha { nodeGroups: Resource$Nodegroups; nodeTemplates: Resource$Nodetemplates; nodeTypes: Resource$Nodetypes; + organizationRolloutPlans: Resource$Organizationrolloutplans; + organizationRollouts: Resource$Organizationrollouts; organizationSecurityPolicies: Resource$Organizationsecuritypolicies; organizationSnapshotRecycleBinPolicy: Resource$Organizationsnapshotrecyclebinpolicy; + organizationZoneVmExtensionPolicies: Resource$Organizationzonevmextensionpolicies; + orgVmExtensionPolicies: Resource$Orgvmextensionpolicies; packetMirrorings: Resource$Packetmirrorings; previewFeatures: Resource$Previewfeatures; projects: Resource$Projects; @@ -280,6 +285,8 @@ export namespace compute_alpha { this.externalVpnGateways = new Resource$Externalvpngateways(this.context); this.firewallPolicies = new Resource$Firewallpolicies(this.context); this.firewalls = new Resource$Firewalls(this.context); + this.folderZoneVmExtensionPolicies = + new Resource$Folderzonevmextensionpolicies(this.context); this.forwardingRules = new Resource$Forwardingrules(this.context); this.futureReservations = new Resource$Futurereservations(this.context); this.globalAddresses = new Resource$Globaladdresses(this.context); @@ -350,10 +357,21 @@ export namespace compute_alpha { this.nodeGroups = new Resource$Nodegroups(this.context); this.nodeTemplates = new Resource$Nodetemplates(this.context); this.nodeTypes = new Resource$Nodetypes(this.context); + this.organizationRolloutPlans = new Resource$Organizationrolloutplans( + this.context + ); + this.organizationRollouts = new Resource$Organizationrollouts( + this.context + ); this.organizationSecurityPolicies = new Resource$Organizationsecuritypolicies(this.context); this.organizationSnapshotRecycleBinPolicy = new Resource$Organizationsnapshotrecyclebinpolicy(this.context); + this.organizationZoneVmExtensionPolicies = + new Resource$Organizationzonevmextensionpolicies(this.context); + this.orgVmExtensionPolicies = new Resource$Orgvmextensionpolicies( + this.context + ); this.packetMirrorings = new Resource$Packetmirrorings(this.context); this.previewFeatures = new Resource$Previewfeatures(this.context); this.projects = new Resource$Projects(this.context); @@ -4397,6 +4415,14 @@ export namespace compute_alpha { * traffic served by this backend service. The default value is false. */ enable?: boolean | null; + /** + * The list of request headers that will be logged to Stackdriver. + */ + loggingHttpRequestHeaders?: Schema$BackendServiceLogConfigLoggingHttpHeader[]; + /** + * The list of response headers that will be logged to Stackdriver. + */ + loggingHttpResponseHeaders?: Schema$BackendServiceLogConfigLoggingHttpHeader[]; /** * Deprecated in favor of optionalMode. * This field can only be specified if logging is enabled for this backend @@ -4429,6 +4455,15 @@ export namespace compute_alpha { */ sampleRate?: number | null; } + /** + * Determines which HTTP headers will be logged to Stackdriver. + */ + export interface Schema$BackendServiceLogConfigLoggingHttpHeader { + /** + * The name of the header to be logged. + */ + headerName?: string | null; + } export interface Schema$BackendServiceNetworkPassThroughLbTrafficPolicy { /** * When configured, new connections are load balanced across healthy backend @@ -11322,11 +11357,6 @@ export namespace compute_alpha { * Name of the destination zone for the failover. */ failoverToZone?: string | null; - /** - * Name of the destination zone for the failover. - * Deprecated: use failover_to_zone instead. - */ - primaryZone?: string | null; } export interface Schema$HaControllersList { etag?: string | null; @@ -15822,6 +15852,10 @@ export namespace compute_alpha { * in the request. */ allInstances?: boolean | null; + /** + * Actions that are allowed to update instances within MIG. + */ + allowedActions?: string[] | null; /** * Whether the boot disk is allowed to be updated with restart. */ @@ -16493,6 +16527,10 @@ export namespace compute_alpha { mode?: string | null; } export interface Schema$InstanceGroupManagerUpdatePolicy { + /** + * Actions that are allowed to update instances within MIG. + */ + allowedActions?: string[] | null; /** * Whether the boot disk is allowed to be updated with restart. */ @@ -16790,34 +16828,33 @@ export namespace compute_alpha { } export interface Schema$InstanceManagedByIgmError { /** - * Output only. [Output Only] Contents of the error. + * Output only. Contents of the error. */ error?: Schema$InstanceManagedByIgmErrorManagedInstanceError; /** - * Output only. [Output Only] Details of the instance action that triggered this error. + * Output only. Details of the instance action that triggered this error. * May be null, if the error was not caused by an action on an instance. * This field is optional. */ instanceActionDetails?: Schema$InstanceManagedByIgmErrorInstanceActionDetails; /** - * Output only. [Output Only] The time that this error occurred. - * This value is in RFC3339 text format. + * Output only. The time that this error occurred. This value is in RFC3339 text format. */ timestamp?: string | null; } export interface Schema$InstanceManagedByIgmErrorInstanceActionDetails { /** - * Output only. [Output Only] Action that managed instance group was executing on - * the instance when the error occurred. Possible values: + * Output only. Action that managed instance group was executing on the instance when the + * error occurred. Possible values: */ action?: string | null; /** - * Output only. [Output Only] The URL of the instance. - * The URL can be set even if the instance has not yet been created. + * Output only. The URL of the instance. The URL can be set even if the instance has not + * yet been created. */ instance?: string | null; /** - * Output only. [Output Only] Version this instance was created from, or was being + * Output only. Version this instance was created from, or was being * created from, but the creation failed. Corresponds to one of the versions * that were set on the Instance Group Manager resource at the time this * instance was being created. @@ -16826,11 +16863,11 @@ export namespace compute_alpha { } export interface Schema$InstanceManagedByIgmErrorManagedInstanceError { /** - * Output only. [Output Only] Error code. + * Output only. Error code. */ code?: string | null; /** - * Output only. [Output Only] Error message. + * Output only. Error message. */ message?: string | null; } @@ -25950,6 +25987,42 @@ export namespace compute_alpha { message?: string; } | null; } + export interface Schema$OrganizationRolloutsListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Rollout resources. + */ + items?: Schema$Rollout[]; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, 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. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$OrganizationSecurityPoliciesListAssociationsResponse { /** * A list of associations. @@ -28881,6 +28954,10 @@ export namespace compute_alpha { * in the request. */ allInstances?: boolean | null; + /** + * Actions that are allowed to update instances within MIG. + */ + allowedActions?: string[] | null; /** * Whether the boot disk is allowed to be updated with restart. */ @@ -30967,6 +31044,10 @@ export namespace compute_alpha { * running. */ export interface Schema$ResourceStatusPhysicalHostTopology { + /** + * Output only. [Output Only] Additional location information of the running instance. + */ + additionalAttributes?: Schema$ResourceStatusPhysicalHostTopologyAdditionalAttributes; /** * [Output Only] The ID of the block in which the running instance is * located. Instances within the same block experience low network latency. @@ -30990,6 +31071,18 @@ export namespace compute_alpha { */ subblock?: string | null; } + /** + * Additional location information of the running instance. + */ + export interface Schema$ResourceStatusPhysicalHostTopologyAdditionalAttributes { + /** + * Output only. The IDs of the accelerator topologies the instance belongs to. For + * example + * The key will be topologies like "4x4", "2x2x2" and the value will be + * the location ID of the topologies. + */ + acceleratorTopologyIds?: {[key: string]: string} | null; + } /** * Reservation consumption information that the instance is consuming from. */ @@ -32573,6 +32666,12 @@ export namespace compute_alpha { * These IPs should be used for updating/patching a NAT only. */ drainNatIps?: string[] | null; + /** + * Output only. Effective timeout (in seconds) for TCP connections that are in TIME_WAIT + * state. This value is equal to tcp_time_wait_timeout_sec if it is set, + * otherwise it is equal to 120s. The field is output only. + */ + effectiveTcpTimeWaitTimeoutSec?: number | null; /** * Enable Dynamic Port Allocation. * @@ -35910,6 +36009,11 @@ export namespace compute_alpha { * The value is the rule for the key. */ rules?: {[key: string]: Schema$SnapshotRecycleBinPolicyRule} | null; + /** + * Output only. The system rules for snapshot recycle bin policy. + * Defines the default rule that applies if no customer-defined rule matches. + */ + systemRules?: {[key: string]: Schema$SnapshotRecycleBinPolicyRule} | null; } /** * A rule that defines the retention policy for snapshots in the recycle bin. @@ -70763,17 +70867,14 @@ export namespace compute_alpha { requestBody?: Schema$Firewall; } - export class Resource$Forwardingrules { + export class Resource$Folderzonevmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of forwarding rules. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes a specified zone VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -70797,7 +70898,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -70806,121 +70906,60 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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. + * const res = await compute.folderZoneVmExtensionPolicies.delete({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // 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. * // - * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Name of the zone VM extension policy to delete. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -70936,57 +70975,53 @@ export namespace compute_alpha { * @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$Forwardingrules$Aggregatedlist, + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Forwardingrules$Aggregatedlist, + delete( + params?: Params$Resource$Folderzonevmextensionpolicies$Delete, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Forwardingrules$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Folderzonevmextensionpolicies$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Forwardingrules$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Aggregatedlist; + {}) as Params$Resource$Folderzonevmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Aggregatedlist; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Delete; options = {}; } @@ -71001,32 +71036,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/forwardingRules' + '/compute/alpha/{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['folder', 'zone', 'vmExtensionPolicy'], + pathParams: ['folder', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes the specified ForwardingRule resource. + * Retrieves details of a specific zone VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -71050,6 +71083,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -71058,61 +71092,32 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.delete({ - * // Name of the ForwardingRule resource to delete. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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 scoping 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). - * requestId: 'placeholder-value', + * const res = await compute.folderZoneVmExtensionPolicies.get({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the VM extension policy resource to return. + * vmExtensionPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "instanceSelectors": [], * // "kind": "my_kind", + * // "managedByGlobal": false, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "priority": 0, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -71128,53 +71133,53 @@ export namespace compute_alpha { * @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$Forwardingrules$Delete, + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Forwardingrules$Delete, + get( + params?: Params$Resource$Folderzonevmextensionpolicies$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Forwardingrules$Delete, + ): Promise>; + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Forwardingrules$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Forwardingrules$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Folderzonevmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Forwardingrules$Delete - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Delete; + {}) as Params$Resource$Folderzonevmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Delete; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Get; options = {}; } @@ -71189,30 +71194,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' + '/compute/alpha/{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], + requiredParams: ['folder', 'zone', 'vmExtensionPolicy'], + pathParams: ['folder', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified ForwardingRule resource. + * Retrieves details of a specific VM extension within a folder. * @example * ```js * // Before running the sample: @@ -71245,64 +71250,19 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.get({ - * // Name of the ForwardingRule resource to return. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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 scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * view: 'placeholder-value', + * const res = await compute.folderZoneVmExtensionPolicies.getVmExtension({ + * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "IPAddress": "my_IPAddress", - * // "IPAddresses": [], - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "availabilityGroup": "my_availabilityGroup", - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "childForwardingRules": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "parentForwardingRule": "my_parentForwardingRule", - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "versions": [] * // } * } * @@ -71318,53 +71278,54 @@ export namespace compute_alpha { * @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$Forwardingrules$Get, + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Forwardingrules$Get, + getVmExtension( + params?: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Forwardingrules$Get, + ): Promise>; + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Forwardingrules$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Forwardingrules$Get, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Folderzonevmextensionpolicies$Getvmextension, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + getVmExtension(callback: BodyResponseCallback): void; + getVmExtension( paramsOrCallback?: - | Params$Resource$Forwardingrules$Get - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Getvmextension + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Get; + {}) as Params$Resource$Folderzonevmextensionpolicies$Getvmextension; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Get; + params = + {} as Params$Resource$Folderzonevmextensionpolicies$Getvmextension; options = {}; } @@ -71379,7 +71340,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' + '/compute/alpha/{+folder}/zones/{zone}/vmExtensions/{extensionName}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -71387,23 +71348,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], + requiredParams: ['folder', 'zone', 'extensionName'], + pathParams: ['extensionName', 'folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a ForwardingRule resource in the specified project and region using - * the data included in the request. + * Creates a new zone-level VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -71435,12 +71395,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.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 scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.folderZoneVmExtensionPolicies.insert({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // 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. @@ -71455,54 +71412,27 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "IPAddress": "my_IPAddress", - * // "IPAddresses": [], - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "availabilityGroup": "my_availabilityGroup", - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], + * // "managedByGlobal": false, * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "parentForwardingRule": "my_parentForwardingRule", - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", + * // "priority": 0, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -71554,31 +71484,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderzonevmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Forwardingrules$Insert, + params?: Params$Resource$Folderzonevmextensionpolicies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderzonevmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderzonevmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Forwardingrules$Insert, + params: Params$Resource$Folderzonevmextensionpolicies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Forwardingrules$Insert + | Params$Resource$Folderzonevmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -71594,12 +71524,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Insert; + {}) as Params$Resource$Folderzonevmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Insert; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Insert; options = {}; } @@ -71614,7 +71544,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules' + '/compute/alpha/{+folder}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -71622,8 +71552,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], context: this.context, }; if (callback) { @@ -71637,8 +71567,7 @@ export namespace compute_alpha { } /** - * Retrieves a list of ForwardingRule resources available to the specified - * project and region. + * Lists all VM extension policies within a specific zone for a folder. * @example * ```js * // Before running the sample: @@ -71671,7 +71600,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.list({ + * const res = await compute.folderZoneVmExtensionPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -71731,6 +71660,8 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // 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 @@ -71753,11 +71684,6 @@ export namespace compute_alpha { * // `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 scoping 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. * // @@ -71765,16 +71691,20 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -71792,52 +71722,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Forwardingrules$List, + params: Params$Resource$Folderzonevmextensionpolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Forwardingrules$List, + params?: Params$Resource$Folderzonevmextensionpolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Forwardingrules$List, + params: Params$Resource$Folderzonevmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Forwardingrules$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Folderzonevmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Forwardingrules$List, - callback: BodyResponseCallback + params: Params$Resource$Folderzonevmextensionpolicies$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Forwardingrules$List - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$List; + {}) as Params$Resource$Folderzonevmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$List; + params = {} as Params$Resource$Folderzonevmextensionpolicies$List; options = {}; } @@ -71852,7 +71784,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules' + '/compute/alpha/{+folder}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -71860,26 +71792,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified forwarding rule with the data included in the - * request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. Currently, you can only - * patch the network_tier field. + * Lists all VM extensions within a specific zone for a folder. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -71903,6 +71832,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -71911,308 +71841,112 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.patch({ - * // Name of the ForwardingRule resource to patch. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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 scoping 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. + * const res = await compute.folderZoneVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. * // - * // For example, consider a situation where you make an initial request and - * // the request times out. If you make the request again with the same - * // request ID, the server can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "IPAddress": "my_IPAddress", - * // "IPAddresses": [], - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "availabilityGroup": "my_availabilityGroup", - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "childForwardingRules": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], - * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "parentForwardingRule": "my_parentForwardingRule", - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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$Forwardingrules$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Forwardingrules$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Forwardingrules$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Forwardingrules$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Forwardingrules$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Forwardingrules$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$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/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Sets the labels on the specified resource. To learn more about labels, - * read the - * Labeling Resources documentation. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.forwardingRules.setLabels({ - * // 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 for 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, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. * // - * // 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 `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // 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 - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -72228,53 +71962,58 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Forwardingrules$Setlabels, + listVmExtensions( + params?: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, + ): Promise>; + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Forwardingrules$Setlabels, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Folderzonevmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( paramsOrCallback?: - | Params$Resource$Forwardingrules$Setlabels - | BodyResponseCallback + | Params$Resource$Folderzonevmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Setlabels; + {}) as Params$Resource$Folderzonevmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Setlabels; + params = + {} as Params$Resource$Folderzonevmextensionpolicies$Listvmextensions; options = {}; } @@ -72288,32 +72027,30 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels' + rootUrl + '/compute/alpha/{+folder}/zones/{zone}/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['folder', 'zone'], + pathParams: ['folder', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Changes target URL for forwarding rule. The new target should be of the - * same type as the old target. + * Modifies an existing zone VM extension policy within a folder. * @example * ```js * // Before running the sample: @@ -72345,14 +72082,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.forwardingRules.setTarget({ - * // Name of the ForwardingRule resource in which target is to be set. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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 scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.folderZoneVmExtensionPolicies.update({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', * // 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. @@ -72367,12 +72099,29 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the zone VM extension policy to update. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "target": "my_target" + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -72423,32 +72172,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderzonevmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; - setTarget( - params?: Params$Resource$Forwardingrules$Settarget, + update( + params?: Params$Resource$Folderzonevmextensionpolicies$Update, options?: MethodOptions ): Promise>; - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderzonevmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderzonevmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Forwardingrules$Settarget, + update( + params: Params$Resource$Folderzonevmextensionpolicies$Update, callback: BodyResponseCallback ): void; - setTarget(callback: BodyResponseCallback): void; - setTarget( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Forwardingrules$Settarget + | Params$Resource$Folderzonevmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -72464,12 +72213,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Settarget; + {}) as Params$Resource$Folderzonevmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Settarget; + params = {} as Params$Resource$Folderzonevmextensionpolicies$Update; options = {}; } @@ -72484,16 +72233,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget' + '/compute/alpha/{+folder}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'forwardingRule'], - pathParams: ['forwardingRule', 'project', 'region'], + requiredParams: ['folder', 'zone', 'vmExtensionPolicy'], + pathParams: ['folder', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { @@ -72505,167 +72254,98 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Folderzonevmextensionpolicies$Delete extends StandardParameters { /** - * 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.forwardingRules.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}', + * Folder ID for this request. + */ + folder?: 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. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, - * }); - * console.log(res.data); + * 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. * - * // Example response - * // { - * // "permissions": [] - * // } - * } + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the zone VM extension policy to delete. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Folderzonevmextensionpolicies$Get extends StandardParameters { + /** + * Folder ID for this request. + */ + folder?: string; + /** + * Name of the VM extension policy resource to return. + */ + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Folderzonevmextensionpolicies$Getvmextension extends StandardParameters { + /** * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + */ + extensionName?: string; + /** + * Folder ID for this request. + */ + folder?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Folderzonevmextensionpolicies$Insert extends StandardParameters { + /** + * Folder ID for this request. + */ + folder?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - testIamPermissions( - params: Params$Resource$Forwardingrules$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Forwardingrules$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Forwardingrules$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Forwardingrules$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Forwardingrules$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Forwardingrules$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Forwardingrules$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Forwardingrules$Testiampermissions; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + /** + * Name of the zone for this request. + */ + zone?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + /** + * Request body metadata + */ + requestBody?: Schema$VmExtensionPolicy; } - - export interface Params$Resource$Forwardingrules$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Folderzonevmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -72728,15 +72408,9 @@ export namespace compute_alpha { */ 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. + * Folder ID for this request. */ - includeAllScopes?: boolean; + folder?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -72765,10 +72439,6 @@ export namespace compute_alpha { * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -72779,91 +72449,11 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Forwardingrules$Delete extends StandardParameters { - /** - * Name of the ForwardingRule resource to delete. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - } - export interface Params$Resource$Forwardingrules$Get extends StandardParameters { - /** - * Name of the ForwardingRule resource to return. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - /** - * - */ - view?: string; - } - export interface Params$Resource$Forwardingrules$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - - /** - * Request body metadata + * Name of the zone for this request. */ - requestBody?: Schema$ForwardingRule; + zone?: string; } - export interface Params$Resource$Forwardingrules$List extends StandardParameters { + export interface Params$Resource$Folderzonevmextensionpolicies$Listvmextensions extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -72925,6 +72515,10 @@ export namespace compute_alpha { * expressions. */ filter?: string; + /** + * Folder ID for this request. + */ + folder?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -72953,14 +72547,6 @@ export namespace compute_alpha { * the next page of results. */ pageToken?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -72970,90 +72556,16 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - } - export interface Params$Resource$Forwardingrules$Patch extends StandardParameters { - /** - * Name of the ForwardingRule resource to patch. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ForwardingRule; - } - export interface Params$Resource$Forwardingrules$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The region for 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). - */ - requestId?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * Request body metadata + * Name of the zone for this request. */ - requestBody?: Schema$RegionSetLabelsRequest; + zone?: string; } - export interface Params$Resource$Forwardingrules$Settarget extends StandardParameters { - /** - * Name of the ForwardingRule resource in which target is to be set. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Folderzonevmextensionpolicies$Update extends StandardParameters { /** - * Name of the region scoping this request. + * Folder ID for this request. */ - region?: string; + folder?: 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 @@ -73070,40 +72582,29 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TargetReference; - } - export interface Params$Resource$Forwardingrules$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; /** - * The name of the region for this request. + * Name of the zone VM extension policy to update. */ - region?: string; + vmExtensionPolicy?: string; /** - * Name or id of the resource for this request. + * Name of the zone for this request. */ - resource?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$VmExtensionPolicy; } - export class Resource$Futurereservations { + export class Resource$Forwardingrules { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of future reservations. + * Retrieves an aggregated list of forwarding rules. * * To prevent failure, it is recommended that you set the * `returnPartialSuccess` parameter to `true`. @@ -73139,7 +72640,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.aggregatedList({ + * const res = await compute.forwardingRules.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -73247,7 +72748,6 @@ export namespace compute_alpha { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -73271,60 +72771,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, + params: Params$Resource$Forwardingrules$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Futurereservations$Aggregatedlist, + params?: Params$Resource$Forwardingrules$Aggregatedlist, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, + params: Params$Resource$Forwardingrules$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, + params: Params$Resource$Forwardingrules$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Futurereservations$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Futurereservations$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Forwardingrules$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Aggregatedlist; + {}) as Params$Resource$Forwardingrules$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Aggregatedlist; + params = {} as Params$Resource$Forwardingrules$Aggregatedlist; options = {}; } @@ -73339,7 +72835,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/futureReservations' + '/compute/alpha/projects/{project}/aggregated/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -73352,19 +72848,19 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Cancel the specified future reservation. + * Deletes the specified ForwardingRule resource. * @example * ```js * // Before running the sample: @@ -73396,12 +72892,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.cancel({ - * // Name of the future reservation to retrieve. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', + * const res = await compute.forwardingRules.delete({ + * // Name of the ForwardingRule resource to delete. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 scoping 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. @@ -73416,8 +72914,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -73466,218 +72962,32 @@ export namespace compute_alpha { * @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$Futurereservations$Cancel, + delete( + params: Params$Resource$Forwardingrules$Delete, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Futurereservations$Cancel, + delete( + params?: Params$Resource$Forwardingrules$Delete, options?: MethodOptions ): Promise>; - cancel( - params: Params$Resource$Futurereservations$Cancel, + delete( + params: Params$Resource$Forwardingrules$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Futurereservations$Cancel, + delete( + params: Params$Resource$Forwardingrules$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Futurereservations$Cancel, - callback: BodyResponseCallback - ): void; - cancel(callback: BodyResponseCallback): void; - cancel( - paramsOrCallback?: - | Params$Resource$Futurereservations$Cancel - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Cancel; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Cancel; - 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}/zones/{zone}/futureReservations/{futureReservation}/cancel' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified future reservation. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.futureReservations.delete({ - * // Name of the future reservation to retrieve. Name should conform to RFC1035. - * futureReservation: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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$Futurereservations$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Futurereservations$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Futurereservations$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Futurereservations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Futurereservations$Delete, + delete( + params: Params$Resource$Forwardingrules$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Futurereservations$Delete + | Params$Resource$Forwardingrules$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -73693,12 +73003,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Delete; + {}) as Params$Resource$Forwardingrules$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Delete; + params = {} as Params$Resource$Forwardingrules$Delete; options = {}; } @@ -73713,7 +73023,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -73721,8 +73031,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { @@ -73736,7 +73046,7 @@ export namespace compute_alpha { } /** - * Retrieves information about the specified future reservation. + * Returns the specified ForwardingRule resource. * @example * ```js * // Before running the sample: @@ -73769,48 +73079,64 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.get({ - * // Name of the future reservation to retrieve. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', + * const res = await compute.forwardingRules.get({ + * // Name of the ForwardingRule resource to return. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', + * // Name of the region scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "advancedDeploymentControl": {}, - * // "aggregateReservation": {}, - * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", - * // "autoCreatedReservationsDuration": {}, - * // "autoDeleteAutoCreatedReservations": false, - * // "commitmentInfo": {}, - * // "confidentialComputeType": "my_confidentialComputeType", + * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", - * // "deploymentType": "my_deploymentType", * // "description": "my_description", - * // "enableEmergentMaintenance": false, + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", - * // "namePrefix": "my_namePrefix", - * // "params": {}, - * // "planningStatus": "my_planningStatus", - * // "protectionTier": "my_protectionTier", - * // "reservationMode": "my_reservationMode", - * // "reservationName": "my_reservationName", - * // "schedulingType": "my_schedulingType", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "specificReservationRequired": false, - * // "specificSkuProperties": {}, - * // "status": {}, - * // "timeWindow": {}, - * // "zone": "my_zone" + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" * // } * } * @@ -73827,52 +73153,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Futurereservations$Get, + params: Params$Resource$Forwardingrules$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Futurereservations$Get, + params?: Params$Resource$Forwardingrules$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Futurereservations$Get, + params: Params$Resource$Forwardingrules$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Futurereservations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Futurereservations$Get, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Futurereservations$Get - | BodyResponseCallback + | Params$Resource$Forwardingrules$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Get; + {}) as Params$Resource$Forwardingrules$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Get; + params = {} as Params$Resource$Forwardingrules$Get; options = {}; } @@ -73887,7 +73213,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -73895,22 +73221,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new Future Reservation. + * Creates a ForwardingRule resource in the specified project and region using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -73942,10 +73269,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.insert({ + * const res = await compute.forwardingRules.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 scoping 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. @@ -73960,42 +73289,54 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advancedDeploymentControl": {}, - * // "aggregateReservation": {}, - * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", - * // "autoCreatedReservationsDuration": {}, - * // "autoDeleteAutoCreatedReservations": false, - * // "commitmentInfo": {}, - * // "confidentialComputeType": "my_confidentialComputeType", + * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", - * // "deploymentType": "my_deploymentType", * // "description": "my_description", - * // "enableEmergentMaintenance": false, + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", - * // "namePrefix": "my_namePrefix", - * // "params": {}, - * // "planningStatus": "my_planningStatus", - * // "protectionTier": "my_protectionTier", - * // "reservationMode": "my_reservationMode", - * // "reservationName": "my_reservationName", - * // "schedulingType": "my_schedulingType", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "specificReservationRequired": false, - * // "specificSkuProperties": {}, - * // "status": {}, - * // "timeWindow": {}, - * // "zone": "my_zone" + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" * // } * }, * }); @@ -74047,31 +73388,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Futurereservations$Insert, + params: Params$Resource$Forwardingrules$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Futurereservations$Insert, + params?: Params$Resource$Forwardingrules$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Futurereservations$Insert, + params: Params$Resource$Forwardingrules$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Futurereservations$Insert, + params: Params$Resource$Forwardingrules$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Futurereservations$Insert, + params: Params$Resource$Forwardingrules$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Futurereservations$Insert + | Params$Resource$Forwardingrules$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74087,12 +73428,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Insert; + {}) as Params$Resource$Forwardingrules$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Insert; + params = {} as Params$Resource$Forwardingrules$Insert; options = {}; } @@ -74107,7 +73448,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/futureReservations' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -74115,8 +73456,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -74130,8 +73471,8 @@ export namespace compute_alpha { } /** - * A list of all the future reservations that have been configured for the - * specified project in specified zone. + * Retrieves a list of ForwardingRule resources available to the specified + * project and region. * @example * ```js * // Before running the sample: @@ -74164,7 +73505,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.list({ + * const res = await compute.forwardingRules.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -74249,6 +73590,8 @@ export namespace compute_alpha { * // 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 scoping 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. * // @@ -74256,20 +73599,16 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -74287,56 +73626,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Futurereservations$List, + params: Params$Resource$Forwardingrules$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Futurereservations$List, + params?: Params$Resource$Forwardingrules$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Futurereservations$List, + params: Params$Resource$Forwardingrules$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Futurereservations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Futurereservations$List, - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Forwardingrules$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Futurereservations$List - | BodyResponseCallback + | Params$Resource$Forwardingrules$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$List; + {}) as Params$Resource$Forwardingrules$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$List; + params = {} as Params$Resource$Forwardingrules$List; options = {}; } @@ -74351,7 +73686,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/futureReservations' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -74359,24 +73694,26 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the specified future reservation. + * Updates the specified forwarding rule with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. Currently, you can only + * patch the network_tier field. * @example * ```js * // Before running the sample: @@ -74408,14 +73745,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.futureReservations.update({ - * // Name of the reservation to update. Name should conform to RFC1035. - * futureReservation: 'placeholder-value', - * - * paths: 'placeholder-value', + * const res = await compute.forwardingRules.patch({ + * // Name of the ForwardingRule resource to patch. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 scoping 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. @@ -74430,44 +73767,54 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * // Name of the zone for this request. Name should conform to RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "advancedDeploymentControl": {}, - * // "aggregateReservation": {}, - * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", - * // "autoCreatedReservationsDuration": {}, - * // "autoDeleteAutoCreatedReservations": false, - * // "commitmentInfo": {}, - * // "confidentialComputeType": "my_confidentialComputeType", + * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", - * // "deploymentType": "my_deploymentType", * // "description": "my_description", - * // "enableEmergentMaintenance": false, + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", - * // "namePrefix": "my_namePrefix", - * // "params": {}, - * // "planningStatus": "my_planningStatus", - * // "protectionTier": "my_protectionTier", - * // "reservationMode": "my_reservationMode", - * // "reservationName": "my_reservationName", - * // "schedulingType": "my_schedulingType", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "specificReservationRequired": false, - * // "specificSkuProperties": {}, - * // "status": {}, - * // "timeWindow": {}, - * // "zone": "my_zone" + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" * // } * }, * }); @@ -74518,32 +73865,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Futurereservations$Update, + patch( + params: Params$Resource$Forwardingrules$Patch, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Futurereservations$Update, + patch( + params?: Params$Resource$Forwardingrules$Patch, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Futurereservations$Update, + patch( + params: Params$Resource$Forwardingrules$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Futurereservations$Update, + patch( + params: Params$Resource$Forwardingrules$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Futurereservations$Update, + patch( + params: Params$Resource$Forwardingrules$Patch, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Futurereservations$Update + | Params$Resource$Forwardingrules$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -74559,12 +73906,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Futurereservations$Update; + {}) as Params$Resource$Forwardingrules$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Futurereservations$Update; + params = {} as Params$Resource$Forwardingrules$Patch; options = {}; } @@ -74579,7 +73926,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -74587,8 +73934,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'futureReservation'], - pathParams: ['futureReservation', 'project', 'zone'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { @@ -74600,392 +73947,11 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Futurereservations$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Futurereservations$Cancel extends StandardParameters { - /** - * Name of the future reservation to retrieve. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Delete extends StandardParameters { - /** - * Name of the future reservation to retrieve. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Get extends StandardParameters { - /** - * Name of the future reservation to retrieve. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FutureReservation; - } - export interface Params$Resource$Futurereservations$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Futurereservations$Update extends StandardParameters { - /** - * Name of the reservation to update. Name should conform to RFC1035. - */ - futureReservation?: string; - /** - * - */ - paths?: string[]; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; - /** - * Name of the zone for this request. Name should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FutureReservation; - } - - export class Resource$Globaladdresses { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified address resource. + * Sets the labels on the specified resource. To learn more about labels, + * read the + * Labeling Resources documentation. * @example * ```js * // Before running the sample: @@ -75017,12 +73983,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.delete({ - * // Name of the address resource to delete. - * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.forwardingRules.setLabels({ * // 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 for 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. @@ -75037,6 +74003,17 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // 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 + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * @@ -75085,32 +74062,32 @@ export namespace compute_alpha { * @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$Globaladdresses$Delete, + setLabels( + params: Params$Resource$Forwardingrules$Setlabels, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globaladdresses$Delete, + setLabels( + params?: Params$Resource$Forwardingrules$Setlabels, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Globaladdresses$Delete, + setLabels( + params: Params$Resource$Forwardingrules$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globaladdresses$Delete, + setLabels( + params: Params$Resource$Forwardingrules$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globaladdresses$Delete, + setLabels( + params: Params$Resource$Forwardingrules$Setlabels, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Globaladdresses$Delete + | Params$Resource$Forwardingrules$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -75126,12 +74103,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Delete; + {}) as Params$Resource$Forwardingrules$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Delete; + params = {} as Params$Resource$Forwardingrules$Setlabels; options = {}; } @@ -75146,16 +74123,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/addresses/{address}' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'address'], - pathParams: ['address', 'project'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -75169,7 +74146,8 @@ export namespace compute_alpha { } /** - * Returns the specified address resource. + * Changes target URL for forwarding rule. The new target should be of the + * same type as the old target. * @example * ```js * // Before running the sample: @@ -75193,7 +74171,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -75202,39 +74179,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.get({ - * // Name of the address resource to return. - * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.forwardingRules.setTarget({ + * // Name of the ForwardingRule resource in which target is to be set. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 scoping 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "target": "my_target" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "address": "my_address", - * // "addressType": "my_addressType", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "ipv6EndpointType": "my_ipv6EndpointType", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "prefixLength": 0, - * // "purpose": "my_purpose", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "subnetwork": "my_subnetwork", - * // "users": [] + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -75250,53 +74257,53 @@ export namespace compute_alpha { * @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$Globaladdresses$Get, + setTarget( + params: Params$Resource$Forwardingrules$Settarget, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globaladdresses$Get, + setTarget( + params?: Params$Resource$Forwardingrules$Settarget, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globaladdresses$Get, + ): Promise>; + setTarget( + params: Params$Resource$Forwardingrules$Settarget, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globaladdresses$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setTarget( + params: Params$Resource$Forwardingrules$Settarget, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globaladdresses$Get, - callback: BodyResponseCallback + setTarget( + params: Params$Resource$Forwardingrules$Settarget, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setTarget(callback: BodyResponseCallback): void; + setTarget( paramsOrCallback?: - | Params$Resource$Globaladdresses$Get - | BodyResponseCallback + | Params$Resource$Forwardingrules$Settarget + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Get; + {}) as Params$Resource$Forwardingrules$Settarget; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Get; + params = {} as Params$Resource$Forwardingrules$Settarget; options = {}; } @@ -75311,30 +74318,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/addresses/{address}' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'address'], - pathParams: ['address', 'project'], + requiredParams: ['project', 'region', 'forwardingRule'], + pathParams: ['forwardingRule', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Find owner instance from given ip address + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -75367,18 +74374,28 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.getOwnerInstance({ - * // The VM IP address. - * ipAddress: 'placeholder-value', + * const res = await compute.forwardingRules.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 * // { - * // "instance": "my_instance" + * // "permissions": [] * // } * } * @@ -75394,57 +74411,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getOwnerInstance( - params: Params$Resource$Globaladdresses$Getownerinstance, + testIamPermissions( + params: Params$Resource$Forwardingrules$Testiampermissions, options: StreamMethodOptions ): Promise>; - getOwnerInstance( - params?: Params$Resource$Globaladdresses$Getownerinstance, + testIamPermissions( + params?: Params$Resource$Forwardingrules$Testiampermissions, options?: MethodOptions - ): Promise>; - getOwnerInstance( - params: Params$Resource$Globaladdresses$Getownerinstance, + ): Promise>; + testIamPermissions( + params: Params$Resource$Forwardingrules$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getOwnerInstance( - params: Params$Resource$Globaladdresses$Getownerinstance, + testIamPermissions( + params: Params$Resource$Forwardingrules$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getOwnerInstance( - params: Params$Resource$Globaladdresses$Getownerinstance, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Forwardingrules$Testiampermissions, + callback: BodyResponseCallback ): void; - getOwnerInstance( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - getOwnerInstance( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Globaladdresses$Getownerinstance - | BodyResponseCallback + | Params$Resource$Forwardingrules$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Getownerinstance; + {}) as Params$Resource$Forwardingrules$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Getownerinstance; + params = {} as Params$Resource$Forwardingrules$Testiampermissions; options = {}; } @@ -75459,241 +74476,471 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/addresses/getOwnerInstance' + '/compute/alpha/projects/{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Forwardingrules$Aggregatedlist extends StandardParameters { /** - * Creates an address resource in the specified project by using the data - * 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * 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', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Do the magic - * const res = await compute.globalAddresses.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])?))', - * // 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). - * requestId: 'placeholder-value', + * 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 onresource labels. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "address": "my_address", - * // "addressType": "my_addressType", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "ipv6EndpointType": "my_ipv6EndpointType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "prefixLength": 0, - * // "purpose": "my_purpose", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": "my_status", - * // "subnetwork": "my_subnetwork", - * // "users": [] - * // } - * }, - * }); - * console.log(res.data); + * 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) + * ``` * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Forwardingrules$Delete extends StandardParameters { + /** + * Name of the ForwardingRule resource to delete. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; + } + export interface Params$Resource$Forwardingrules$Get extends StandardParameters { + /** + * Name of the ForwardingRule resource to return. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + /** + * + */ + view?: string; + } + export interface Params$Resource$Forwardingrules$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ForwardingRule; + } + export interface Params$Resource$Forwardingrules$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* * ``` * - * @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. + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - insert( - params: Params$Resource$Globaladdresses$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Globaladdresses$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Globaladdresses$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Globaladdresses$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Globaladdresses$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Globaladdresses$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; + 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 scoping this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Forwardingrules$Patch extends StandardParameters { + /** + * Name of the ForwardingRule resource to patch. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Insert; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$ForwardingRule; + } + export interface Params$Resource$Forwardingrules$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The region for 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). + */ + requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetLabelsRequest; + } + export interface Params$Resource$Forwardingrules$Settarget extends StandardParameters { + /** + * Name of the ForwardingRule resource in which target is to be set. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + '/compute/alpha/projects/{project}/global/addresses' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + /** + * Request body metadata + */ + requestBody?: Schema$TargetReference; + } + export interface Params$Resource$Forwardingrules$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$Futurereservations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Retrieves a list of global addresses. + * Retrieves an aggregated list of future reservations. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -75726,7 +74973,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.list({ + * const res = await compute.futureReservations.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -75786,6 +75033,14 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -75818,16 +75073,21 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -75844,53 +75104,61 @@ export namespace compute_alpha { * @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$Globaladdresses$List, + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Globaladdresses$List, + aggregatedList( + params?: Params$Resource$Futurereservations$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globaladdresses$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globaladdresses$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globaladdresses$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Futurereservations$Aggregatedlist, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Globaladdresses$List - | BodyResponseCallback + | Params$Resource$Futurereservations$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$List; + {}) as Params$Resource$Futurereservations$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$List; + params = {} as Params$Resource$Futurereservations$Aggregatedlist; options = {}; } @@ -75904,7 +75172,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/addresses' + rootUrl + + '/compute/alpha/projects/{project}/aggregated/futureReservations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -75917,17 +75186,19 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Moves the specified address resource from one project to another project. + * Cancel the specified future reservation. * @example * ```js * // Before running the sample: @@ -75959,10 +75230,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.move({ - * // Name of the address resource to move. - * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Source project ID which the Address is moved from. + * const res = await compute.futureReservations.cancel({ + * // Name of the future reservation to retrieve. Name should conform to RFC1035. + * futureReservation: '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])?))', * // An optional request ID to identify requests. Specify a unique request ID so @@ -75979,15 +75250,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "description": "my_description", - * // "destinationAddress": "my_destinationAddress" - * // } - * }, + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -76036,32 +75300,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - move( - params: Params$Resource$Globaladdresses$Move, + cancel( + params: Params$Resource$Futurereservations$Cancel, options: StreamMethodOptions ): Promise>; - move( - params?: Params$Resource$Globaladdresses$Move, + cancel( + params?: Params$Resource$Futurereservations$Cancel, options?: MethodOptions ): Promise>; - move( - params: Params$Resource$Globaladdresses$Move, + cancel( + params: Params$Resource$Futurereservations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Globaladdresses$Move, + cancel( + params: Params$Resource$Futurereservations$Cancel, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Globaladdresses$Move, + cancel( + params: Params$Resource$Futurereservations$Cancel, callback: BodyResponseCallback ): void; - move(callback: BodyResponseCallback): void; - move( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Globaladdresses$Move + | Params$Resource$Futurereservations$Cancel | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76077,12 +75341,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Move; + {}) as Params$Resource$Futurereservations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Move; + params = {} as Params$Resource$Futurereservations$Cancel; options = {}; } @@ -76097,7 +75361,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/addresses/{address}/move' + '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}/cancel' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -76105,8 +75369,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'address'], - pathParams: ['address', 'project'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { @@ -76120,8 +75384,7 @@ export namespace compute_alpha { } /** - * Sets the labels on a GlobalAddress. To learn more about labels, read theLabeling - * Resources documentation. + * Deletes the specified future reservation. * @example * ```js * // Before running the sample: @@ -76153,21 +75416,28 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.setLabels({ + * const res = await compute.futureReservations.delete({ + * // Name of the future reservation to retrieve. Name should conform to RFC1035. + * futureReservation: '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 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 - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, + * // 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). + * requestId: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * @@ -76216,32 +75486,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + delete( + params: Params$Resource$Futurereservations$Delete, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Globaladdresses$Setlabels, + delete( + params?: Params$Resource$Futurereservations$Delete, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + delete( + params: Params$Resource$Futurereservations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + delete( + params: Params$Resource$Futurereservations$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Globaladdresses$Setlabels, + delete( + params: Params$Resource$Futurereservations$Delete, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globaladdresses$Setlabels + | Params$Resource$Futurereservations$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76257,12 +75527,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Setlabels; + {}) as Params$Resource$Futurereservations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Setlabels; + params = {} as Params$Resource$Futurereservations$Delete; options = {}; } @@ -76277,16 +75547,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/addresses/{resource}/setLabels' + '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { @@ -76300,7 +75570,7 @@ export namespace compute_alpha { } /** - * Returns permissions that a caller has on the specified resource. + * Retrieves information about the specified future reservation. * @example * ```js * // Before running the sample: @@ -76333,26 +75603,48 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalAddresses.testIamPermissions({ + * const res = await compute.futureReservations.get({ + * // Name of the future reservation to retrieve. Name should conform to RFC1035. + * futureReservation: '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 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": [] - * // } - * }, + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "advancedDeploymentControl": {}, + * // "aggregateReservation": {}, + * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", + * // "autoCreatedReservationsDuration": {}, + * // "autoDeleteAutoCreatedReservations": false, + * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "enableEmergentMaintenance": false, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namePrefix": "my_namePrefix", + * // "params": {}, + * // "planningStatus": "my_planningStatus", + * // "protectionTier": "my_protectionTier", + * // "reservationMode": "my_reservationMode", + * // "reservationName": "my_reservationName", + * // "schedulingType": "my_schedulingType", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "specificReservationRequired": false, + * // "specificSkuProperties": {}, + * // "status": {}, + * // "timeWindow": {}, + * // "zone": "my_zone" * // } * } * @@ -76368,57 +75660,53 @@ export namespace compute_alpha { * @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$Globaladdresses$Testiampermissions, + get( + params: Params$Resource$Futurereservations$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Globaladdresses$Testiampermissions, + get( + params?: Params$Resource$Futurereservations$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Futurereservations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Globaladdresses$Testiampermissions, - callback: BodyResponseCallback + get( + params: Params$Resource$Futurereservations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Futurereservations$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globaladdresses$Testiampermissions - | BodyResponseCallback + | Params$Resource$Futurereservations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaladdresses$Testiampermissions; + {}) as Params$Resource$Futurereservations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaladdresses$Testiampermissions; + params = {} as Params$Resource$Futurereservations$Get; options = {}; } @@ -76433,276 +75721,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/addresses/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Globaladdresses$Delete extends StandardParameters { - /** - * Name of the address resource to delete. - */ - address?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - } - export interface Params$Resource$Globaladdresses$Get extends StandardParameters { - /** - * Name of the address resource to return. - */ - address?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globaladdresses$Getownerinstance extends StandardParameters { - /** - * The VM IP address. - */ - ipAddress?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globaladdresses$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Address; - } - export interface Params$Resource$Globaladdresses$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Globaladdresses$Move extends StandardParameters { - /** - * Name of the address resource to move. - */ - address?: string; - /** - * Source project ID which the Address is moved from. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalAddressesMoveRequest; - } - export interface Params$Resource$Globaladdresses$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Globaladdresses$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Globalfolderoperations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves the specified Operations resource. + * Creates a new Future Reservation. * @example * ```js * // Before running the sample: @@ -76726,7 +75768,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -76735,11 +75776,62 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalFolderOperations.get({ - * // Folder ID for this request. - * folder: 'folders/[0-9]{0,20}', - * // Name of the Operations resource to return. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.futureReservations.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])?))', + * // 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). + * requestId: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advancedDeploymentControl": {}, + * // "aggregateReservation": {}, + * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", + * // "autoCreatedReservationsDuration": {}, + * // "autoDeleteAutoCreatedReservations": false, + * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "enableEmergentMaintenance": false, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namePrefix": "my_namePrefix", + * // "params": {}, + * // "planningStatus": "my_planningStatus", + * // "protectionTier": "my_protectionTier", + * // "reservationMode": "my_reservationMode", + * // "reservationName": "my_reservationName", + * // "schedulingType": "my_schedulingType", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "specificReservationRequired": false, + * // "specificSkuProperties": {}, + * // "status": {}, + * // "timeWindow": {}, + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -76788,32 +75880,32 @@ export namespace compute_alpha { * @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$Globalfolderoperations$Get, + insert( + params: Params$Resource$Futurereservations$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalfolderoperations$Get, + insert( + params?: Params$Resource$Futurereservations$Insert, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Globalfolderoperations$Get, + insert( + params: Params$Resource$Futurereservations$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalfolderoperations$Get, + insert( + params: Params$Resource$Futurereservations$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalfolderoperations$Get, + insert( + params: Params$Resource$Futurereservations$Insert, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Globalfolderoperations$Get + | Params$Resource$Futurereservations$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -76829,12 +75921,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalfolderoperations$Get; + {}) as Params$Resource$Futurereservations$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalfolderoperations$Get; + params = {} as Params$Resource$Futurereservations$Insert; options = {}; } @@ -76848,16 +75940,17 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/{+folder}/global/operations/{operation}' + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/futureReservations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['folder', 'operation'], - pathParams: ['folder', 'operation'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -76871,8 +75964,8 @@ export namespace compute_alpha { } /** - * Retrieves a list of Operation resources contained within the specified - * folder. + * A list of all the future reservations that have been configured for the + * specified project in specified zone. * @example * ```js * // Before running the sample: @@ -76905,7 +75998,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalFolderOperations.list({ + * const res = await compute.futureReservations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -76965,8 +76058,6 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // Folder ID for this request. - * folder: 'folders/[0-9]{0,20}', * // 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 @@ -76989,6 +76080,9 @@ export namespace compute_alpha { * // `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])?))', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -76996,16 +76090,20 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -77023,52 +76121,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globalfolderoperations$List, + params: Params$Resource$Futurereservations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globalfolderoperations$List, + params?: Params$Resource$Futurereservations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globalfolderoperations$List, + params: Params$Resource$Futurereservations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalfolderoperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Futurereservations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalfolderoperations$List, - callback: BodyResponseCallback + params: Params$Resource$Futurereservations$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globalfolderoperations$List - | BodyResponseCallback + | Params$Resource$Futurereservations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalfolderoperations$List; + {}) as Params$Resource$Futurereservations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalfolderoperations$List; + params = {} as Params$Resource$Futurereservations$List; options = {}; } @@ -77082,7 +76184,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/{+folder}/global/operations' + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/futureReservations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -77090,144 +76193,24 @@ export namespace compute_alpha { options ), params, - requiredParams: ['folder'], - pathParams: ['folder'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Globalfolderoperations$Get extends StandardParameters { - /** - * Folder ID for this request. - */ - folder?: string; - /** - * Name of the Operations resource to return. - */ - operation?: string; - } - export interface Params$Resource$Globalfolderoperations$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Folder ID for this request. - */ - folder?: 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Globalforwardingrules { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified GlobalForwardingRule resource. + * Updates the specified future reservation. * @example * ```js * // Before running the sample: @@ -77259,9 +76242,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.delete({ - * // Name of the ForwardingRule resource to delete. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.futureReservations.update({ + * // Name of the reservation to update. Name should conform to RFC1035. + * futureReservation: 'placeholder-value', + * + * paths: '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])?))', @@ -77279,6 +76264,46 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * // Name of the zone for this request. Name should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "advancedDeploymentControl": {}, + * // "aggregateReservation": {}, + * // "autoCreatedReservationsDeleteTime": "my_autoCreatedReservationsDeleteTime", + * // "autoCreatedReservationsDuration": {}, + * // "autoDeleteAutoCreatedReservations": false, + * // "commitmentInfo": {}, + * // "confidentialComputeType": "my_confidentialComputeType", + * // "creationTimestamp": "my_creationTimestamp", + * // "deploymentType": "my_deploymentType", + * // "description": "my_description", + * // "enableEmergentMaintenance": false, + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namePrefix": "my_namePrefix", + * // "params": {}, + * // "planningStatus": "my_planningStatus", + * // "protectionTier": "my_protectionTier", + * // "reservationMode": "my_reservationMode", + * // "reservationName": "my_reservationName", + * // "schedulingType": "my_schedulingType", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "specificReservationRequired": false, + * // "specificSkuProperties": {}, + * // "status": {}, + * // "timeWindow": {}, + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -77327,32 +76352,32 @@ export namespace compute_alpha { * @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$Globalforwardingrules$Delete, + update( + params: Params$Resource$Futurereservations$Update, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalforwardingrules$Delete, + update( + params?: Params$Resource$Futurereservations$Update, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Globalforwardingrules$Delete, + update( + params: Params$Resource$Futurereservations$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalforwardingrules$Delete, + update( + params: Params$Resource$Futurereservations$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalforwardingrules$Delete, + update( + params: Params$Resource$Futurereservations$Update, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Delete + | Params$Resource$Futurereservations$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -77368,12 +76393,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Delete; + {}) as Params$Resource$Futurereservations$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Delete; + params = {} as Params$Resource$Futurereservations$Update; options = {}; } @@ -77388,16 +76413,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}' + '/compute/alpha/projects/{project}/zones/{zone}/futureReservations/{futureReservation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project', 'zone', 'futureReservation'], + pathParams: ['futureReservation', 'project', 'zone'], context: this.context, }; if (callback) { @@ -77409,231 +76434,426 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Futurereservations$Aggregatedlist extends StandardParameters { /** - * Returns the specified GlobalForwardingRule resource. Gets a list of - * available forwarding rules by making a list() 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * 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', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Do the magic - * const res = await compute.globalForwardingRules.get({ - * // Name of the ForwardingRule resource to return. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', + * 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 onresource labels. * - * view: 'placeholder-value', - * }); - * console.log(res.data); + * 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) + * ``` * - * // Example response - * // { - * // "IPAddress": "my_IPAddress", - * // "IPAddresses": [], - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "availabilityGroup": "my_availabilityGroup", - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "childForwardingRules": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], - * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "parentForwardingRule": "my_parentForwardingRule", - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" - * // } - * } + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * ``` + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. * - * @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. + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - get( - params: Params$Resource$Globalforwardingrules$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Globalforwardingrules$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globalforwardingrules$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Globalforwardingrules$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Globalforwardingrules$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$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/alpha/projects/{project}/global/forwardingRules/{forwardingRule}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + filter?: string; /** - * Creates a GlobalForwardingRule resource in the specified project using - * the data 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Futurereservations$Cancel extends StandardParameters { + /** + * Name of the future reservation to retrieve. Name should conform to RFC1035. + */ + futureReservation?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Futurereservations$Delete extends StandardParameters { + /** + * Name of the future reservation to retrieve. Name should conform to RFC1035. + */ + futureReservation?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Futurereservations$Get extends StandardParameters { + /** + * Name of the future reservation to retrieve. Name should conform to RFC1035. + */ + futureReservation?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Futurereservations$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FutureReservation; + } + export interface Params$Resource$Futurereservations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Futurereservations$Update extends StandardParameters { + /** + * Name of the reservation to update. Name should conform to RFC1035. + */ + futureReservation?: string; + /** + * + */ + paths?: string[]; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + /** + * Name of the zone for this request. Name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FutureReservation; + } + + export class Resource$Globaladdresses { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified address 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.globalForwardingRules.insert({ + * const res = await compute.globalAddresses.delete({ + * // Name of the address resource to delete. + * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -77651,56 +76871,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "IPAddress": "my_IPAddress", - * // "IPAddresses": [], - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "availabilityGroup": "my_availabilityGroup", - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "childForwardingRules": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCollection": "my_ipCollection", - * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], - * // "name": "my_name", - * // "network": "my_network", - * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "parentForwardingRule": "my_parentForwardingRule", - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], - * // "subnetwork": "my_subnetwork", - * // "target": "my_target" - * // } - * }, * }); * console.log(res.data); * @@ -77749,32 +76919,32 @@ export namespace compute_alpha { * @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$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Globaladdresses$Delete, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Globalforwardingrules$Insert, + delete( + params?: Params$Resource$Globaladdresses$Delete, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Globaladdresses$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Globaladdresses$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalforwardingrules$Insert, + delete( + params: Params$Resource$Globaladdresses$Delete, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Insert + | Params$Resource$Globaladdresses$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -77790,12 +76960,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Insert; + {}) as Params$Resource$Globaladdresses$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Insert; + params = {} as Params$Resource$Globaladdresses$Delete; options = {}; } @@ -77810,16 +76980,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules' + '/compute/alpha/projects/{project}/global/addresses/{address}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'address'], + pathParams: ['address', 'project'], context: this.context, }; if (callback) { @@ -77833,8 +77003,7 @@ export namespace compute_alpha { } /** - * Retrieves a list of GlobalForwardingRule resources available to the - * specified project. + * Returns the specified address resource. * @example * ```js * // Before running the sample: @@ -77867,109 +77036,39 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.globalAddresses.get({ + * // Name of the address resource to return. + * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "address": "my_address", + * // "addressType": "my_addressType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", * // "id": "my_id", - * // "items": [], + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "ipv6EndpointType": "my_ipv6EndpointType", * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "prefixLength": 0, + * // "purpose": "my_purpose", + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "status": "my_status", + * // "subnetwork": "my_subnetwork", + * // "users": [] * // } * } * @@ -77985,53 +77084,53 @@ export namespace compute_alpha { * @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$Globalforwardingrules$List, + get( + params: Params$Resource$Globaladdresses$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Globalforwardingrules$List, + get( + params?: Params$Resource$Globaladdresses$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globalforwardingrules$List, + ): Promise>; + get( + params: Params$Resource$Globaladdresses$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalforwardingrules$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Globaladdresses$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Globalforwardingrules$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Globaladdresses$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$List - | BodyResponseCallback + | Params$Resource$Globaladdresses$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$List; + {}) as Params$Resource$Globaladdresses$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$List; + params = {} as Params$Resource$Globaladdresses$Get; options = {}; } @@ -78046,7 +77145,155 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules' + '/compute/alpha/projects/{project}/global/addresses/{address}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'address'], + pathParams: ['address', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Find owner instance from given ip address + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.globalAddresses.getOwnerInstance({ + * // The VM IP address. + * ipAddress: '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])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "instance": "my_instance" + * // } + * } + * + * 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. + */ + getOwnerInstance( + params: Params$Resource$Globaladdresses$Getownerinstance, + options: StreamMethodOptions + ): Promise>; + getOwnerInstance( + params?: Params$Resource$Globaladdresses$Getownerinstance, + options?: MethodOptions + ): Promise>; + getOwnerInstance( + params: Params$Resource$Globaladdresses$Getownerinstance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getOwnerInstance( + params: Params$Resource$Globaladdresses$Getownerinstance, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getOwnerInstance( + params: Params$Resource$Globaladdresses$Getownerinstance, + callback: BodyResponseCallback + ): void; + getOwnerInstance( + callback: BodyResponseCallback + ): void; + getOwnerInstance( + paramsOrCallback?: + | Params$Resource$Globaladdresses$Getownerinstance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globaladdresses$Getownerinstance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globaladdresses$Getownerinstance; + 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}/global/addresses/getOwnerInstance' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -78059,21 +77306,18 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified forwarding rule with the data included in the - * request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. Currently, you can only - * patch the network_tier field. + * Creates an address resource in the specified project by using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -78105,9 +77349,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.patch({ - * // Name of the ForwardingRule resource to patch. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalAddresses.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])?))', @@ -78130,49 +77372,28 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "IPAddress": "my_IPAddress", - * // "IPAddresses": [], - * // "IPProtocol": "my_IPProtocol", - * // "allPorts": false, - * // "allowGlobalAccess": false, - * // "allowPscGlobalAccess": false, - * // "attachedExtensions": [], - * // "availabilityGroup": "my_availabilityGroup", - * // "backendService": "my_backendService", - * // "baseForwardingRule": "my_baseForwardingRule", - * // "childForwardingRules": [], + * // "address": "my_address", + * // "addressType": "my_addressType", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", - * // "externalManagedBackendBucketMigrationTestingPercentage": {}, - * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "ipCollection": "my_ipCollection", * // "ipVersion": "my_ipVersion", - * // "isMirroringCollector": false, + * // "ipv6EndpointType": "my_ipv6EndpointType", * // "kind": "my_kind", * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, - * // "loadBalancingScheme": "my_loadBalancingScheme", - * // "metadataFilters": [], * // "name": "my_name", * // "network": "my_network", * // "networkTier": "my_networkTier", - * // "noAutomateDnsZone": false, - * // "parentForwardingRule": "my_parentForwardingRule", - * // "portRange": "my_portRange", - * // "ports": [], - * // "pscConnectionId": "my_pscConnectionId", - * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "prefixLength": 0, + * // "purpose": "my_purpose", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceDirectoryRegistrations": [], - * // "serviceLabel": "my_serviceLabel", - * // "serviceName": "my_serviceName", - * // "sourceIpRanges": [], + * // "status": "my_status", * // "subnetwork": "my_subnetwork", - * // "target": "my_target" + * // "users": [] * // } * }, * }); @@ -78223,32 +77444,32 @@ export namespace compute_alpha { * @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$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Globaladdresses$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Globalforwardingrules$Patch, + insert( + params?: Params$Resource$Globaladdresses$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Globaladdresses$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Globaladdresses$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalforwardingrules$Patch, + insert( + params: Params$Resource$Globaladdresses$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Patch + | Params$Resource$Globaladdresses$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78264,12 +77485,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Patch; + {}) as Params$Resource$Globaladdresses$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Patch; + params = {} as Params$Resource$Globaladdresses$Insert; options = {}; } @@ -78283,17 +77504,16 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}' + rootUrl + '/compute/alpha/projects/{project}/global/addresses' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -78307,9 +77527,7 @@ export namespace compute_alpha { } /** - * Sets the labels on the specified resource. To learn more about labels, - * read the - * Labeling resources documentation. + * Retrieves a list of global addresses. * @example * ```js * // Before running the sample: @@ -78333,6 +77551,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -78341,54 +77560,109 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.setLabels({ + * const res = await compute.globalAddresses.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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 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 - * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -78404,53 +77678,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, + list( + params: Params$Resource$Globaladdresses$List, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Globalforwardingrules$Setlabels, + list( + params?: Params$Resource$Globaladdresses$List, options?: MethodOptions - ): Promise>; - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, + ): Promise>; + list( + params: Params$Resource$Globaladdresses$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Globaladdresses$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Globalforwardingrules$Setlabels, - callback: BodyResponseCallback + list( + params: Params$Resource$Globaladdresses$List, + callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Setlabels - | BodyResponseCallback + | Params$Resource$Globaladdresses$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Setlabels; + {}) as Params$Resource$Globaladdresses$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Setlabels; + params = {} as Params$Resource$Globaladdresses$List; options = {}; } @@ -78464,32 +77738,30 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules/{resource}/setLabels' + rootUrl + '/compute/alpha/projects/{project}/global/addresses' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Changes target URL for the GlobalForwardingRule resource. The new target - * should be of the same type as the old target. + * Moves the specified address resource from one project to another project. * @example * ```js * // Before running the sample: @@ -78521,10 +77793,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.setTarget({ - * // Name of the ForwardingRule resource in which target is to be set. - * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. + * const res = await compute.globalAddresses.move({ + * // Name of the address resource to move. + * address: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Source project ID which the Address is moved from. * 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])?))', * // An optional request ID to identify requests. Specify a unique request ID so @@ -78546,7 +77818,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "target": "my_target" + * // "description": "my_description", + * // "destinationAddress": "my_destinationAddress" * // } * }, * }); @@ -78597,32 +77870,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + move( + params: Params$Resource$Globaladdresses$Move, options: StreamMethodOptions ): Promise>; - setTarget( - params?: Params$Resource$Globalforwardingrules$Settarget, + move( + params?: Params$Resource$Globaladdresses$Move, options?: MethodOptions ): Promise>; - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + move( + params: Params$Resource$Globaladdresses$Move, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + move( + params: Params$Resource$Globaladdresses$Move, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTarget( - params: Params$Resource$Globalforwardingrules$Settarget, + move( + params: Params$Resource$Globaladdresses$Move, callback: BodyResponseCallback ): void; - setTarget(callback: BodyResponseCallback): void; - setTarget( + move(callback: BodyResponseCallback): void; + move( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Settarget + | Params$Resource$Globaladdresses$Move | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78638,12 +77911,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Settarget; + {}) as Params$Resource$Globaladdresses$Move; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Settarget; + params = {} as Params$Resource$Globaladdresses$Move; options = {}; } @@ -78658,7 +77931,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}/setTarget' + '/compute/alpha/projects/{project}/global/addresses/{address}/move' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -78666,8 +77939,188 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'forwardingRule'], - pathParams: ['forwardingRule', 'project'], + requiredParams: ['project', 'address'], + pathParams: ['address', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the labels on a GlobalAddress. To learn more about labels, read theLabeling + * Resources documentation. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.globalAddresses.setLabels({ + * // 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 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 + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, + options: StreamMethodOptions + ): Promise>; + setLabels( + params?: Params$Resource$Globaladdresses$Setlabels, + options?: MethodOptions + ): Promise>; + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setLabels( + params: Params$Resource$Globaladdresses$Setlabels, + callback: BodyResponseCallback + ): void; + setLabels(callback: BodyResponseCallback): void; + setLabels( + paramsOrCallback?: + | Params$Resource$Globaladdresses$Setlabels + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globaladdresses$Setlabels; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globaladdresses$Setlabels; + 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}/global/addresses/{resource}/setLabels' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -78714,7 +78167,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalForwardingRules.testIamPermissions({ + * const res = await compute.globalAddresses.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])?))', @@ -78750,27 +78203,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Globalforwardingrules$Testiampermissions, + params: Params$Resource$Globaladdresses$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Globalforwardingrules$Testiampermissions, + params?: Params$Resource$Globaladdresses$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Globalforwardingrules$Testiampermissions, + params: Params$Resource$Globaladdresses$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Globalforwardingrules$Testiampermissions, + params: Params$Resource$Globaladdresses$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Globalforwardingrules$Testiampermissions, + params: Params$Resource$Globaladdresses$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -78778,7 +78231,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Globalforwardingrules$Testiampermissions + | Params$Resource$Globaladdresses$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -78794,12 +78247,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalforwardingrules$Testiampermissions; + {}) as Params$Resource$Globaladdresses$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalforwardingrules$Testiampermissions; + params = {} as Params$Resource$Globaladdresses$Testiampermissions; options = {}; } @@ -78814,7 +78267,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/forwardingRules/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/addresses/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -78837,11 +78290,11 @@ export namespace compute_alpha { } } - export interface Params$Resource$Globalforwardingrules$Delete extends StandardParameters { + export interface Params$Resource$Globaladdresses$Delete extends StandardParameters { /** - * Name of the ForwardingRule resource to delete. + * Name of the address resource to delete. */ - forwardingRule?: string; + address?: string; /** * Project ID for this request. */ @@ -78863,21 +78316,27 @@ export namespace compute_alpha { */ requestId?: string; } - export interface Params$Resource$Globalforwardingrules$Get extends StandardParameters { + export interface Params$Resource$Globaladdresses$Get extends StandardParameters { /** - * Name of the ForwardingRule resource to return. + * Name of the address resource to return. */ - forwardingRule?: string; + address?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Globaladdresses$Getownerinstance extends StandardParameters { /** - * + * The VM IP address. */ - view?: string; + ipAddress?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Globalforwardingrules$Insert extends StandardParameters { + export interface Params$Resource$Globaladdresses$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -78902,9 +78361,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$ForwardingRule; + requestBody?: Schema$Address; } - export interface Params$Resource$Globalforwardingrules$List extends StandardParameters { + export interface Params$Resource$Globaladdresses$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -79008,13 +78467,13 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Globalforwardingrules$Patch extends StandardParameters { + export interface Params$Resource$Globaladdresses$Move extends StandardParameters { /** - * Name of the ForwardingRule resource to patch. + * Name of the address resource to move. */ - forwardingRule?: string; + address?: string; /** - * Project ID for this request. + * Source project ID which the Address is moved from. */ project?: string; /** @@ -79037,9 +78496,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$ForwardingRule; + requestBody?: Schema$GlobalAddressesMoveRequest; } - export interface Params$Resource$Globalforwardingrules$Setlabels extends StandardParameters { + export interface Params$Resource$Globaladdresses$Setlabels extends StandardParameters { /** * Project ID for this request. */ @@ -79054,38 +78513,7 @@ export namespace compute_alpha { */ requestBody?: Schema$GlobalSetLabelsRequest; } - export interface Params$Resource$Globalforwardingrules$Settarget extends StandardParameters { - /** - * Name of the ForwardingRule resource in which target is to be set. - */ - forwardingRule?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TargetReference; - } - export interface Params$Resource$Globalforwardingrules$Testiampermissions extends StandardParameters { + export interface Params$Resource$Globaladdresses$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -79101,14 +78529,14 @@ export namespace compute_alpha { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Globalnetworkendpointgroups { + export class Resource$Globalfolderoperations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Attach a network endpoint to the specified network endpoint group. + * Retrieves the specified Operations resource. * @example * ```js * // Before running the sample: @@ -79132,6 +78560,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -79140,35 +78569,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.attachNetworkEndpoints({ - * // The name of the network endpoint group where you are attaching network - * // endpoints to. It should comply with RFC1035. - * networkEndpointGroup: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "networkEndpoints": [] - * // } - * }, + * const res = await compute.globalFolderOperations.get({ + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // Name of the Operations resource to return. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -79217,34 +78622,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + get( + params: Params$Resource$Globalfolderoperations$Get, options: StreamMethodOptions ): Promise>; - attachNetworkEndpoints( - params?: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + get( + params?: Params$Resource$Globalfolderoperations$Get, options?: MethodOptions ): Promise>; - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + get( + params: Params$Resource$Globalfolderoperations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + get( + params: Params$Resource$Globalfolderoperations$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, - callback: BodyResponseCallback - ): void; - attachNetworkEndpoints( + get( + params: Params$Resource$Globalfolderoperations$Get, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints + | Params$Resource$Globalfolderoperations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -79260,13 +78663,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; + {}) as Params$Resource$Globalfolderoperations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; + params = {} as Params$Resource$Globalfolderoperations$Get; options = {}; } @@ -79280,17 +78682,16 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + rootUrl + '/compute/alpha/{+folder}/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['folder', 'operation'], + pathParams: ['folder', 'operation'], context: this.context, }; if (callback) { @@ -79304,8 +78705,8 @@ export namespace compute_alpha { } /** - * Deletes the specified network endpoint group.Note that the NEG cannot be - * deleted if there are backend services referencing it. + * Retrieves a list of Operation resources contained within the specified + * folder. * @example * ```js * // Before running the sample: @@ -79329,6 +78730,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -79337,60 +78739,108 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.delete({ - * // The name of the network endpoint group to delete. It should comply with - * // RFC1035. - * networkEndpointGroup: '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])?))', - * // 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. + * const res = await compute.globalFolderOperations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. * // - * // For example, consider a situation where you make an initial request and - * // the request times out. If you make the request again with the same - * // request ID, the server can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Folder ID for this request. + * folder: 'folders/[0-9]{0,20}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -79406,53 +78856,53 @@ export namespace compute_alpha { * @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$Globalnetworkendpointgroups$Delete, + list( + params: Params$Resource$Globalfolderoperations$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalnetworkendpointgroups$Delete, + list( + params?: Params$Resource$Globalfolderoperations$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, + ): Promise>; + list( + params: Params$Resource$Globalfolderoperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalfolderoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalnetworkendpointgroups$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalfolderoperations$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Delete - | BodyResponseCallback + | Params$Resource$Globalfolderoperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Delete; + {}) as Params$Resource$Globalfolderoperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$Delete; + params = {} as Params$Resource$Globalfolderoperations$List; options = {}; } @@ -79466,31 +78916,152 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' + rootUrl + '/compute/alpha/{+folder}/global/operations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['folder'], + pathParams: ['folder'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Globalfolderoperations$Get extends StandardParameters { /** - * Detach the network endpoint from the specified network endpoint group. + * Folder ID for this request. + */ + folder?: string; + /** + * Name of the Operations resource to return. + */ + operation?: string; + } + export interface Params$Resource$Globalfolderoperations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * Folder ID for this request. + */ + folder?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Globalforwardingrules { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified GlobalForwardingRule resource. * @example * ```js * // Before running the sample: @@ -79522,10 +79093,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.detachNetworkEndpoints({ - * // The name of the network endpoint group where you are removing network - * // endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.globalForwardingRules.delete({ + * // Name of the ForwardingRule resource to delete. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -79543,14 +79113,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "networkEndpoints": [] - * // } - * }, * }); * console.log(res.data); * @@ -79599,34 +79161,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + delete( + params: Params$Resource$Globalforwardingrules$Delete, options: StreamMethodOptions ): Promise>; - detachNetworkEndpoints( - params?: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + delete( + params?: Params$Resource$Globalforwardingrules$Delete, options?: MethodOptions ): Promise>; - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + delete( + params: Params$Resource$Globalforwardingrules$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, + delete( + params: Params$Resource$Globalforwardingrules$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, - callback: BodyResponseCallback - ): void; - detachNetworkEndpoints( + delete( + params: Params$Resource$Globalforwardingrules$Delete, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints + | Params$Resource$Globalforwardingrules$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -79642,13 +79202,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; + {}) as Params$Resource$Globalforwardingrules$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; + params = {} as Params$Resource$Globalforwardingrules$Delete; options = {}; } @@ -79663,16 +79222,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' + '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { @@ -79686,7 +79245,8 @@ export namespace compute_alpha { } /** - * Returns the specified network endpoint group. + * Returns the specified GlobalForwardingRule resource. Gets a list of + * available forwarding rules by making a list() request. * @example * ```js * // Before running the sample: @@ -79719,40 +79279,62 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.get({ - * // The name of the network endpoint group. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.globalForwardingRules.get({ + * // Name of the ForwardingRule resource to return. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, + * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, * // "kind": "my_kind", - * // "loadBalancer": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", * // "network": "my_network", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serverlessDeployment": {}, - * // "size": 0, + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], * // "subnetwork": "my_subnetwork", - * // "type": "my_type", - * // "zone": "my_zone" + * // "target": "my_target" * // } * } * @@ -79769,54 +79351,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Globalnetworkendpointgroups$Get, + params: Params$Resource$Globalforwardingrules$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Globalnetworkendpointgroups$Get, + params?: Params$Resource$Globalforwardingrules$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Globalnetworkendpointgroups$Get, + params: Params$Resource$Globalforwardingrules$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globalnetworkendpointgroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalforwardingrules$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globalnetworkendpointgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalforwardingrules$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Get - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Get; + {}) as Params$Resource$Globalforwardingrules$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$Get; + params = {} as Params$Resource$Globalforwardingrules$Get; options = {}; } @@ -79831,7 +79411,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' + '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -79839,37 +79419,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a network endpoint group in the specified project using the - * parameters that are included in the request. - * - * Note: Use the following APIs to manage network endpoint groups: - * - * - - * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity - * NEGs): zonal - * API - * - - * To manage NEGs with regional scope (such as regional internet NEGs, - * serverless NEGs, Private Service Connect NEGs): regional - * API - * - - * To manage NEGs with global scope (such as global internet NEGs):global - * API + * Creates a GlobalForwardingRule resource in the specified project using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -79901,7 +79467,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.insert({ + * const res = await compute.globalForwardingRules.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])?))', @@ -79924,29 +79490,49 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, + * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, * // "kind": "my_kind", - * // "loadBalancer": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], * // "name": "my_name", * // "network": "my_network", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serverlessDeployment": {}, - * // "size": 0, + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], * // "subnetwork": "my_subnetwork", - * // "type": "my_type", - * // "zone": "my_zone" + * // "target": "my_target" * // } * }, * }); @@ -79998,31 +79584,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, + params: Params$Resource$Globalforwardingrules$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Globalnetworkendpointgroups$Insert, + params?: Params$Resource$Globalforwardingrules$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, + params: Params$Resource$Globalforwardingrules$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, + params: Params$Resource$Globalforwardingrules$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globalnetworkendpointgroups$Insert, + params: Params$Resource$Globalforwardingrules$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Insert + | Params$Resource$Globalforwardingrules$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -80038,12 +79624,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Insert; + {}) as Params$Resource$Globalforwardingrules$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$Insert; + params = {} as Params$Resource$Globalforwardingrules$Insert; options = {}; } @@ -80058,7 +79644,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups' + '/compute/alpha/projects/{project}/global/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -80081,7 +79667,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of network endpoint groups that are located in the + * Retrieves a list of GlobalForwardingRule resources available to the * specified project. * @example * ```js @@ -80115,7 +79701,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.list({ + * const res = await compute.globalForwardingRules.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -80234,54 +79820,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globalnetworkendpointgroups$List, + params: Params$Resource$Globalforwardingrules$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globalnetworkendpointgroups$List, + params?: Params$Resource$Globalforwardingrules$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globalnetworkendpointgroups$List, + params: Params$Resource$Globalforwardingrules$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalnetworkendpointgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalforwardingrules$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalnetworkendpointgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Globalforwardingrules$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$List - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$List; + {}) as Params$Resource$Globalforwardingrules$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalnetworkendpointgroups$List; + params = {} as Params$Resource$Globalforwardingrules$List; options = {}; } @@ -80296,7 +79880,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups' + '/compute/alpha/projects/{project}/global/forwardingRules' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -80309,17 +79893,21 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the network endpoints in the specified network endpoint group. + * Updates the specified forwarding rule with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. Currently, you can only + * patch the network_tier field. * @example * ```js * // Before running the sample: @@ -80343,7 +79931,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -80352,111 +79939,109 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalNetworkEndpointGroups.listNetworkEndpoints({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // The name of the network endpoint group from which you want to generate a - * // list of included network endpoints. It should comply with RFC1035. - * networkEndpointGroup: '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', + * const res = await compute.globalForwardingRules.patch({ + * // Name of the ForwardingRule resource to patch. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "IPAddress": "my_IPAddress", + * // "IPAddresses": [], + * // "IPProtocol": "my_IPProtocol", + * // "allPorts": false, + * // "allowGlobalAccess": false, + * // "allowPscGlobalAccess": false, + * // "attachedExtensions": [], + * // "availabilityGroup": "my_availabilityGroup", + * // "backendService": "my_backendService", + * // "baseForwardingRule": "my_baseForwardingRule", + * // "childForwardingRules": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "externalManagedBackendBucketMigrationState": "my_externalManagedBackendBucketMigrationState", + * // "externalManagedBackendBucketMigrationTestingPercentage": {}, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "ipCollection": "my_ipCollection", + * // "ipVersion": "my_ipVersion", + * // "isMirroringCollector": false, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "loadBalancingScheme": "my_loadBalancingScheme", + * // "metadataFilters": [], + * // "name": "my_name", + * // "network": "my_network", + * // "networkTier": "my_networkTier", + * // "noAutomateDnsZone": false, + * // "parentForwardingRule": "my_parentForwardingRule", + * // "portRange": "my_portRange", + * // "ports": [], + * // "pscConnectionId": "my_pscConnectionId", + * // "pscConnectionStatus": "my_pscConnectionStatus", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceDirectoryRegistrations": [], + * // "serviceLabel": "my_serviceLabel", + * // "serviceName": "my_serviceName", + * // "sourceIpRanges": [], + * // "subnetwork": "my_subnetwork", + * // "target": "my_target" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -80472,62 +80057,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + patch( + params: Params$Resource$Globalforwardingrules$Patch, options: StreamMethodOptions ): Promise>; - listNetworkEndpoints( - params?: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + patch( + params?: Params$Resource$Globalforwardingrules$Patch, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + ): Promise>; + patch( + params: Params$Resource$Globalforwardingrules$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listNetworkEndpoints( - params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, - callback: BodyResponseCallback + patch( + params: Params$Resource$Globalforwardingrules$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( - callback: BodyResponseCallback + patch( + params: Params$Resource$Globalforwardingrules$Patch, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; + {}) as Params$Resource$Globalforwardingrules$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; + params = {} as Params$Resource$Globalforwardingrules$Patch; options = {}; } @@ -80542,384 +80118,32 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' + '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints extends StandardParameters { - /** - * The name of the network endpoint group where you are attaching network - * endpoints to. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalNetworkEndpointGroupsAttachEndpointsRequest; - } - export interface Params$Resource$Globalnetworkendpointgroups$Delete extends StandardParameters { - /** - * The name of the network endpoint group to delete. It should comply with - * RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - } - export interface Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints extends StandardParameters { - /** - * The name of the network endpoint group where you are removing network - * endpoints. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalNetworkEndpointGroupsDetachEndpointsRequest; - } - export interface Params$Resource$Globalnetworkendpointgroups$Get extends StandardParameters { - /** - * The name of the network endpoint group. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Globalnetworkendpointgroups$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkEndpointGroup; - } - export interface Params$Resource$Globalnetworkendpointgroups$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * The name of the network endpoint group from which you want to generate a - * list of included network endpoints. It should comply with RFC1035. - */ - networkEndpointGroup?: string; - /** - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Globaloperations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves an aggregated list of all operations. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Sets the labels on the specified resource. To learn more about labels, + * read the + * Labeling resources documentation. * @example * ```js * // Before running the sample: @@ -80943,7 +80167,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -80952,121 +80175,54 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.globalForwardingRules.setLabels({ * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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 + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -81082,57 +80238,53 @@ export namespace compute_alpha { * @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$Globaloperations$Aggregatedlist, + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Globaloperations$Aggregatedlist, + setLabels( + params?: Params$Resource$Globalforwardingrules$Setlabels, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, + ): Promise>; + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Globaloperations$Aggregatedlist, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Globalforwardingrules$Setlabels, + callback: BodyResponseCallback ): void; - aggregatedList( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Globaloperations$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Aggregatedlist; + {}) as Params$Resource$Globalforwardingrules$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Aggregatedlist; + params = {} as Params$Resource$Globalforwardingrules$Setlabels; options = {}; } @@ -81147,30 +80299,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/operations' + '/compute/alpha/projects/{project}/global/forwardingRules/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified Operations resource. + * Changes target URL for the GlobalForwardingRule resource. The new target + * should be of the same type as the old target. * @example * ```js * // Before running the sample: @@ -81202,15 +80355,68 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.delete({ - * // Name of the Operations resource to delete, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalForwardingRules.setTarget({ + * // Name of the ForwardingRule resource in which target is to be set. + * forwardingRule: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "target": "my_target" + * // } + * }, * }); * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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 => { @@ -81225,51 +80431,53 @@ export namespace compute_alpha { * @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$Globaloperations$Delete, + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globaloperations$Delete, + setTarget( + params?: Params$Resource$Globalforwardingrules$Settarget, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globaloperations$Delete, + ): Promise>; + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globaloperations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globaloperations$Delete, - callback: BodyResponseCallback + setTarget( + params: Params$Resource$Globalforwardingrules$Settarget, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + setTarget(callback: BodyResponseCallback): void; + setTarget( paramsOrCallback?: - | Params$Resource$Globaloperations$Delete - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Settarget + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback + callback?: + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Delete; + {}) as Params$Resource$Globalforwardingrules$Settarget; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Delete; + params = {} as Params$Resource$Globalforwardingrules$Settarget; options = {}; } @@ -81284,30 +80492,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/operations/{operation}' + '/compute/alpha/projects/{project}/global/forwardingRules/{forwardingRule}/setTarget' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'operation'], - pathParams: ['operation', 'project'], + requiredParams: ['project', 'forwardingRule'], + pathParams: ['forwardingRule', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the specified Operations resource. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -81340,46 +80548,26 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOperations.get({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalForwardingRules.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])?))', + * // 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 * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -81395,53 +80583,57 @@ export namespace compute_alpha { * @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$Globaloperations$Get, + testIamPermissions( + params: Params$Resource$Globalforwardingrules$Testiampermissions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globaloperations$Get, + testIamPermissions( + params?: Params$Resource$Globalforwardingrules$Testiampermissions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globaloperations$Get, + ): Promise>; + testIamPermissions( + params: Params$Resource$Globalforwardingrules$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globaloperations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Globalforwardingrules$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globaloperations$Get, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Globalforwardingrules$Testiampermissions, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Globaloperations$Get - | BodyResponseCallback + | Params$Resource$Globalforwardingrules$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Get; + {}) as Params$Resource$Globalforwardingrules$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Get; + params = {} as Params$Resource$Globalforwardingrules$Testiampermissions; options = {}; } @@ -81456,452 +80648,97 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/operations/{operation}' + '/compute/alpha/projects/{project}/global/forwardingRules/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'operation'], - pathParams: ['operation', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Globalforwardingrules$Delete extends StandardParameters { /** - * Retrieves a list of Operation resources contained within 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.globalOperations.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * 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. + * Name of the ForwardingRule resource to delete. */ - list( - params: Params$Resource$Globaloperations$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Globaloperations$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globaloperations$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globaloperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globaloperations$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Globaloperations$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$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/alpha/projects/{project}/global/operations' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + forwardingRule?: string; /** - * Waits for the specified Operation resource to return as `DONE` - * or for the request to approach the 2 minute deadline, and retrieves the - * specified Operation resource. This method differs from the - * `GET` method in that it waits for no more than the default - * deadline (2 minutes) and then returns the current state of the operation, - * which might be `DONE` or still in progress. - * - * This method is called on a best-effort basis. Specifically: - * - * - * - In uncommon cases, when the server is overloaded, the request might - * return before the default deadline is reached, or might return after zero - * seconds. - * - If the default deadline is reached, there is no guarantee that the - * operation is actually done when the method returns. Be prepared to retry - * if the operation is not `DONE`. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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}); + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.globalOperations.wait({ - * // Name of the Operations resource to return, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * }); - * console.log(res.data); + * 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Globalforwardingrules$Get extends StandardParameters { + /** + * Name of the ForwardingRule resource to return. + */ + forwardingRule?: string; + /** + * Project ID for this request. + */ + project?: string; + /** * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + */ + view?: string; + } + export interface Params$Resource$Globalforwardingrules$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - wait( - params: Params$Resource$Globaloperations$Wait, - options: StreamMethodOptions - ): Promise>; - wait( - params?: Params$Resource$Globaloperations$Wait, - options?: MethodOptions - ): Promise>; - wait( - params: Params$Resource$Globaloperations$Wait, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Globaloperations$Wait, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - wait( - params: Params$Resource$Globaloperations$Wait, - callback: BodyResponseCallback - ): void; - wait(callback: BodyResponseCallback): void; - wait( - paramsOrCallback?: - | Params$Resource$Globaloperations$Wait - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globaloperations$Wait; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globaloperations$Wait; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/operations/{operation}/wait' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'operation'], - pathParams: ['operation', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + /** + * Request body metadata + */ + requestBody?: Schema$ForwardingRule; } - - export interface Params$Resource$Globaloperations$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Globalforwardingrules$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -81963,16 +80800,6 @@ export namespace compute_alpha { * expressions. */ 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`, @@ -82014,158 +80841,108 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; } - export interface Params$Resource$Globaloperations$Delete extends StandardParameters { + export interface Params$Resource$Globalforwardingrules$Patch extends StandardParameters { /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. + * Name of the ForwardingRule resource to patch. */ - operation?: string; + forwardingRule?: string; /** * Project ID for this request. */ project?: string; - } - export interface Params$Resource$Globaloperations$Get extends StandardParameters { /** - * Name of the Operations resource to return, or its unique numeric - * identifier. + * 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). */ - operation?: string; + requestId?: string; + /** - * Project ID for this request. + * Request body metadata */ - project?: string; + requestBody?: Schema$ForwardingRule; } - export interface Params$Resource$Globaloperations$List extends StandardParameters { + export interface Params$Resource$Globalforwardingrules$Setlabels extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. + * Project ID for this request. */ - filter?: string; + project?: 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`) + * Name or id of the resource for this request. */ - maxResults?: number; + resource?: string; + /** - * 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. + * Request body metadata */ - orderBy?: string; + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Globalforwardingrules$Settarget extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Name of the ForwardingRule resource in which target is to be set. */ - pageToken?: string; + forwardingRule?: string; /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Globaloperations$Wait extends StandardParameters { + requestId?: string; + /** - * Name of the Operations resource to return, or its unique numeric - * identifier. + * Request body metadata */ - operation?: string; + requestBody?: Schema$TargetReference; + } + export interface Params$Resource$Globalforwardingrules$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Globalorganizationoperations { + export class Resource$Globalnetworkendpointgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified Operations resource. + * Attach a network endpoint to the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -82197,14 +80974,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOrganizationOperations.delete({ - * // Name of the Operations resource to delete, or its unique numeric - * // identifier. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Parent ID for this request. - * parentId: 'placeholder-value', + * const res = await compute.globalNetworkEndpointGroups.attachNetworkEndpoints({ + * // The name of the network endpoint group where you are attaching network + * // endpoints to. It should comply with RFC1035. + * networkEndpointGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, * }); * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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 => { @@ -82219,51 +81051,56 @@ export namespace compute_alpha { * @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$Globalorganizationoperations$Delete, + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Globalorganizationoperations$Delete, + attachNetworkEndpoints( + params?: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Globalorganizationoperations$Delete, + ): Promise>; + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalorganizationoperations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalorganizationoperations$Delete, - callback: BodyResponseCallback + attachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + attachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Globalorganizationoperations$Delete - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback + callback?: + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalorganizationoperations$Delete; + {}) as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalorganizationoperations$Delete; + params = + {} as Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints; options = {}; } @@ -82277,31 +81114,32 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/locations/global/operations/{operation}' + rootUrl + + '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['operation'], - pathParams: ['operation'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the specified Operations resource. Gets a list of operations - * by making a `list()` request. + * Deletes the specified network endpoint group.Note that the NEG cannot be + * deleted if there are backend services referencing it. * @example * ```js * // Before running the sample: @@ -82325,7 +81163,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82334,12 +81171,27 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOrganizationOperations.get({ - * // Name of the Operations resource to return. Parent is derived from this - * // field. - * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Parent ID for this request. Not used. Parent is derived from resource_id. - * parentId: 'placeholder-value', + * const res = await compute.globalNetworkEndpointGroups.delete({ + * // The name of the network endpoint group to delete. It should comply with + * // RFC1035. + * networkEndpointGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * @@ -82388,32 +81240,32 @@ export namespace compute_alpha { * @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$Globalorganizationoperations$Get, + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Globalorganizationoperations$Get, + delete( + params?: Params$Resource$Globalnetworkendpointgroups$Delete, options?: MethodOptions ): Promise>; - get( - params: Params$Resource$Globalorganizationoperations$Get, + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalorganizationoperations$Get, + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Globalorganizationoperations$Get, + delete( + params: Params$Resource$Globalnetworkendpointgroups$Delete, callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Globalorganizationoperations$Get + | Params$Resource$Globalnetworkendpointgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -82429,12 +81281,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalorganizationoperations$Get; + {}) as Params$Resource$Globalnetworkendpointgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalorganizationoperations$Get; + params = {} as Params$Resource$Globalnetworkendpointgroups$Delete; options = {}; } @@ -82448,16 +81300,17 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/locations/global/operations/{operation}' + rootUrl + + '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['operation'], - pathParams: ['operation'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { @@ -82471,8 +81324,7 @@ export namespace compute_alpha { } /** - * Retrieves a list of Operation resources contained within the specified - * organization. + * Detach the network endpoint from the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -82496,7 +81348,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -82505,108 +81356,68 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalOrganizationOperations.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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. + * const res = await compute.globalNetworkEndpointGroups.detachNetworkEndpoints({ + * // The name of the network endpoint group where you are removing network + * // endpoints. It should comply with RFC1035. + * networkEndpointGroup: '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])?))', + * // 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. * // - * // 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', - * // Parent ID for this request. - * parentId: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -82622,349 +81433,34 @@ export namespace compute_alpha { * @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$Globalorganizationoperations$List, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Globalorganizationoperations$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Globalorganizationoperations$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalorganizationoperations$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalorganizationoperations$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Globalorganizationoperations$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalorganizationoperations$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalorganizationoperations$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/alpha/locations/global/operations' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Globalorganizationoperations$Delete extends StandardParameters { - /** - * Name of the Operations resource to delete, or its unique numeric - * identifier. - */ - operation?: string; - /** - * Parent ID for this request. - */ - parentId?: string; - } - export interface Params$Resource$Globalorganizationoperations$Get extends StandardParameters { - /** - * Name of the Operations resource to return. Parent is derived from this - * field. - */ - operation?: string; - /** - * Parent ID for this request. Not used. Parent is derived from resource_id. - */ - parentId?: string; - } - export interface Params$Resource$Globalorganizationoperations$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Parent ID for this request. - */ - parentId?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Globalpublicdelegatedprefixes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes the specified global PublicDelegatedPrefix. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.globalPublicDelegatedPrefixes.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 PublicDelegatedPrefix resource to delete. - * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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). - * requestId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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$Globalpublicdelegatedprefixes$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Globalpublicdelegatedprefixes$Delete, + detachNetworkEndpoints( + params?: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Globalpublicdelegatedprefixes$Delete, + detachNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + detachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + detachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Delete + | Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -82980,12 +81476,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Delete; + {}) as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Delete; + params = + {} as Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints; options = {}; } @@ -83000,16 +81497,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' + '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'publicDelegatedPrefix'], - pathParams: ['project', 'publicDelegatedPrefix'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { @@ -83023,7 +81520,7 @@ export namespace compute_alpha { } /** - * Returns the specified global PublicDelegatedPrefix resource. + * Returns the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -83056,38 +81553,40 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.get({ + * const res = await compute.globalNetworkEndpointGroups.get({ + * // The name of the network endpoint group. It should comply with RFC1035. + * networkEndpointGroup: '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 PublicDelegatedPrefix resource to return. - * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "allocatablePrefixLength": 0, - * // "byoipApiVersion": "my_byoipApiVersion", + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", - * // "enableEnhancedIpv4Allocation": false, - * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "ipCidrRange": "my_ipCidrRange", - * // "ipv6AccessType": "my_ipv6AccessType", - * // "isLiveMigration": false, * // "kind": "my_kind", - * // "mode": "my_mode", + * // "loadBalancer": {}, * // "name": "my_name", - * // "networkTier": "my_networkTier", - * // "parentPrefix": "my_parentPrefix", - * // "publicDelegatedSubPrefixs": [], - * // "purpose": "my_purpose", + * // "network": "my_network", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": "my_status" + * // "serverlessDeployment": {}, + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "type": "my_type", + * // "zone": "my_zone" * // } * } * @@ -83104,54 +81603,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, + params: Params$Resource$Globalnetworkendpointgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Globalpublicdelegatedprefixes$Get, + params?: Params$Resource$Globalnetworkendpointgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, + params: Params$Resource$Globalnetworkendpointgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, + params: Params$Resource$Globalnetworkendpointgroups$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Globalpublicdelegatedprefixes$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalnetworkendpointgroups$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Get - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Get; + {}) as Params$Resource$Globalnetworkendpointgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Get; + params = {} as Params$Resource$Globalnetworkendpointgroups$Get; options = {}; } @@ -83166,7 +81665,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' + '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -83174,23 +81673,37 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'publicDelegatedPrefix'], - pathParams: ['project', 'publicDelegatedPrefix'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a global PublicDelegatedPrefix in the specified project using the + * Creates a network endpoint group in the specified project using the * parameters that are included in the request. + * + * Note: Use the following APIs to manage network endpoint groups: + * + * - + * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity + * NEGs): zonal + * API + * - + * To manage NEGs with regional scope (such as regional internet NEGs, + * serverless NEGs, Private Service Connect NEGs): regional + * API + * - + * To manage NEGs with global scope (such as global internet NEGs):global + * API * @example * ```js * // Before running the sample: @@ -83222,7 +81735,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.insert({ + * const res = await compute.globalNetworkEndpointGroups.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])?))', @@ -83245,27 +81758,29 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "allocatablePrefixLength": 0, - * // "byoipApiVersion": "my_byoipApiVersion", + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, * // "description": "my_description", - * // "enableEnhancedIpv4Allocation": false, - * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "ipCidrRange": "my_ipCidrRange", - * // "ipv6AccessType": "my_ipv6AccessType", - * // "isLiveMigration": false, * // "kind": "my_kind", - * // "mode": "my_mode", + * // "loadBalancer": {}, * // "name": "my_name", - * // "networkTier": "my_networkTier", - * // "parentPrefix": "my_parentPrefix", - * // "publicDelegatedSubPrefixs": [], - * // "purpose": "my_purpose", + * // "network": "my_network", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": "my_status" + * // "serverlessDeployment": {}, + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "type": "my_type", + * // "zone": "my_zone" * // } * }, * }); @@ -83317,31 +81832,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Globalpublicdelegatedprefixes$Insert, + params?: Params$Resource$Globalnetworkendpointgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Globalpublicdelegatedprefixes$Insert, + params: Params$Resource$Globalnetworkendpointgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Insert + | Params$Resource$Globalnetworkendpointgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -83357,12 +81872,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Insert; + {}) as Params$Resource$Globalnetworkendpointgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Insert; + params = {} as Params$Resource$Globalnetworkendpointgroups$Insert; options = {}; } @@ -83377,7 +81892,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes' + '/compute/alpha/projects/{project}/global/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -83400,7 +81915,8 @@ export namespace compute_alpha { } /** - * Lists the global PublicDelegatedPrefixes for a project. + * Retrieves the list of network endpoint groups that are located in the + * specified project. * @example * ```js * // Before running the sample: @@ -83433,7 +81949,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.list({ + * const res = await compute.globalNetworkEndpointGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -83552,56 +82068,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, + params: Params$Resource$Globalnetworkendpointgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globalpublicdelegatedprefixes$List, + params?: Params$Resource$Globalnetworkendpointgroups$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, + params: Params$Resource$Globalnetworkendpointgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, + params: Params$Resource$Globalnetworkendpointgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalpublicdelegatedprefixes$List, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Globalnetworkendpointgroups$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$List - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$List; + {}) as Params$Resource$Globalnetworkendpointgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$List; + params = {} as Params$Resource$Globalnetworkendpointgroups$List; options = {}; } @@ -83616,7 +82130,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes' + '/compute/alpha/projects/{project}/global/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -83629,20 +82143,17 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified global PublicDelegatedPrefix resource with the data - * included in the request. This method supportsPATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Lists the network endpoints in the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -83666,6 +82177,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -83674,87 +82186,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalPublicDelegatedPrefixes.patch({ + * const res = await compute.globalNetworkEndpointGroups.listNetworkEndpoints({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // The name of the network endpoint group from which you want to generate a + * // list of included network endpoints. It should comply with RFC1035. + * networkEndpointGroup: '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 PublicDelegatedPrefix resource to patch. - * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allocatablePrefixLength": 0, - * // "byoipApiVersion": "my_byoipApiVersion", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "enableEnhancedIpv4Allocation": false, - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "ipCidrRange": "my_ipCidrRange", - * // "ipv6AccessType": "my_ipv6AccessType", - * // "isLiveMigration": false, - * // "kind": "my_kind", - * // "mode": "my_mode", - * // "name": "my_name", - * // "networkTier": "my_networkTier", - * // "parentPrefix": "my_parentPrefix", - * // "publicDelegatedSubPrefixs": [], - * // "purpose": "my_purpose", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": "my_status" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "nextPageToken": "my_nextPageToken", + * // "warning": {} * // } * } * @@ -83770,53 +82306,62 @@ export namespace compute_alpha { * @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$Globalpublicdelegatedprefixes$Patch, + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Globalpublicdelegatedprefixes$Patch, + listNetworkEndpoints( + params?: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Globalpublicdelegatedprefixes$Patch, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + listNetworkEndpoints( + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Globalpublicdelegatedprefixes$Patch - | BodyResponseCallback + | Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalpublicdelegatedprefixes$Patch; + {}) as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalpublicdelegatedprefixes$Patch; + params = + {} as Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints; options = {}; } @@ -83831,38 +82376,73 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' + '/compute/alpha/projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'publicDelegatedPrefix'], - pathParams: ['project', 'publicDelegatedPrefix'], + requiredParams: ['project', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Globalpublicdelegatedprefixes$Delete extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Attachnetworkendpoints extends StandardParameters { + /** + * The name of the network endpoint group where you are attaching network + * endpoints to. It should comply with RFC1035. + */ + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the PublicDelegatedPrefix resource to delete. + * 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). */ - publicDelegatedPrefix?: string; + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalNetworkEndpointGroupsAttachEndpointsRequest; + } + export interface Params$Resource$Globalnetworkendpointgroups$Delete extends StandardParameters { + /** + * The name of the network endpoint group to delete. It should comply with + * RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. + */ + project?: 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 @@ -83880,17 +82460,49 @@ export namespace compute_alpha { */ requestId?: string; } - export interface Params$Resource$Globalpublicdelegatedprefixes$Get extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Detachnetworkendpoints extends StandardParameters { + /** + * The name of the network endpoint group where you are removing network + * endpoints. It should comply with RFC1035. + */ + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the PublicDelegatedPrefix resource to return. + * 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). */ - publicDelegatedPrefix?: string; + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalNetworkEndpointGroupsDetachEndpointsRequest; } - export interface Params$Resource$Globalpublicdelegatedprefixes$Insert extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Get extends StandardParameters { + /** + * The name of the network endpoint group. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Globalnetworkendpointgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -83915,9 +82527,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$PublicDelegatedPrefix; + requestBody?: Schema$NetworkEndpointGroup; } - export interface Params$Resource$Globalpublicdelegatedprefixes$List extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -84021,49 +82633,126 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Globalpublicdelegatedprefixes$Patch extends StandardParameters { + export interface Params$Resource$Globalnetworkendpointgroups$Listnetworkendpoints extends StandardParameters { /** - * Project ID for this request. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - project?: string; + filter?: string; /** - * Name of the PublicDelegatedPrefix resource to patch. + * 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`) */ - publicDelegatedPrefix?: string; + maxResults?: number; /** - * An optional request ID to identify requests. Specify a unique request ID so - * that if you must retry your request, the server will know to ignore the - * request if it has already been completed. + * The name of the network endpoint group from which you want to generate a + * list of included network endpoints. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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. + * 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. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestId?: string; - + orderBy?: string; /** - * Request body metadata + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - requestBody?: Schema$PublicDelegatedPrefix; + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; } - export class Resource$Globalvmextensionpolicies { + export class Resource$Globaloperations { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all VM Extension Policy resources - * available to the specified project. + * Retrieves an aggregated list of all operations. * - * To prevent failure, it's recommended that you set the + * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. * @example * ```js @@ -84097,7 +82786,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.aggregatedList({ + * const res = await compute.globalOperations.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -84187,7 +82876,7 @@ export namespace compute_alpha { * // `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 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])?))', * // Opt-in for partial success behavior which provides partial results in case @@ -84205,7 +82894,6 @@ export namespace compute_alpha { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -84229,60 +82917,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + params: Params$Resource$Globaloperations$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + params?: Params$Resource$Globaloperations$Aggregatedlist, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + params: Params$Resource$Globaloperations$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + params: Params$Resource$Globaloperations$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globaloperations$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; + {}) as Params$Resource$Globaloperations$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; + params = {} as Params$Resource$Globaloperations$Aggregatedlist; options = {}; } @@ -84297,7 +82981,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/vmExtensionPolicies' + '/compute/alpha/projects/{project}/aggregated/operations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -84310,24 +82994,17 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Purge scoped resources (zonal policies) from a global VM extension - * policy, and then delete the global VM extension policy. Purge of the scoped - * resources is a pre-condition of the global VM extension policy deletion. - * The deletion of the global VM extension policy happens after the purge - * rollout is done, so it's not a part of the LRO. It's an automatic process - * that triggers in the backend. + * Deletes the specified Operations resource. * @example * ```js * // Before running the sample: @@ -84359,71 +83036,15 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.delete({ - * // Name of the global VM extension policy to purge scoped resources for. - * globalVmExtensionPolicy: 'placeholder-value', + * const res = await compute.globalOperations.delete({ + * // Name of the Operations resource to delete, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "conflictBehavior": "my_conflictBehavior", - * // "name": "my_name", - * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", - * // "retryUuid": "my_retryUuid" - * // } - * }, * }); * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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 => { @@ -84439,211 +83060,50 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, + params: Params$Resource$Globaloperations$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Globalvmextensionpolicies$Delete, + params?: Params$Resource$Globaloperations$Delete, options?: MethodOptions - ): Promise>; + ): Promise>; delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, + params: Params$Resource$Globaloperations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Globalvmextensionpolicies$Delete, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$Delete, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; + delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$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/alpha/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'globalVmExtensionPolicy'], - pathParams: ['globalVmExtensionPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets details of a global VM extension 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.globalVmExtensionPolicies.get({ - * // Name of the GlobalVmExtensionPolicy resource to return. - * globalVmExtensionPolicy: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "extensionPolicies": {}, - * // "id": "my_id", - * // "instanceSelectors": [], - * // "kind": "my_kind", - * // "name": "my_name", - * // "priority": 0, - * // "rolloutOperation": {}, - * // "scopedResourceStatus": "my_scopedResourceStatus", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "updateTimestamp": "my_updateTimestamp" - * // } - * } - * - * 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$Globalvmextensionpolicies$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Globalvmextensionpolicies$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Globalvmextensionpolicies$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Globalvmextensionpolicies$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Globalvmextensionpolicies$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Get - | BodyResponseCallback + | Params$Resource$Globaloperations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback + callback?: BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Get; + {}) as Params$Resource$Globaloperations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Get; + params = {} as Params$Resource$Globaloperations$Delete; options = {}; } @@ -84658,30 +83118,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' + '/compute/alpha/projects/{project}/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'globalVmExtensionPolicy'], - pathParams: ['globalVmExtensionPolicy', 'project'], + requiredParams: ['project', 'operation'], + pathParams: ['operation', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves details of a specific VM extension. + * Retrieves the specified Operations resource. * @example * ```js * // Before running the sample: @@ -84714,189 +83174,13 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.getVmExtension({ - * extensionName: '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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "name": "my_name", - * // "versions": [] - * // } - * } - * - * 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. - */ - getVmExtension( - params: Params$Resource$Globalvmextensionpolicies$Getvmextension, - options: StreamMethodOptions - ): Promise>; - getVmExtension( - params?: Params$Resource$Globalvmextensionpolicies$Getvmextension, - options?: MethodOptions - ): Promise>; - getVmExtension( - params: Params$Resource$Globalvmextensionpolicies$Getvmextension, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getVmExtension( - params: Params$Resource$Globalvmextensionpolicies$Getvmextension, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getVmExtension( - params: Params$Resource$Globalvmextensionpolicies$Getvmextension, - callback: BodyResponseCallback - ): void; - getVmExtension( - callback: BodyResponseCallback - ): void; - getVmExtension( - paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Getvmextension - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Getvmextension; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Getvmextension; - 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}/global/vmExtensions/{extensionName}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'extensionName'], - pathParams: ['extensionName', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates a new project level GlobalVmExtensionPolicy. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.globalVmExtensionPolicies.insert({ + * const res = await compute.globalOperations.get({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "extensionPolicies": {}, - * // "id": "my_id", - * // "instanceSelectors": [], - * // "kind": "my_kind", - * // "name": "my_name", - * // "priority": 0, - * // "rolloutOperation": {}, - * // "scopedResourceStatus": "my_scopedResourceStatus", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "updateTimestamp": "my_updateTimestamp" - * // } - * }, * }); * console.log(res.data); * @@ -84945,32 +83229,32 @@ export namespace compute_alpha { * @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$Globalvmextensionpolicies$Insert, + get( + params: Params$Resource$Globaloperations$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Globalvmextensionpolicies$Insert, + get( + params?: Params$Resource$Globaloperations$Get, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + get( + params: Params$Resource$Globaloperations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + get( + params: Params$Resource$Globaloperations$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Globalvmextensionpolicies$Insert, + get( + params: Params$Resource$Globaloperations$Get, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Insert + | Params$Resource$Globaloperations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -84986,12 +83270,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Insert; + {}) as Params$Resource$Globaloperations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Insert; + params = {} as Params$Resource$Globaloperations$Get; options = {}; } @@ -85006,16 +83290,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/vmExtensionPolicies' + '/compute/alpha/projects/{project}/global/operations/{operation}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'operation'], + pathParams: ['operation', 'project'], context: this.context, }; if (callback) { @@ -85029,7 +83313,8 @@ export namespace compute_alpha { } /** - * Lists global VM extension policies. + * Retrieves a list of Operation resources contained within the specified + * project. * @example * ```js * // Before running the sample: @@ -85062,7 +83347,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.list({ + * const res = await compute.globalOperations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -85159,13 +83444,11 @@ export namespace compute_alpha { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -85183,56 +83466,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Globalvmextensionpolicies$List, + params: Params$Resource$Globaloperations$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Globalvmextensionpolicies$List, + params?: Params$Resource$Globaloperations$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Globalvmextensionpolicies$List, + params: Params$Resource$Globaloperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Globalvmextensionpolicies$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Globalvmextensionpolicies$List, - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Globaloperations$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$List - | BodyResponseCallback + | Params$Resource$Globaloperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$List; + {}) as Params$Resource$Globaloperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$List; + params = {} as Params$Resource$Globaloperations$List; options = {}; } @@ -85246,8 +83525,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/vmExtensionPolicies' + rootUrl + '/compute/alpha/projects/{project}/global/operations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -85260,261 +83538,32 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all VM extensions within a specific zone for a project. - * This is a read-only API. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.globalVmExtensionPolicies.listVmExtensions({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // Required. 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} - * // } - * } + * Waits for the specified Operation resource to return as `DONE` + * or for the request to approach the 2 minute deadline, and retrieves the + * specified Operation resource. This method differs from the + * `GET` method in that it waits for no more than the default + * deadline (2 minutes) and then returns the current state of the operation, + * which might be `DONE` or still in progress. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * This method is called on a best-effort basis. Specifically: * - * ``` * - * @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. - */ - listVmExtensions( - params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, - options: StreamMethodOptions - ): Promise>; - listVmExtensions( - params?: Params$Resource$Globalvmextensionpolicies$Listvmextensions, - options?: MethodOptions - ): Promise>; - listVmExtensions( - params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listVmExtensions( - params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listVmExtensions( - params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, - callback: BodyResponseCallback - ): void; - listVmExtensions( - callback: BodyResponseCallback - ): void; - listVmExtensions( - paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Listvmextensions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Listvmextensions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Globalvmextensionpolicies$Listvmextensions; - 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}/global/vmExtensions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Updates a global VM extension policy. + * - In uncommon cases, when the server is overloaded, the request might + * return before the default deadline is reached, or might return after zero + * seconds. + * - If the default deadline is reached, there is no guarantee that the + * operation is actually done when the method returns. Be prepared to retry + * if the operation is not `DONE`. * @example * ```js * // Before running the sample: @@ -85538,6 +83587,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -85546,46 +83596,13 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.globalVmExtensionPolicies.update({ - * // Name of the global VM extension policy to update. - * globalVmExtensionPolicy: 'placeholder-value', + * const res = await compute.globalOperations.wait({ + * // Name of the Operations resource to return, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "extensionPolicies": {}, - * // "id": "my_id", - * // "instanceSelectors": [], - * // "kind": "my_kind", - * // "name": "my_name", - * // "priority": 0, - * // "rolloutOperation": {}, - * // "scopedResourceStatus": "my_scopedResourceStatus", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "updateTimestamp": "my_updateTimestamp" - * // } - * }, * }); * console.log(res.data); * @@ -85634,32 +83651,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Globalvmextensionpolicies$Update, + wait( + params: Params$Resource$Globaloperations$Wait, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Globalvmextensionpolicies$Update, + wait( + params?: Params$Resource$Globaloperations$Wait, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Globalvmextensionpolicies$Update, + wait( + params: Params$Resource$Globaloperations$Wait, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Globalvmextensionpolicies$Update, + wait( + params: Params$Resource$Globaloperations$Wait, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Globalvmextensionpolicies$Update, + wait( + params: Params$Resource$Globaloperations$Wait, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + wait(callback: BodyResponseCallback): void; + wait( paramsOrCallback?: - | Params$Resource$Globalvmextensionpolicies$Update + | Params$Resource$Globaloperations$Wait | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -85675,12 +83692,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Globalvmextensionpolicies$Update; + {}) as Params$Resource$Globaloperations$Wait; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Globalvmextensionpolicies$Update; + params = {} as Params$Resource$Globaloperations$Wait; options = {}; } @@ -85695,16 +83712,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' + '/compute/alpha/projects/{project}/global/operations/{operation}/wait' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'globalVmExtensionPolicy'], - pathParams: ['globalVmExtensionPolicy', 'project'], + requiredParams: ['project', 'operation'], + pathParams: ['operation', 'project'], context: this.context, }; if (callback) { @@ -85718,7 +83735,7 @@ export namespace compute_alpha { } } - export interface Params$Resource$Globalvmextensionpolicies$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Globaloperations$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -85819,7 +83836,7 @@ export namespace compute_alpha { */ pageToken?: string; /** - * Name of the project scoping this request. + * Project ID for this request. */ project?: string; /** @@ -85837,85 +83854,29 @@ export namespace compute_alpha { */ serviceProjectNumber?: string; } - export interface Params$Resource$Globalvmextensionpolicies$Delete extends StandardParameters { - /** - * Name of the global VM extension policy to purge scoped resources for. - */ - globalVmExtensionPolicy?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; - } - export interface Params$Resource$Globalvmextensionpolicies$Get extends StandardParameters { + export interface Params$Resource$Globaloperations$Delete extends StandardParameters { /** - * Name of the GlobalVmExtensionPolicy resource to return. + * Name of the Operations resource to delete, or its unique numeric + * identifier. */ - globalVmExtensionPolicy?: string; + operation?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Globalvmextensionpolicies$Getvmextension extends StandardParameters { - /** - * - */ - extensionName?: string; + export interface Params$Resource$Globaloperations$Get extends StandardParameters { /** - * Project ID for this request. + * Name of the Operations resource to return, or its unique numeric + * identifier. */ - project?: string; - } - export interface Params$Resource$Globalvmextensionpolicies$Insert extends StandardParameters { + operation?: string; /** * Project ID for this request. */ project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Globalvmextensionpolicies$List extends StandardParameters { + export interface Params$Resource$Globaloperations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -86019,151 +83980,333 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Globalvmextensionpolicies$Listvmextensions extends StandardParameters { + export interface Params$Resource$Globaloperations$Wait extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. + * Name of the Operations resource to return, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Project ID for this request. + */ + project?: string; + } + + export class Resource$Globalorganizationoperations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified Operations 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * 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', + * ], + * }); * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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 onresource labels. + * // Do the magic + * const res = await compute.globalOrganizationOperations.delete({ + * // Name of the Operations resource to delete, or its unique numeric + * // identifier. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Parent ID for this request. + * parentId: 'placeholder-value', + * }); + * console.log(res.data); + * } * - * 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) - * ``` + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * ``` * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * @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$Globalorganizationoperations$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Globalorganizationoperations$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Globalorganizationoperations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Globalorganizationoperations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Globalorganizationoperations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Globalorganizationoperations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: BodyResponseCallback | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalorganizationoperations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalorganizationoperations$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/alpha/locations/global/operations/{operation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['operation'], + pathParams: ['operation'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the specified Operations resource. Gets a list of operations + * by making a `list()` 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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', + * ], + * }); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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. + * // Do the magic + * const res = await compute.globalOrganizationOperations.get({ + * // Name of the Operations resource to return. Parent is derived from this + * // field. + * operation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Parent ID for this request. Not used. Parent is derived from resource_id. + * parentId: 'placeholder-value', + * }); + * console.log(res.data); * - * 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; - /** - * Required. Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Globalvmextensionpolicies$Update extends StandardParameters { - /** - * Name of the global VM extension policy to update. - */ - globalVmExtensionPolicy?: string; - /** - * Project ID for this request. - */ - project?: 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). + * @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. */ - requestId?: string; + get( + params: Params$Resource$Globalorganizationoperations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Globalorganizationoperations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Globalorganizationoperations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Globalorganizationoperations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Globalorganizationoperations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Globalorganizationoperations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalorganizationoperations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$GlobalVmExtensionPolicy; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalorganizationoperations$Get; + options = {}; + } - export class Resource$Hacontrollers { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + '/compute/alpha/locations/global/operations/{operation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['operation'], + pathParams: ['operation'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves an aggregated list of all of the HaControllers in the specified - * project across all regions. + * Retrieves a list of Operation resources contained within the specified + * organization. * @example * ```js * // Before running the sample: @@ -86196,7 +84339,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.aggregatedList({ + * const res = await compute.globalOrganizationOperations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -86256,14 +84399,6 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -86286,9 +84421,8 @@ export namespace compute_alpha { * // `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])?))', + * // Parent ID for this request. + * parentId: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -86296,21 +84430,16 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -86327,57 +84456,53 @@ export namespace compute_alpha { * @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$Hacontrollers$Aggregatedlist, + list( + params: Params$Resource$Globalorganizationoperations$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Hacontrollers$Aggregatedlist, + list( + params?: Params$Resource$Globalorganizationoperations$List, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Globalorganizationoperations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Hacontrollers$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Globalorganizationoperations$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + params: Params$Resource$Globalorganizationoperations$List, + callback: BodyResponseCallback ): void; - aggregatedList( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Hacontrollers$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globalorganizationoperations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Aggregatedlist; + {}) as Params$Resource$Globalorganizationoperations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Aggregatedlist; + params = {} as Params$Resource$Globalorganizationoperations$List; options = {}; } @@ -86391,8 +84516,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/aggregated/haControllers' + rootUrl + '/compute/alpha/locations/global/operations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -86400,203 +84524,156 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Globalorganizationoperations$Delete extends StandardParameters { /** - * Deletes an HaController in 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Name of the Operations resource to delete, or its unique numeric + * identifier. + */ + operation?: string; + /** + * Parent ID for this request. + */ + parentId?: string; + } + export interface Params$Resource$Globalorganizationoperations$Get extends StandardParameters { + /** + * Name of the Operations resource to return. Parent is derived from this + * field. + */ + operation?: string; + /** + * Parent ID for this request. Not used. Parent is derived from resource_id. + */ + parentId?: string; + } + export interface Params$Resource$Globalorganizationoperations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * 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', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Do the magic - * const res = await compute.haControllers.delete({ - * // Force-deletes HA Controller when the Delete is stuck. Instance that is not - * // primary at the moment will also be deleted. Can only be used against the HA - * // Controller resource that is already being deleted. - * force: 'placeholder-value', - * // Name of the HaController resource to delete. - * haController: '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 for 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. - * requestId: 'placeholder-value', - * }); - * console.log(res.data); + * 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 onresource labels. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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) + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * ``` + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * @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. + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - delete( - params: Params$Resource$Hacontrollers$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Hacontrollers$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Hacontrollers$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Hacontrollers$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Hacontrollers$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Hacontrollers$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Delete; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + 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; + /** + * Parent ID for this request. + */ + parentId?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Globalpublicdelegatedprefixes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Fails over a VM targeted by the specified HaController to the selected - * zone. + * Deletes the specified global PublicDelegatedPrefix. * @example * ```js * // Before running the sample: @@ -86628,27 +84705,26 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.failover({ - * // ID of the HaController resource to update. - * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalPublicDelegatedPrefixes.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 for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the PublicDelegatedPrefix resource to delete. + * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "failoverToZone": "my_failoverToZone", - * // "primaryZone": "my_primaryZone" - * // } - * }, * }); * console.log(res.data); * @@ -86697,32 +84773,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - failover( - params: Params$Resource$Hacontrollers$Failover, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, options: StreamMethodOptions ): Promise>; - failover( - params?: Params$Resource$Hacontrollers$Failover, + delete( + params?: Params$Resource$Globalpublicdelegatedprefixes$Delete, options?: MethodOptions ): Promise>; - failover( - params: Params$Resource$Hacontrollers$Failover, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - failover( - params: Params$Resource$Hacontrollers$Failover, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - failover( - params: Params$Resource$Hacontrollers$Failover, + delete( + params: Params$Resource$Globalpublicdelegatedprefixes$Delete, callback: BodyResponseCallback ): void; - failover(callback: BodyResponseCallback): void; - failover( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Hacontrollers$Failover + | Params$Resource$Globalpublicdelegatedprefixes$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -86738,12 +84814,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Failover; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Failover; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Delete; options = {}; } @@ -86758,16 +84834,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}/failover' + '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], + requiredParams: ['project', 'publicDelegatedPrefix'], + pathParams: ['project', 'publicDelegatedPrefix'], context: this.context, }; if (callback) { @@ -86781,7 +84857,7 @@ export namespace compute_alpha { } /** - * Returns all the details of a specific HaController. + * Returns the specified global PublicDelegatedPrefix resource. * @example * ```js * // Before running the sample: @@ -86814,35 +84890,38 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.get({ - * // Name of the HaController resource to return. - * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalPublicDelegatedPrefixes.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 for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the PublicDelegatedPrefix resource to return. + * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "backendServices": [], + * // "allocatablePrefixLength": 0, + * // "byoipApiVersion": "my_byoipApiVersion", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "failoverCapacity": "my_failoverCapacity", - * // "failoverInitiation": "my_failoverInitiation", + * // "enableEnhancedIpv4Allocation": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceName": "my_instanceName", + * // "ipCidrRange": "my_ipCidrRange", + * // "ipv6AccessType": "my_ipv6AccessType", + * // "isLiveMigration": false, * // "kind": "my_kind", + * // "mode": "my_mode", * // "name": "my_name", - * // "networkingAutoConfiguration": {}, + * // "networkTier": "my_networkTier", + * // "parentPrefix": "my_parentPrefix", + * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", - * // "secondaryZoneCapacity": "my_secondaryZoneCapacity", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": {}, - * // "zoneConfigurations": {} + * // "status": "my_status" * // } * } * @@ -86859,52 +84938,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Hacontrollers$Get, + params: Params$Resource$Globalpublicdelegatedprefixes$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Hacontrollers$Get, + params?: Params$Resource$Globalpublicdelegatedprefixes$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Hacontrollers$Get, + params: Params$Resource$Globalpublicdelegatedprefixes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Hacontrollers$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalpublicdelegatedprefixes$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Hacontrollers$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalpublicdelegatedprefixes$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Hacontrollers$Get - | BodyResponseCallback + | Params$Resource$Globalpublicdelegatedprefixes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Get; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Get; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Get; options = {}; } @@ -86919,7 +85000,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}' + '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -86927,22 +85008,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], + requiredParams: ['project', 'publicDelegatedPrefix'], + pathParams: ['project', 'publicDelegatedPrefix'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates HaController in the specified project. + * Creates a global PublicDelegatedPrefix in the specified project using the + * parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -86974,37 +85056,50 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.insert({ + * const res = await compute.globalPublicDelegatedPrefixes.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 for 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). * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "backendServices": [], + * // "allocatablePrefixLength": 0, + * // "byoipApiVersion": "my_byoipApiVersion", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "failoverCapacity": "my_failoverCapacity", - * // "failoverInitiation": "my_failoverInitiation", + * // "enableEnhancedIpv4Allocation": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceName": "my_instanceName", + * // "ipCidrRange": "my_ipCidrRange", + * // "ipv6AccessType": "my_ipv6AccessType", + * // "isLiveMigration": false, * // "kind": "my_kind", + * // "mode": "my_mode", * // "name": "my_name", - * // "networkingAutoConfiguration": {}, + * // "networkTier": "my_networkTier", + * // "parentPrefix": "my_parentPrefix", + * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", - * // "secondaryZoneCapacity": "my_secondaryZoneCapacity", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": {}, - * // "zoneConfigurations": {} + * // "status": "my_status" * // } * }, * }); @@ -87056,31 +85151,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Hacontrollers$Insert, + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Hacontrollers$Insert, + params?: Params$Resource$Globalpublicdelegatedprefixes$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Hacontrollers$Insert, + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Hacontrollers$Insert, + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Hacontrollers$Insert, + params: Params$Resource$Globalpublicdelegatedprefixes$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Hacontrollers$Insert + | Params$Resource$Globalpublicdelegatedprefixes$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -87096,12 +85191,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Insert; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Insert; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Insert; options = {}; } @@ -87116,7 +85211,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/haControllers' + '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -87124,8 +85219,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -87139,7 +85234,7 @@ export namespace compute_alpha { } /** - * Lists all HaControllers in the specified project in the specified region. + * Lists the global PublicDelegatedPrefixes for a project. * @example * ```js * // Before running the sample: @@ -87172,7 +85267,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.list({ + * const res = await compute.globalPublicDelegatedPrefixes.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -87257,8 +85352,6 @@ export namespace compute_alpha { * // 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 for 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. * // @@ -87271,12 +85364,11 @@ export namespace compute_alpha { * * // Example response * // { - * // "etag": "my_etag", * // "id": "my_id", * // "items": [], + * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -87294,52 +85386,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Hacontrollers$List, + params: Params$Resource$Globalpublicdelegatedprefixes$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Hacontrollers$List, + params?: Params$Resource$Globalpublicdelegatedprefixes$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Hacontrollers$List, + params: Params$Resource$Globalpublicdelegatedprefixes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Hacontrollers$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalpublicdelegatedprefixes$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Hacontrollers$List, - callback: BodyResponseCallback + params: Params$Resource$Globalpublicdelegatedprefixes$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Hacontrollers$List - | BodyResponseCallback + | Params$Resource$Globalpublicdelegatedprefixes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$List; + {}) as Params$Resource$Globalpublicdelegatedprefixes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$List; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$List; options = {}; } @@ -87354,7 +85450,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/haControllers' + '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -87362,22 +85458,25 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates HaController in the specified project. + * Patches the specified global PublicDelegatedPrefix resource with the data + * included in the request. This method supportsPATCH + * semantics and usesJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -87409,41 +85508,52 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.haControllers.patch({ - * // ID of the HaController resource to update. - * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalPublicDelegatedPrefixes.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])?))', - * // Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the PublicDelegatedPrefix resource to patch. + * publicDelegatedPrefix: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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). * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "backendServices": [], + * // "allocatablePrefixLength": 0, + * // "byoipApiVersion": "my_byoipApiVersion", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "failoverCapacity": "my_failoverCapacity", - * // "failoverInitiation": "my_failoverInitiation", + * // "enableEnhancedIpv4Allocation": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceName": "my_instanceName", + * // "ipCidrRange": "my_ipCidrRange", + * // "ipv6AccessType": "my_ipv6AccessType", + * // "isLiveMigration": false, * // "kind": "my_kind", + * // "mode": "my_mode", * // "name": "my_name", - * // "networkingAutoConfiguration": {}, + * // "networkTier": "my_networkTier", + * // "parentPrefix": "my_parentPrefix", + * // "publicDelegatedSubPrefixs": [], + * // "purpose": "my_purpose", * // "region": "my_region", - * // "secondaryZoneCapacity": "my_secondaryZoneCapacity", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": {}, - * // "zoneConfigurations": {} + * // "status": "my_status" * // } * }, * }); @@ -87495,31 +85605,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Hacontrollers$Patch, + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Hacontrollers$Patch, + params?: Params$Resource$Globalpublicdelegatedprefixes$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Hacontrollers$Patch, + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Hacontrollers$Patch, + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Hacontrollers$Patch, + params: Params$Resource$Globalpublicdelegatedprefixes$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Hacontrollers$Patch + | Params$Resource$Globalpublicdelegatedprefixes$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -87535,12 +85645,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Hacontrollers$Patch; + {}) as Params$Resource$Globalpublicdelegatedprefixes$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hacontrollers$Patch; + params = {} as Params$Resource$Globalpublicdelegatedprefixes$Patch; options = {}; } @@ -87555,7 +85665,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}' + '/compute/alpha/projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -87563,8 +85673,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'haController'], - pathParams: ['haController', 'project', 'region'], + requiredParams: ['project', 'publicDelegatedPrefix'], + pathParams: ['project', 'publicDelegatedPrefix'], context: this.context, }; if (callback) { @@ -87578,212 +85688,70 @@ export namespace compute_alpha { } } - export interface Params$Resource$Hacontrollers$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Hacontrollers$Delete extends StandardParameters { - /** - * Force-deletes HA Controller when the Delete is stuck. Instance that is not - * primary at the moment will also be deleted. Can only be used against the HA - * Controller resource that is already being deleted. - */ - force?: boolean; - /** - * Name of the HaController resource to delete. - */ - haController?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for 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. - */ - requestId?: string; - } - export interface Params$Resource$Hacontrollers$Failover extends StandardParameters { - /** - * ID of the HaController resource to update. - */ - haController?: string; + export interface Params$Resource$Globalpublicdelegatedprefixes$Delete extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region for this request. + * Name of the PublicDelegatedPrefix resource to delete. */ - region?: string; + publicDelegatedPrefix?: 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). */ requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HaControllersFailoverRequest; } - export interface Params$Resource$Hacontrollers$Get extends StandardParameters { - /** - * Name of the HaController resource to return. - */ - haController?: string; + export interface Params$Resource$Globalpublicdelegatedprefixes$Get extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region for this request. + * Name of the PublicDelegatedPrefix resource to return. */ - region?: string; + publicDelegatedPrefix?: string; } - export interface Params$Resource$Hacontrollers$Insert extends StandardParameters { + export interface Params$Resource$Globalpublicdelegatedprefixes$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; - /** - * Name of the region for 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). */ requestId?: string; /** * Request body metadata */ - requestBody?: Schema$HaController; + requestBody?: Schema$PublicDelegatedPrefix; } - export interface Params$Resource$Hacontrollers$List extends StandardParameters { + export interface Params$Resource$Globalpublicdelegatedprefixes$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -87877,10 +85845,6 @@ export namespace compute_alpha { * Project ID for this request. */ project?: string; - /** - * Name of the region for this request. - */ - region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -87891,47 +85855,49 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Hacontrollers$Patch extends StandardParameters { - /** - * ID of the HaController resource to update. - */ - haController?: string; + export interface Params$Resource$Globalpublicdelegatedprefixes$Patch extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name of the region for this request. + * Name of the PublicDelegatedPrefix resource to patch. */ - region?: string; + publicDelegatedPrefix?: 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). */ requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$HaController; + requestBody?: Schema$PublicDelegatedPrefix; } - export class Resource$Healthchecks { + export class Resource$Globalvmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all HealthCheck resources, regional and global, + * Retrieves the list of all VM Extension Policy resources * available to the specified project. * - * To prevent failure, Google recommends that you set the + * To prevent failure, it's recommended that you set the * `returnPartialSuccess` parameter to `true`. * @example * ```js @@ -87965,7 +85931,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.aggregatedList({ + * const res = await compute.globalVmExtensionPolicies.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -88073,6 +86039,7 @@ export namespace compute_alpha { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": {}, * // "kind": "my_kind", @@ -88096,56 +86063,60 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Healthchecks$Aggregatedlist, + params?: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Healthchecks$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Healthchecks$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Aggregatedlist; + {}) as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Aggregatedlist; + params = {} as Params$Resource$Globalvmextensionpolicies$Aggregatedlist; options = {}; } @@ -88160,7 +86131,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/healthChecks' + '/compute/alpha/projects/{project}/aggregated/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -88173,17 +86144,24 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified HealthCheck resource. + * Purge scoped resources (zonal policies) from a global VM extension + * policy, and then delete the global VM extension policy. Purge of the scoped + * resources is a pre-condition of the global VM extension policy deletion. + * The deletion of the global VM extension policy happens after the purge + * rollout is done, so it's not a part of the LRO. It's an automatic process + * that triggers in the backend. * @example * ```js * // Before running the sample: @@ -88215,9 +86193,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.delete({ - * // Name of the HealthCheck resource to delete. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.delete({ + * // Name of the global VM extension policy to purge scoped resources for. + * globalVmExtensionPolicy: '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])?))', @@ -88235,6 +86213,17 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "conflictBehavior": "my_conflictBehavior", + * // "name": "my_name", + * // "predefinedRolloutPlan": "my_predefinedRolloutPlan", + * // "retryUuid": "my_retryUuid" + * // } + * }, * }); * console.log(res.data); * @@ -88284,31 +86273,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Healthchecks$Delete, + params?: Params$Resource$Globalvmextensionpolicies$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Healthchecks$Delete, + params: Params$Resource$Globalvmextensionpolicies$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Healthchecks$Delete + | Params$Resource$Globalvmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -88324,12 +86313,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Delete; + {}) as Params$Resource$Globalvmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Delete; + params = {} as Params$Resource$Globalvmextensionpolicies$Delete; options = {}; } @@ -88344,16 +86333,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/alpha/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}/delete' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { @@ -88367,7 +86356,7 @@ export namespace compute_alpha { } /** - * Returns the specified HealthCheck resource. + * Gets details of a global VM extension policy. * @example * ```js * // Before running the sample: @@ -88400,9 +86389,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.get({ - * // Name of the HealthCheck resource to return. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.get({ + * // Name of the GlobalVmExtensionPolicy resource to return. + * globalVmExtensionPolicy: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -88411,29 +86401,19 @@ export namespace compute_alpha { * * // Example response * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "udpHealthCheck": {}, - * // "unhealthyThreshold": 0 + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -88450,51 +86430,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Healthchecks$Get, + params: Params$Resource$Globalvmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Healthchecks$Get, + params?: Params$Resource$Globalvmextensionpolicies$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Healthchecks$Get, + params: Params$Resource$Globalvmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Healthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Healthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Healthchecks$Get - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Healthchecks$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Get; + params = {} as Params$Resource$Globalvmextensionpolicies$Get; options = {}; } @@ -88509,7 +86492,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/alpha/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -88517,23 +86500,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HealthCheck resource in the specified project using the data - * included in the request. + * Retrieves details of a specific VM extension. * @example * ```js * // Before running the sample: @@ -88557,6 +86539,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -88565,7 +86548,152 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.insert({ + * const res = await compute.globalVmExtensionPolicies.getVmExtension({ + * extensionName: '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])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "name": "my_name", + * // "versions": [] + * // } + * } + * + * 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. + */ + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options: StreamMethodOptions + ): Promise>; + getVmExtension( + params?: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options?: MethodOptions + ): Promise>; + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getVmExtension( + params: Params$Resource$Globalvmextensionpolicies$Getvmextension, + callback: BodyResponseCallback + ): void; + getVmExtension( + callback: BodyResponseCallback + ): void; + getVmExtension( + paramsOrCallback?: + | Params$Resource$Globalvmextensionpolicies$Getvmextension + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Globalvmextensionpolicies$Getvmextension; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Globalvmextensionpolicies$Getvmextension; + 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}/global/vmExtensions/{extensionName}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'extensionName'], + pathParams: ['extensionName', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new project level GlobalVmExtensionPolicy. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.globalVmExtensionPolicies.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])?))', @@ -88588,29 +86716,19 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "udpHealthCheck": {}, - * // "unhealthyThreshold": 0 + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -88662,31 +86780,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Healthchecks$Insert, + params?: Params$Resource$Globalvmextensionpolicies$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Healthchecks$Insert, + params: Params$Resource$Globalvmextensionpolicies$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Healthchecks$Insert + | Params$Resource$Globalvmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -88702,12 +86820,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Insert; + {}) as Params$Resource$Globalvmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Insert; + params = {} as Params$Resource$Globalvmextensionpolicies$Insert; options = {}; } @@ -88721,7 +86839,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/healthChecks' + rootUrl + + '/compute/alpha/projects/{project}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -88744,8 +86863,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of HealthCheck resources available to the specified - * project. + * Lists global VM extension policies. * @example * ```js * // Before running the sample: @@ -88778,7 +86896,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.list({ + * const res = await compute.globalVmExtensionPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -88875,11 +86993,13 @@ export namespace compute_alpha { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -88897,52 +87017,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Healthchecks$List, + params: Params$Resource$Globalvmextensionpolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Healthchecks$List, + params?: Params$Resource$Globalvmextensionpolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Healthchecks$List, + params: Params$Resource$Globalvmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Healthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Healthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Globalvmextensionpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Healthchecks$List - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$List; + {}) as Params$Resource$Globalvmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$List; + params = {} as Params$Resource$Globalvmextensionpolicies$List; options = {}; } @@ -88956,7 +87080,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/healthChecks' + rootUrl + + '/compute/alpha/projects/{project}/global/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -88969,20 +87094,18 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Lists all VM extensions within a specific zone for a project. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -89006,6 +87129,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -89014,241 +87138,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.patch({ - * // Name of the HealthCheck resource to patch. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. + * const res = await compute.globalVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Required. 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "logConfig": {}, - * // "name": "my_name", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "udpHealthCheck": {}, - * // "unhealthyThreshold": 0 - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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$Healthchecks$Patch, - options: StreamMethodOptions - ): Promise>; - patch( - params?: Params$Resource$Healthchecks$Patch, - options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Healthchecks$Patch, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Healthchecks$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - patch( - params: Params$Resource$Healthchecks$Patch, - callback: BodyResponseCallback - ): void; - patch(callback: BodyResponseCallback): void; - patch( - paramsOrCallback?: - | Params$Resource$Healthchecks$Patch - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Patch; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$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/alpha/projects/{project}/global/healthChecks/{healthCheck}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], - 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.healthChecks.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])?))', - * // 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": [] + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -89264,57 +87258,58 @@ export namespace compute_alpha { * @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$Healthchecks$Testiampermissions, + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Healthchecks$Testiampermissions, + listVmExtensions( + params?: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, + ): Promise>; + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Healthchecks$Testiampermissions, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Globalvmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + listVmExtensions( + callback: BodyResponseCallback ): void; - testIamPermissions( + listVmExtensions( paramsOrCallback?: - | Params$Resource$Healthchecks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Globalvmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Testiampermissions; + {}) as Params$Resource$Globalvmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Testiampermissions; + params = + {} as Params$Resource$Globalvmextensionpolicies$Listvmextensions; options = {}; } @@ -89328,32 +87323,32 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/healthChecks/{resource}/testIamPermissions' + rootUrl + '/compute/alpha/projects/{project}/global/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates a HealthCheck resource in the specified project using the data - * included in the request. + * Updates a global VM extension policy. * @example * ```js * // Before running the sample: @@ -89385,9 +87380,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.healthChecks.update({ - * // Name of the HealthCheck resource to update. - * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.globalVmExtensionPolicies.update({ + * // Name of the global VM extension policy to update. + * globalVmExtensionPolicy: '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])?))', @@ -89410,29 +87405,19 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "grpcHealthCheck": {}, - * // "grpcTlsHealthCheck": {}, - * // "healthyThreshold": 0, - * // "http2HealthCheck": {}, - * // "httpHealthCheck": {}, - * // "httpsHealthCheck": {}, + * // "extensionPolicies": {}, * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "logConfig": {}, * // "name": "my_name", - * // "region": "my_region", + * // "priority": 0, + * // "rolloutOperation": {}, + * // "scopedResourceStatus": "my_scopedResourceStatus", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceRegions": [], - * // "sslHealthCheck": {}, - * // "tcpHealthCheck": {}, - * // "timeoutSec": 0, - * // "type": "my_type", - * // "udpHealthCheck": {}, - * // "unhealthyThreshold": 0 + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -89484,31 +87469,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Healthchecks$Update, + params?: Params$Resource$Globalvmextensionpolicies$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Healthchecks$Update, + params: Params$Resource$Globalvmextensionpolicies$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Healthchecks$Update + | Params$Resource$Globalvmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -89524,12 +87509,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Healthchecks$Update; + {}) as Params$Resource$Globalvmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Healthchecks$Update; + params = {} as Params$Resource$Globalvmextensionpolicies$Update; options = {}; } @@ -89544,16 +87529,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' + '/compute/alpha/projects/{project}/global/vmExtensionPolicies/{globalVmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'healthCheck'], - pathParams: ['healthCheck', 'project'], + requiredParams: ['project', 'globalVmExtensionPolicy'], + pathParams: ['globalVmExtensionPolicy', 'project'], context: this.context, }; if (callback) { @@ -89567,7 +87552,7 @@ export namespace compute_alpha { } } - export interface Params$Resource$Healthchecks$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -89686,11 +87671,11 @@ export namespace compute_alpha { */ serviceProjectNumber?: string; } - export interface Params$Resource$Healthchecks$Delete extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Delete extends StandardParameters { /** - * Name of the HealthCheck resource to delete. + * Name of the global VM extension policy to purge scoped resources for. */ - healthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ @@ -89711,18 +87696,33 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalVmExtensionPolicyRolloutOperationRolloutInput; } - export interface Params$Resource$Healthchecks$Get extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Get extends StandardParameters { /** - * Name of the HealthCheck resource to return. + * Name of the GlobalVmExtensionPolicy resource to return. */ - healthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Healthchecks$Insert extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Getvmextension extends StandardParameters { + /** + * + */ + extensionName?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Globalvmextensionpolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -89747,9 +87747,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export interface Params$Resource$Healthchecks$List extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -89853,57 +87853,115 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Healthchecks$Patch extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Listvmextensions extends StandardParameters { /** - * Name of the HealthCheck resource to patch. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - healthCheck?: string; + filter?: string; /** - * Project ID for this request. + * 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`) */ - project?: string; + maxResults?: number; /** - * 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. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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. + * 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. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestId?: string; - + orderBy?: string; /** - * Request body metadata + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - requestBody?: Schema$HealthCheck; - } - export interface Params$Resource$Healthchecks$Testiampermissions extends StandardParameters { + pageToken?: string; /** - * Project ID for this request. + * Required. Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestBody?: Schema$TestPermissionsRequest; + returnPartialSuccess?: boolean; } - export interface Params$Resource$Healthchecks$Update extends StandardParameters { + export interface Params$Resource$Globalvmextensionpolicies$Update extends StandardParameters { /** - * Name of the HealthCheck resource to update. + * Name of the global VM extension policy to update. */ - healthCheck?: string; + globalVmExtensionPolicy?: string; /** * Project ID for this request. */ @@ -89928,17 +87986,18 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$HealthCheck; + requestBody?: Schema$GlobalVmExtensionPolicy; } - export class Resource$Hosts { + export class Resource$Hacontrollers { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves information about the specified host. + * Retrieves an aggregated list of all of the HaControllers in the specified + * project across all regions. * @example * ```js * // Before running the sample: @@ -89971,36 +88030,122 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.hosts.get({ - * // The parent resource association for the Host. This field specifies the - * // hierarchical context (e.g., reservation, block, sub-block) when - * // accessing the host. For example, reservations/reservation_name, - * // reservations/reservation_name/reservationBlocks/reservation_block_name or - * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - * association: 'placeholder-value', - * // The name of the host, formatted as RFC1035 or a resource ID - * // number. - * host: 'placeholder-value', - * // The project ID for this request. - * project: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', + * const res = await compute.haControllers.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "aliasLinks": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", + * // "etag": "my_etag", * // "id": "my_id", + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -90016,52 +88161,57 @@ export namespace compute_alpha { * @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$Hosts$Get, + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Hosts$Get, + aggregatedList( + params?: Params$Resource$Hacontrollers$Aggregatedlist, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Hosts$Get, + ): Promise>; + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Hosts$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Hosts$Get, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Hacontrollers$Aggregatedlist, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Hosts$Get - | BodyResponseCallback + | Params$Resource$Hacontrollers$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Hacontrollers$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hosts$Get; + params = {} as Params$Resource$Hacontrollers$Aggregatedlist; options = {}; } @@ -90076,7 +88226,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts/{host}' + '/compute/alpha/projects/{project}/aggregated/haControllers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -90084,22 +88234,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'association', 'host'], - pathParams: ['association', 'host', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Allows customers to get SBOM versions of a host. + * Deletes an HaController in the specified project. * @example * ```js * // Before running the sample: @@ -90131,30 +88281,22 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.hosts.getVersion({ - * // The parent resource association for the Host. This field specifies the - * // hierarchical context (e.g., reservation, block, sub-block) when - * // accessing the host. - * association: 'placeholder-value', - * // The name of the host, formatted as RFC1035 or a resource ID - * // number. - * host: 'placeholder-value', + * const res = await compute.haControllers.delete({ + * // Force-deletes HA Controller when the Delete is stuck. Instance that is not + * // primary at the moment will also be deleted. Can only be used against the HA + * // Controller resource that is already being deleted. + * force: 'placeholder-value', + * // Name of the HaController resource to delete. + * haController: 'placeholder-value', * // Project ID for this request. - * project: 'placeholder-value', + * 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 for 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. * requestId: 'placeholder-value', - * // Name of the zone for this request. Zone name should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "sbomSelections": [] - * // } - * }, * }); * console.log(res.data); * @@ -90203,32 +88345,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getVersion( - params: Params$Resource$Hosts$Getversion, + delete( + params: Params$Resource$Hacontrollers$Delete, options: StreamMethodOptions ): Promise>; - getVersion( - params?: Params$Resource$Hosts$Getversion, + delete( + params?: Params$Resource$Hacontrollers$Delete, options?: MethodOptions ): Promise>; - getVersion( - params: Params$Resource$Hosts$Getversion, + delete( + params: Params$Resource$Hacontrollers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getVersion( - params: Params$Resource$Hosts$Getversion, + delete( + params: Params$Resource$Hacontrollers$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getVersion( - params: Params$Resource$Hosts$Getversion, + delete( + params: Params$Resource$Hacontrollers$Delete, callback: BodyResponseCallback ): void; - getVersion(callback: BodyResponseCallback): void; - getVersion( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Hosts$Getversion + | Params$Resource$Hacontrollers$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -90243,12 +88385,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Getversion; + let params = (paramsOrCallback || + {}) as Params$Resource$Hacontrollers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Hosts$Getversion; + params = {} as Params$Resource$Hacontrollers$Delete; options = {}; } @@ -90263,16 +88406,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion' + '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'association', 'host'], - pathParams: ['association', 'host', 'project', 'zone'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { @@ -90286,7 +88429,8 @@ export namespace compute_alpha { } /** - * Retrieves a list of hosts. + * Fails over a VM targeted by the specified HaController to the selected + * zone. * @example * ```js * // Before running the sample: @@ -90310,7 +88454,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -90319,118 +88462,59 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.hosts.list({ - * // The parent resource association for the Host. This field specifies the - * // hierarchical context (e.g., reservation, block, sub-block) when - * // accessing the host. For example, reservations/reservation_name, - * // reservations/reservation_name/reservationBlocks/reservation_block_name or - * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - * association: 'placeholder-value', - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // The project ID for this request. - * project: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request, formatted as RFC1035. - * zone: 'placeholder-value', + * const res = await compute.haControllers.failover({ + * // ID of the HaController resource to update. + * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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 for 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. + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "failoverToZone": "my_failoverToZone" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -90446,394 +88530,32 @@ export namespace compute_alpha { * @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$Hosts$List, + failover( + params: Params$Resource$Hacontrollers$Failover, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Hosts$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Hosts$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Hosts$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Hosts$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Hosts$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Hosts$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Hosts$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/alpha/projects/{project}/zones/{zone}/{association}/hosts' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'association'], - pathParams: ['association', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Hosts$Get extends StandardParameters { - /** - * The parent resource association for the Host. This field specifies the - * hierarchical context (e.g., reservation, block, sub-block) when - * accessing the host. For example, reservations/reservation_name, - * reservations/reservation_name/reservationBlocks/reservation_block_name or - * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - */ - association?: string; - /** - * The name of the host, formatted as RFC1035 or a resource ID - * number. - */ - host?: string; - /** - * The project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Hosts$Getversion extends StandardParameters { - /** - * The parent resource association for the Host. This field specifies the - * hierarchical context (e.g., reservation, block, sub-block) when - * accessing the host. - */ - association?: string; - /** - * The name of the host, formatted as RFC1035 or a resource ID - * number. - */ - host?: string; - /** - * Project ID for this request. - */ - project?: 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. - */ - requestId?: string; - /** - * Name of the zone for this request. Zone name should conform to RFC1035. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HostsGetVersionRequest; - } - export interface Params$Resource$Hosts$List extends StandardParameters { - /** - * The parent resource association for the Host. This field specifies the - * hierarchical context (e.g., reservation, block, sub-block) when - * accessing the host. For example, reservations/reservation_name, - * reservations/reservation_name/reservationBlocks/reservation_block_name or - * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. - */ - association?: string; - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * The project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of the zone for this request, formatted as RFC1035. - */ - zone?: string; - } - - export class Resource$Httphealthchecks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Deletes the specified HttpHealthCheck 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.httpHealthChecks.delete({ - * // Name of the HttpHealthCheck resource to delete. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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$Httphealthchecks$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Httphealthchecks$Delete, + failover( + params?: Params$Resource$Hacontrollers$Failover, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Httphealthchecks$Delete, + failover( + params: Params$Resource$Hacontrollers$Failover, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Httphealthchecks$Delete, + failover( + params: Params$Resource$Hacontrollers$Failover, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Httphealthchecks$Delete, + failover( + params: Params$Resource$Hacontrollers$Failover, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + failover(callback: BodyResponseCallback): void; + failover( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Delete + | Params$Resource$Hacontrollers$Failover | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -90849,12 +88571,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Delete; + {}) as Params$Resource$Hacontrollers$Failover; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Delete; + params = {} as Params$Resource$Hacontrollers$Failover; options = {}; } @@ -90869,16 +88591,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}/failover' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { @@ -90892,7 +88614,7 @@ export namespace compute_alpha { } /** - * Returns the specified HttpHealthCheck resource. + * Returns all the details of a specific HaController. * @example * ```js * // Before running the sample: @@ -90925,31 +88647,35 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.get({ - * // Name of the HttpHealthCheck resource to return. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.haControllers.get({ + * // Name of the HaController resource to return. + * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "checkIntervalSec": 0, + * // "backendServices": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "failoverCapacity": "my_failoverCapacity", + * // "failoverInitiation": "my_failoverInitiation", * // "id": "my_id", + * // "instanceName": "my_instanceName", * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "networkingAutoConfiguration": {}, + * // "region": "my_region", + * // "secondaryZoneCapacity": "my_secondaryZoneCapacity", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "status": {}, + * // "zoneConfigurations": {} * // } * } * @@ -90966,52 +88692,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Hacontrollers$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Httphealthchecks$Get, + params?: Params$Resource$Hacontrollers$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Httphealthchecks$Get, + params: Params$Resource$Hacontrollers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hacontrollers$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httphealthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Hacontrollers$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Get - | BodyResponseCallback + | Params$Resource$Hacontrollers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Get; + {}) as Params$Resource$Hacontrollers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Get; + params = {} as Params$Resource$Hacontrollers$Get; options = {}; } @@ -91026,7 +88752,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -91034,23 +88760,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpHealthCheck resource in the specified project using the data - * included in the request. + * Creates HaController in the specified project. * @example * ```js * // Before running the sample: @@ -91082,43 +88807,37 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.insert({ + * const res = await compute.haControllers.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 for 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). * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, + * // "backendServices": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "failoverCapacity": "my_failoverCapacity", + * // "failoverInitiation": "my_failoverInitiation", * // "id": "my_id", + * // "instanceName": "my_instanceName", * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "networkingAutoConfiguration": {}, + * // "region": "my_region", + * // "secondaryZoneCapacity": "my_secondaryZoneCapacity", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "status": {}, + * // "zoneConfigurations": {} * // } * }, * }); @@ -91170,31 +88889,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Hacontrollers$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Httphealthchecks$Insert, + params?: Params$Resource$Hacontrollers$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Hacontrollers$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Hacontrollers$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httphealthchecks$Insert, + params: Params$Resource$Hacontrollers$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Insert + | Params$Resource$Hacontrollers$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -91210,12 +88929,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Insert; + {}) as Params$Resource$Hacontrollers$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Insert; + params = {} as Params$Resource$Hacontrollers$Insert; options = {}; } @@ -91230,7 +88949,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks' + '/compute/alpha/projects/{project}/regions/{region}/haControllers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -91238,8 +88957,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -91253,8 +88972,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of HttpHealthCheck resources available to the specified - * project. + * Lists all HaControllers in the specified project in the specified region. * @example * ```js * // Before running the sample: @@ -91287,7 +89005,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.list({ + * const res = await compute.haControllers.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -91372,6 +89090,8 @@ export namespace compute_alpha { * // 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 for 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. * // @@ -91384,11 +89104,12 @@ export namespace compute_alpha { * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], - * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -91406,52 +89127,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Hacontrollers$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Httphealthchecks$List, + params?: Params$Resource$Hacontrollers$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Httphealthchecks$List, + params: Params$Resource$Hacontrollers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hacontrollers$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httphealthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Hacontrollers$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Httphealthchecks$List - | BodyResponseCallback + | Params$Resource$Hacontrollers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$List; + {}) as Params$Resource$Hacontrollers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$List; + params = {} as Params$Resource$Hacontrollers$List; options = {}; } @@ -91466,7 +89187,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks' + '/compute/alpha/projects/{project}/regions/{region}/haControllers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -91474,25 +89195,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpHealthCheck resource in the specified project using the data - * included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Updates HaController in the specified project. * @example * ```js * // Before running the sample: @@ -91524,45 +89242,41 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.patch({ - * // Name of the HttpHealthCheck resource to patch. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.haControllers.patch({ + * // ID of the HaController resource to update. + * haController: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 for 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). * requestId: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "checkIntervalSec": 0, + * // "backendServices": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", + * // "failoverCapacity": "my_failoverCapacity", + * // "failoverInitiation": "my_failoverInitiation", * // "id": "my_id", + * // "instanceName": "my_instanceName", * // "kind": "my_kind", * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "networkingAutoConfiguration": {}, + * // "region": "my_region", + * // "secondaryZoneCapacity": "my_secondaryZoneCapacity", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 + * // "status": {}, + * // "zoneConfigurations": {} * // } * }, * }); @@ -91614,31 +89328,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Hacontrollers$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Httphealthchecks$Patch, + params?: Params$Resource$Hacontrollers$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Hacontrollers$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Hacontrollers$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httphealthchecks$Patch, + params: Params$Resource$Hacontrollers$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Patch + | Params$Resource$Hacontrollers$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -91654,12 +89368,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Patch; + {}) as Params$Resource$Hacontrollers$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Patch; + params = {} as Params$Resource$Hacontrollers$Patch; options = {}; } @@ -91674,7 +89388,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/alpha/projects/{project}/regions/{region}/haControllers/{haController}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -91682,8 +89396,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project', 'region', 'haController'], + pathParams: ['haController', 'project', 'region'], context: this.context, }; if (callback) { @@ -91695,9 +89409,363 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Hacontrollers$Aggregatedlist extends StandardParameters { /** - * Returns permissions that a caller has on the specified resource. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Hacontrollers$Delete extends StandardParameters { + /** + * Force-deletes HA Controller when the Delete is stuck. Instance that is not + * primary at the moment will also be deleted. Can only be used against the HA + * Controller resource that is already being deleted. + */ + force?: boolean; + /** + * Name of the HaController resource to delete. + */ + haController?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for 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. + */ + requestId?: string; + } + export interface Params$Resource$Hacontrollers$Failover extends StandardParameters { + /** + * ID of the HaController resource to update. + */ + haController?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for 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. + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HaControllersFailoverRequest; + } + export interface Params$Resource$Hacontrollers$Get extends StandardParameters { + /** + * Name of the HaController resource to return. + */ + haController?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Hacontrollers$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for 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. + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HaController; + } + export interface Params$Resource$Hacontrollers$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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 for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Hacontrollers$Patch extends StandardParameters { + /** + * ID of the HaController resource to update. + */ + haController?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for 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. + */ + requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HaController; + } + + export class Resource$Healthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all HealthCheck resources, regional and global, + * available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -91730,236 +89798,121 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpHealthChecks.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])?))', - * // 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$Httphealthchecks$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Httphealthchecks$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Httphealthchecks$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Httphealthchecks$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$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/alpha/projects/{project}/global/httpHealthChecks/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates a HttpHealthCheck resource in the specified project using the data - * 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.httpHealthChecks.update({ - * // Name of the HttpHealthCheck resource to update. - * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Project ID for this request. + * const res = await compute.healthChecks.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "checkIntervalSec": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "healthyThreshold": 0, - * // "host": "my_host", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "timeoutSec": 0, - * // "unhealthyThreshold": 0 - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -91975,53 +89928,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Httphealthchecks$Update, + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Httphealthchecks$Update, + aggregatedList( + params?: Params$Resource$Healthchecks$Aggregatedlist, options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Httphealthchecks$Update, + ): Promise>; + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Httphealthchecks$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Httphealthchecks$Update, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Healthchecks$Aggregatedlist, + callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Httphealthchecks$Update - | BodyResponseCallback + | Params$Resource$Healthchecks$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httphealthchecks$Update; + {}) as Params$Resource$Healthchecks$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httphealthchecks$Update; + params = {} as Params$Resource$Healthchecks$Aggregatedlist; options = {}; } @@ -92036,282 +89993,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' + '/compute/alpha/projects/{project}/aggregated/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'httpHealthCheck'], - pathParams: ['httpHealthCheck', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Httphealthchecks$Delete extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to delete. - */ - httpHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - } - export interface Params$Resource$Httphealthchecks$Get extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to return. - */ - httpHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Httphealthchecks$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HttpHealthCheck; - } - export interface Params$Resource$Httphealthchecks$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Httphealthchecks$Patch extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to patch. - */ - httpHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HttpHealthCheck; - } - export interface Params$Resource$Httphealthchecks$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Httphealthchecks$Update extends StandardParameters { - /** - * Name of the HttpHealthCheck resource to update. - */ - httpHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HttpHealthCheck; - } - - export class Resource$Httpshealthchecks { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified HttpsHealthCheck resource. + * Deletes the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -92343,9 +90048,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.delete({ - * // Name of the HttpsHealthCheck resource to delete. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.delete({ + * // Name of the HealthCheck resource to delete. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -92412,31 +90117,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Httpshealthchecks$Delete, + params?: Params$Resource$Healthchecks$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Httpshealthchecks$Delete, + params: Params$Resource$Healthchecks$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Delete + | Params$Resource$Healthchecks$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -92452,12 +90157,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Delete; + {}) as Params$Resource$Healthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Delete; + params = {} as Params$Resource$Healthchecks$Delete; options = {}; } @@ -92472,7 +90177,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -92480,8 +90185,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -92495,7 +90200,7 @@ export namespace compute_alpha { } /** - * Returns the specified HttpsHealthCheck resource. + * Returns the specified HealthCheck resource. * @example * ```js * // Before running the sample: @@ -92528,9 +90233,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.get({ - * // Name of the HttpsHealthCheck resource to return. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.get({ + * // Name of the HealthCheck resource to return. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -92542,16 +90247,25 @@ export namespace compute_alpha { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", + * // "udpHealthCheck": {}, * // "unhealthyThreshold": 0 * // } * } @@ -92569,52 +90283,51 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Httpshealthchecks$Get, + params: Params$Resource$Healthchecks$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Httpshealthchecks$Get, + params?: Params$Resource$Healthchecks$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Httpshealthchecks$Get, + params: Params$Resource$Healthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httpshealthchecks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Httpshealthchecks$Get, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Get - | BodyResponseCallback + | Params$Resource$Healthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Healthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Get; + params = {} as Params$Resource$Healthchecks$Get; options = {}; } @@ -92629,7 +90342,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -92637,22 +90350,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a HttpsHealthCheck resource in the specified project using the data + * Creates a HealthCheck resource in the specified project using the data * included in the request. * @example * ```js @@ -92685,7 +90398,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.insert({ + * const res = await compute.healthChecks.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])?))', @@ -92711,16 +90424,25 @@ export namespace compute_alpha { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", + * // "udpHealthCheck": {}, * // "unhealthyThreshold": 0 * // } * }, @@ -92773,31 +90495,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Httpshealthchecks$Insert, + params?: Params$Resource$Healthchecks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Httpshealthchecks$Insert, + params: Params$Resource$Healthchecks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Insert + | Params$Resource$Healthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -92813,12 +90535,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Insert; + {}) as Params$Resource$Healthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Insert; + params = {} as Params$Resource$Healthchecks$Insert; options = {}; } @@ -92832,8 +90554,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks' + rootUrl + '/compute/alpha/projects/{project}/global/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -92856,7 +90577,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of HttpsHealthCheck resources available to the specified + * Retrieves the list of HealthCheck resources available to the specified * project. * @example * ```js @@ -92890,7 +90611,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.list({ + * const res = await compute.healthChecks.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -93009,54 +90730,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Httpshealthchecks$List, + params: Params$Resource$Healthchecks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Httpshealthchecks$List, + params?: Params$Resource$Healthchecks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Httpshealthchecks$List, + params: Params$Resource$Healthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httpshealthchecks$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Httpshealthchecks$List, - callback: BodyResponseCallback + params: Params$Resource$Healthchecks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$List - | BodyResponseCallback + | Params$Resource$Healthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$List; + {}) as Params$Resource$Healthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$List; + params = {} as Params$Resource$Healthchecks$List; options = {}; } @@ -93070,8 +90789,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks' + rootUrl + '/compute/alpha/projects/{project}/global/healthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -93084,17 +90802,17 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a HttpsHealthCheck resource in the specified project using the data + * Updates a HealthCheck resource in the specified project using the data * included in the request. This method supportsPATCH * semantics and uses theJSON merge * patch format and processing rules. @@ -93129,9 +90847,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.patch({ - * // Name of the HttpsHealthCheck resource to patch. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.patch({ + * // Name of the HealthCheck resource to patch. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -93157,16 +90875,25 @@ export namespace compute_alpha { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", + * // "udpHealthCheck": {}, * // "unhealthyThreshold": 0 * // } * }, @@ -93219,31 +90946,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Httpshealthchecks$Patch, + params?: Params$Resource$Healthchecks$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Httpshealthchecks$Patch, + params: Params$Resource$Healthchecks$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Patch + | Params$Resource$Healthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -93259,12 +90986,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Patch; + {}) as Params$Resource$Healthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Patch; + params = {} as Params$Resource$Healthchecks$Patch; options = {}; } @@ -93279,7 +91006,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -93287,8 +91014,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -93335,7 +91062,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.testIamPermissions({ + * const res = await compute.healthChecks.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])?))', @@ -93371,27 +91098,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Httpshealthchecks$Testiampermissions, + params?: Params$Resource$Healthchecks$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Httpshealthchecks$Testiampermissions, + params: Params$Resource$Healthchecks$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -93399,7 +91126,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Testiampermissions + | Params$Resource$Healthchecks$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -93415,12 +91142,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Testiampermissions; + {}) as Params$Resource$Healthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Testiampermissions; + params = {} as Params$Resource$Healthchecks$Testiampermissions; options = {}; } @@ -93435,7 +91162,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/healthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -93458,7 +91185,7 @@ export namespace compute_alpha { } /** - * Updates a HttpsHealthCheck resource in the specified project using the data + * Updates a HealthCheck resource in the specified project using the data * included in the request. * @example * ```js @@ -93491,9 +91218,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.httpsHealthChecks.update({ - * // Name of the HttpsHealthCheck resource to update. - * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.healthChecks.update({ + * // Name of the HealthCheck resource to update. + * healthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -93519,16 +91246,25 @@ export namespace compute_alpha { * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "grpcHealthCheck": {}, + * // "grpcTlsHealthCheck": {}, * // "healthyThreshold": 0, - * // "host": "my_host", + * // "http2HealthCheck": {}, + * // "httpHealthCheck": {}, + * // "httpsHealthCheck": {}, * // "id": "my_id", * // "kind": "my_kind", + * // "logConfig": {}, * // "name": "my_name", - * // "port": 0, - * // "requestPath": "my_requestPath", + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceRegions": [], + * // "sslHealthCheck": {}, + * // "tcpHealthCheck": {}, * // "timeoutSec": 0, + * // "type": "my_type", + * // "udpHealthCheck": {}, * // "unhealthyThreshold": 0 * // } * }, @@ -93581,31 +91317,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Healthchecks$Update, options: StreamMethodOptions ): Promise>; update( - params?: Params$Resource$Httpshealthchecks$Update, + params?: Params$Resource$Healthchecks$Update, options?: MethodOptions ): Promise>; update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Healthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Healthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; update( - params: Params$Resource$Httpshealthchecks$Update, + params: Params$Resource$Healthchecks$Update, callback: BodyResponseCallback ): void; update(callback: BodyResponseCallback): void; update( paramsOrCallback?: - | Params$Resource$Httpshealthchecks$Update + | Params$Resource$Healthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -93621,12 +91357,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Httpshealthchecks$Update; + {}) as Params$Resource$Healthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Httpshealthchecks$Update; + params = {} as Params$Resource$Healthchecks$Update; options = {}; } @@ -93641,7 +91377,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' + '/compute/alpha/projects/{project}/global/healthChecks/{healthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PUT', apiVersion: '', @@ -93649,8 +91385,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'httpsHealthCheck'], - pathParams: ['httpsHealthCheck', 'project'], + requiredParams: ['project', 'healthCheck'], + pathParams: ['healthCheck', 'project'], context: this.context, }; if (callback) { @@ -93664,70 +91400,7 @@ export namespace compute_alpha { } } - export interface Params$Resource$Httpshealthchecks$Delete extends StandardParameters { - /** - * Name of the HttpsHealthCheck resource to delete. - */ - httpsHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - } - export interface Params$Resource$Httpshealthchecks$Get extends StandardParameters { - /** - * Name of the HttpsHealthCheck resource to return. - */ - httpsHealthCheck?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Httpshealthchecks$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$HttpsHealthCheck; - } - export interface Params$Resource$Httpshealthchecks$List extends StandardParameters { + export interface Params$Resource$Healthchecks$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -93789,6 +91462,16 @@ export namespace compute_alpha { * expressions. */ 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`, @@ -93818,7 +91501,7 @@ export namespace compute_alpha { */ pageToken?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: string; /** @@ -93830,12 +91513,17 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; } - export interface Params$Resource$Httpshealthchecks$Patch extends StandardParameters { + export interface Params$Resource$Healthchecks$Delete extends StandardParameters { /** - * Name of the HttpsHealthCheck resource to patch. + * Name of the HealthCheck resource to delete. */ - httpsHealthCheck?: string; + healthCheck?: string; /** * Project ID for this request. */ @@ -93856,32 +91544,18 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - + } + export interface Params$Resource$Healthchecks$Get extends StandardParameters { /** - * Request body metadata + * Name of the HealthCheck resource to return. */ - requestBody?: Schema$HttpsHealthCheck; - } - export interface Params$Resource$Httpshealthchecks$Testiampermissions extends StandardParameters { + healthCheck?: string; /** * Project ID for this request. */ project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Httpshealthchecks$Update extends StandardParameters { - /** - * Name of the HttpsHealthCheck resource to update. - */ - httpsHealthCheck?: string; + export interface Params$Resource$Healthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -93906,20 +91580,200 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$HttpsHealthCheck; + requestBody?: Schema$HealthCheck; } - - export class Resource$Imagefamilyviews { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - + export interface Params$Resource$Healthchecks$List extends StandardParameters { /** - * Returns the latest image that is part of an image family, is not - * deprecated and is rolled out in the specified zone. - * @example - * ```js + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Healthchecks$Patch extends StandardParameters { + /** + * Name of the HealthCheck resource to patch. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + export interface Params$Resource$Healthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Healthchecks$Update extends StandardParameters { + /** + * Name of the HealthCheck resource to update. + */ + healthCheck?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HealthCheck; + } + + export class Resource$Hosts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves information about the specified host. + * @example + * ```js * // Before running the sample: * // - Enable the API at: * // https://console.developers.google.com/apis/api/compute.googleapis.com @@ -93950,20 +91804,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageFamilyViews.get({ - * // Name of the image family to search for. - * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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 zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.hosts.get({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. For example, reservations/reservation_name, + * // reservations/reservation_name/reservationBlocks/reservation_block_name or + * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + * association: 'placeholder-value', + * // The name of the host, formatted as RFC1035 or a resource ID + * // number. + * host: 'placeholder-value', + * // The project ID for this request. + * project: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "image": {} + * // "aliasLinks": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" * // } * } * @@ -93980,52 +91850,51 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Imagefamilyviews$Get, + params: Params$Resource$Hosts$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Imagefamilyviews$Get, + params?: Params$Resource$Hosts$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Imagefamilyviews$Get, + params: Params$Resource$Hosts$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Imagefamilyviews$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Hosts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Imagefamilyviews$Get, - callback: BodyResponseCallback + params: Params$Resource$Hosts$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Imagefamilyviews$Get - | BodyResponseCallback + | Params$Resource$Hosts$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Imagefamilyviews$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imagefamilyviews$Get; + params = {} as Params$Resource$Hosts$Get; options = {}; } @@ -94040,7 +91909,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/imageFamilyViews/{family}' + '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts/{host}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -94048,44 +91917,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'family'], - pathParams: ['family', 'project', 'zone'], + requiredParams: ['project', 'zone', 'association', 'host'], + pathParams: ['association', 'host', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Imagefamilyviews$Get extends StandardParameters { - /** - * Name of the image family to search for. - */ - family?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - - export class Resource$Images { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified image. + * Allows customers to get SBOM versions of a host. * @example * ```js * // Before running the sample: @@ -94117,26 +91964,30 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.delete({ - * // Name of the image resource to delete. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.hosts.getVersion({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. + * association: 'placeholder-value', + * // The name of the host, formatted as RFC1035 or a resource ID + * // number. + * host: '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])?))', + * project: '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). * requestId: 'placeholder-value', + * // Name of the zone for this request. Zone name should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "sbomSelections": [] + * // } + * }, * }); * console.log(res.data); * @@ -94185,32 +92036,32 @@ export namespace compute_alpha { * @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$Images$Delete, + getVersion( + params: Params$Resource$Hosts$Getversion, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Images$Delete, + getVersion( + params?: Params$Resource$Hosts$Getversion, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Images$Delete, + getVersion( + params: Params$Resource$Hosts$Getversion, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Images$Delete, + getVersion( + params: Params$Resource$Hosts$Getversion, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Images$Delete, + getVersion( + params: Params$Resource$Hosts$Getversion, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + getVersion(callback: BodyResponseCallback): void; + getVersion( paramsOrCallback?: - | Params$Resource$Images$Delete + | Params$Resource$Hosts$Getversion | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -94225,12 +92076,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$Getversion; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Delete; + params = {} as Params$Resource$Hosts$Getversion; options = {}; } @@ -94245,16 +92096,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/{image}' + '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts/{host}/getVersion' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'zone', 'association', 'host'], + pathParams: ['association', 'host', 'project', 'zone'], context: this.context, }; if (callback) { @@ -94268,9 +92119,7 @@ export namespace compute_alpha { } /** - * Sets the deprecation status of an image. - * - * If an empty request body is given, clears the deprecation status instead. + * Retrieves a list of hosts. * @example * ```js * // Before running the sample: @@ -94294,6 +92143,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -94302,72 +92152,118 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.deprecate({ - * // Image name. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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. + * const res = await compute.hosts.list({ + * // The parent resource association for the Host. This field specifies the + * // hierarchical context (e.g., reservation, block, sub-block) when + * // accessing the host. For example, reservations/reservation_name, + * // reservations/reservation_name/reservationBlocks/reservation_block_name or + * // reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + * association: 'placeholder-value', + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. * // - * // For example, consider a situation where you make an initial request and - * // the request times out. If you make the request again with the same - * // request ID, the server can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "deleted": "my_deleted", - * // "deprecated": "my_deprecated", - * // "obsolete": "my_obsolete", - * // "replacement": "my_replacement", - * // "state": "my_state", - * // "stateOverride": {} - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // The project ID for this request. + * project: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request, formatted as RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -94383,52 +92279,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deprecate( - params: Params$Resource$Images$Deprecate, + list( + params: Params$Resource$Hosts$List, options: StreamMethodOptions ): Promise>; - deprecate( - params?: Params$Resource$Images$Deprecate, + list( + params?: Params$Resource$Hosts$List, options?: MethodOptions - ): Promise>; - deprecate( - params: Params$Resource$Images$Deprecate, + ): Promise>; + list( + params: Params$Resource$Hosts$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deprecate( - params: Params$Resource$Images$Deprecate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Hosts$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - deprecate( - params: Params$Resource$Images$Deprecate, - callback: BodyResponseCallback + list( + params: Params$Resource$Hosts$List, + callback: BodyResponseCallback ): void; - deprecate(callback: BodyResponseCallback): void; - deprecate( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Images$Deprecate - | BodyResponseCallback + | Params$Resource$Hosts$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Deprecate; + let params = (paramsOrCallback || {}) as Params$Resource$Hosts$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Deprecate; + params = {} as Params$Resource$Hosts$List; options = {}; } @@ -94443,30 +92339,209 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/{image}/deprecate' + '/compute/alpha/projects/{project}/zones/{zone}/{association}/hosts' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'zone', 'association'], + pathParams: ['association', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Hosts$Get extends StandardParameters { /** - * Returns the specified image. + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. For example, reservations/reservation_name, + * reservations/reservation_name/reservationBlocks/reservation_block_name or + * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + */ + association?: string; + /** + * The name of the host, formatted as RFC1035 or a resource ID + * number. + */ + host?: string; + /** + * The project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Hosts$Getversion extends StandardParameters { + /** + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. + */ + association?: string; + /** + * The name of the host, formatted as RFC1035 or a resource ID + * number. + */ + host?: string; + /** + * Project ID for this request. + */ + project?: 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. + */ + requestId?: string; + /** + * Name of the zone for this request. Zone name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HostsGetVersionRequest; + } + export interface Params$Resource$Hosts$List extends StandardParameters { + /** + * The parent resource association for the Host. This field specifies the + * hierarchical context (e.g., reservation, block, sub-block) when + * accessing the host. For example, reservations/reservation_name, + * reservations/reservation_name/reservationBlocks/reservation_block_name or + * reservations/reservation_name/reservationBlocks/reservation_block_name/reservationSubBlocks/reservation_sub_block_name. + */ + association?: string; + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * The project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request, formatted as RFC1035. + */ + zone?: string; + } + + export class Resource$Httphealthchecks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -94490,7 +92565,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -94499,55 +92573,59 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.get({ - * // Name of the image resource to return. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpHealthChecks.delete({ + * // Name of the HttpHealthCheck resource to delete. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "imageEncryptionKey": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "locked": false, * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "rolloutOverride": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "storageLocations": [] + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -94563,52 +92641,53 @@ export namespace compute_alpha { * @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$Images$Get, + delete( + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Images$Get, + delete( + params?: Params$Resource$Httphealthchecks$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Images$Get, + ): Promise>; + delete( + params: Params$Resource$Httphealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Images$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Httphealthchecks$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Images$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Httphealthchecks$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Images$Get - | BodyResponseCallback + | Params$Resource$Httphealthchecks$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Get; + params = {} as Params$Resource$Httphealthchecks$Delete; options = {}; } @@ -94623,32 +92702,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/{image}' + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the latest image that is part of an image family and is not - * deprecated. For more information on image families, seePublic - * image families documentation. + * Returns the specified HttpHealthCheck resource. * @example * ```js * // Before running the sample: @@ -94681,11 +92758,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.getFromFamily({ - * // Name of the image family to search for. - * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The image project that the image belongs to. For example, to get a CentOS - * // image, specify centos-cloud as the image project. + * const res = await compute.httpHealthChecks.get({ + * // Name of the HttpHealthCheck resource to return. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', * }); @@ -94693,44 +92769,20 @@ export namespace compute_alpha { * * // Example response * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "imageEncryptionKey": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "locked": false, * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "rolloutOverride": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * } * @@ -94746,53 +92798,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getFromFamily( - params: Params$Resource$Images$Getfromfamily, + get( + params: Params$Resource$Httphealthchecks$Get, options: StreamMethodOptions ): Promise>; - getFromFamily( - params?: Params$Resource$Images$Getfromfamily, + get( + params?: Params$Resource$Httphealthchecks$Get, options?: MethodOptions - ): Promise>; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, + ): Promise>; + get( + params: Params$Resource$Httphealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Httphealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getFromFamily( - params: Params$Resource$Images$Getfromfamily, - callback: BodyResponseCallback + get( + params: Params$Resource$Httphealthchecks$Get, + callback: BodyResponseCallback ): void; - getFromFamily(callback: BodyResponseCallback): void; - getFromFamily( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Images$Getfromfamily - | BodyResponseCallback + | Params$Resource$Httphealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Images$Getfromfamily; + {}) as Params$Resource$Httphealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Getfromfamily; + params = {} as Params$Resource$Httphealthchecks$Get; options = {}; } @@ -94807,7 +92859,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/family/{family}' + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -94815,23 +92867,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'family'], - pathParams: ['family', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Creates a HttpHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -94855,7 +92907,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -94864,158 +92915,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.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])?))', - * // 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", - * // "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$Images$Getiampolicy, - options: StreamMethodOptions - ): Promise>; - getIamPolicy( - params?: Params$Resource$Images$Getiampolicy, - options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Images$Getiampolicy, - callback: BodyResponseCallback - ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( - paramsOrCallback?: - | Params$Resource$Images$Getiampolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Images$Getiampolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Images$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/alpha/projects/{project}/global/images/{resource}/getIamPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Creates an image in the specified project using the data 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.images.insert({ - * // Force image creation if true. - * forceCreate: 'placeholder-value', + * const res = await compute.httpHealthChecks.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])?))', @@ -95038,44 +92938,20 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "imageEncryptionKey": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "locked": false, * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "rolloutOverride": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -95127,31 +93003,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Images$Insert, + params?: Params$Resource$Httphealthchecks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Httphealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Images$Insert, + params: Params$Resource$Httphealthchecks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Images$Insert + | Params$Resource$Httphealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -95166,12 +93042,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Insert; + params = {} as Params$Resource$Httphealthchecks$Insert; options = {}; } @@ -95185,7 +93062,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/images' + rootUrl + + '/compute/alpha/projects/{project}/global/httpHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -95208,13 +93086,8 @@ export namespace compute_alpha { } /** - * Retrieves the list of custom images - * available to the specified project. Custom images are images you - * create that belong to your project. This method does not - * get any images that belong to other projects, including publicly-available - * images, like Debian 8. If you want to get a list of publicly-available - * images, use this method to make a request to the respective image project, - * such as debian-cloud or windows-cloud. + * Retrieves the list of HttpHealthCheck resources available to the specified + * project. * @example * ```js * // Before running the sample: @@ -95247,7 +93120,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.list({ + * const res = await compute.httpHealthChecks.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -95339,8 +93212,6 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The zone query parameter. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -95368,51 +93239,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Images$List, + params: Params$Resource$Httphealthchecks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Images$List, + params?: Params$Resource$Httphealthchecks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Images$List, + params: Params$Resource$Httphealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Images$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Images$List, - callback: BodyResponseCallback + params: Params$Resource$Httphealthchecks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Images$List - | BodyResponseCallback + | Params$Resource$Httphealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$List; + params = {} as Params$Resource$Httphealthchecks$List; options = {}; } @@ -95426,7 +93298,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/images' + rootUrl + + '/compute/alpha/projects/{project}/global/httpHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -95439,19 +93312,20 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified image with the data included in the request. - * Only the following fields can be modified: family, description, - * deprecation status. + * Updates a HttpHealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -95483,9 +93357,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.patch({ - * // Name of the image resource to patch. - * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.httpHealthChecks.patch({ + * // Name of the HttpHealthCheck resource to patch. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -95508,44 +93382,20 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", - * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "checkIntervalSec": 0, * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "enableConfidentialCompute": false, - * // "family": "my_family", - * // "guestOsFeatures": [], + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "imageEncryptionKey": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "licenseCodes": [], - * // "licenses": [], - * // "locked": false, * // "name": "my_name", - * // "params": {}, - * // "rawDisk": {}, - * // "rolloutOverride": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shieldedInstanceInitialState": {}, - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskEncryptionKey": {}, - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceImage": "my_sourceImage", - * // "sourceImageEncryptionKey": {}, - * // "sourceImageId": "my_sourceImageId", - * // "sourceSnapshot": "my_sourceSnapshot", - * // "sourceSnapshotEncryptionKey": {}, - * // "sourceSnapshotId": "my_sourceSnapshotId", - * // "sourceType": "my_sourceType", - * // "status": "my_status", - * // "storageLocations": [] + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -95597,31 +93447,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Httphealthchecks$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Images$Patch, + params?: Params$Resource$Httphealthchecks$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Httphealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Httphealthchecks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Images$Patch, + params: Params$Resource$Httphealthchecks$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Images$Patch + | Params$Resource$Httphealthchecks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -95636,12 +93486,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Patch; + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Patch; + params = {} as Params$Resource$Httphealthchecks$Patch; options = {}; } @@ -95656,7 +93507,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/{image}' + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -95664,8 +93515,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'image'], - pathParams: ['image', 'project'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -95679,8 +93530,7 @@ export namespace compute_alpha { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -95704,6 +93554,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -95712,7 +93563,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.setIamPolicy({ + * const res = await compute.httpHealthChecks.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])?))', @@ -95723,9 +93574,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "permissions": [] * // } * }, * }); @@ -95733,10 +93582,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -95752,53 +93598,57 @@ export namespace compute_alpha { * @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$Images$Setiampolicy, + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Images$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Httphealthchecks$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Images$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httphealthchecks$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Images$Setiampolicy - | BodyResponseCallback + | Params$Resource$Httphealthchecks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Images$Setiampolicy; + {}) as Params$Resource$Httphealthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Setiampolicy; + params = {} as Params$Resource$Httphealthchecks$Testiampermissions; options = {}; } @@ -95813,7 +93663,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/httpHealthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -95826,18 +93676,18 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on an image. To learn more about labels, read theLabeling - * Resources documentation. + * Updates a HttpHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -95869,19 +93719,45 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.images.setLabels({ + * const res = await compute.httpHealthChecks.update({ + * // Name of the HttpHealthCheck resource to update. + * httpHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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}', + * // 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * }, * }); @@ -95932,32 +93808,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Httphealthchecks$Update, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Images$Setlabels, + update( + params?: Params$Resource$Httphealthchecks$Update, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Httphealthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Httphealthchecks$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Images$Setlabels, + update( + params: Params$Resource$Httphealthchecks$Update, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Images$Setlabels + | Params$Resource$Httphealthchecks$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -95972,12 +93848,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Images$Setlabels; + let params = (paramsOrCallback || + {}) as Params$Resource$Httphealthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Images$Setlabels; + params = {} as Params$Resource$Httphealthchecks$Update; options = {}; } @@ -95992,16 +93869,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/images/{resource}/setLabels' + '/compute/alpha/projects/{project}/global/httpHealthChecks/{httpHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'httpHealthCheck'], + pathParams: ['httpHealthCheck', 'project'], context: this.context, }; if (callback) { @@ -96013,195 +93890,13 @@ export namespace compute_alpha { 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.images.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])?))', - * // 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$Images$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Images$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Images$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Images$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Images$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Images$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/alpha/projects/{project}/global/images/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } } - export interface Params$Resource$Images$Delete extends StandardParameters { - /** - * Name of the image resource to delete. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - } - export interface Params$Resource$Images$Deprecate extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Delete extends StandardParameters { /** - * Image name. + * Name of the HttpHealthCheck resource to delete. */ - image?: string; + httpHealthCheck?: string; /** * Project ID for this request. */ @@ -96222,52 +93917,18 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DeprecationStatus; - } - export interface Params$Resource$Images$Get extends StandardParameters { - /** - * Name of the image resource to return. - */ - image?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Images$Getfromfamily extends StandardParameters { - /** - * Name of the image family to search for. - */ - family?: string; - /** - * The image project that the image belongs to. For example, to get a CentOS - * image, specify centos-cloud as the image project. - */ - project?: string; } - export interface Params$Resource$Images$Getiampolicy extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Get extends StandardParameters { /** - * Requested IAM Policy version. + * Name of the HttpHealthCheck resource to return. */ - optionsRequestedPolicyVersion?: number; + httpHealthCheck?: string; /** * Project ID for this request. */ project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; } - export interface Params$Resource$Images$Insert extends StandardParameters { - /** - * Force image creation if true. - */ - forceCreate?: boolean; + export interface Params$Resource$Httphealthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -96292,9 +93953,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$Image; + requestBody?: Schema$HttpHealthCheck; } - export interface Params$Resource$Images$List extends StandardParameters { + export interface Params$Resource$Httphealthchecks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -96397,16 +94058,12 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - /** - * The zone query parameter. - */ - zone?: string; } - export interface Params$Resource$Images$Patch extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Patch extends StandardParameters { /** - * Name of the image resource to patch. + * Name of the HttpHealthCheck resource to patch. */ - image?: string; + httpHealthCheck?: string; /** * Project ID for this request. */ @@ -96431,9 +94088,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$Image; + requestBody?: Schema$HttpHealthCheck; } - export interface Params$Resource$Images$Setiampolicy extends StandardParameters { + export interface Params$Resource$Httphealthchecks$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -96446,48 +94103,48 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Images$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - + export interface Params$Resource$Httphealthchecks$Update extends StandardParameters { /** - * Request body metadata + * Name of the HttpHealthCheck resource to update. */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Images$Testiampermissions extends StandardParameters { + httpHealthCheck?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * 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). */ - resource?: string; + requestId?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$HttpHealthCheck; } - export class Resource$Imageviews { + export class Resource$Httpshealthchecks { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the specified global Image resource by providing a regional - * context to read the metadata from the Global Clone in the region. + * Deletes the specified HttpsHealthCheck resource. * @example * ```js * // Before running the sample: @@ -96511,7 +94168,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -96520,20 +94176,59 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageViews.get({ - * // Required. Project ID for this request. + * const res = await compute.httpsHealthChecks.delete({ + * // Name of the HttpsHealthCheck resource to delete. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', - * // Required. Name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // Name of the image resource to return. - * resourceId: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "image": {} + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -96549,52 +94244,53 @@ export namespace compute_alpha { * @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$Imageviews$Get, + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Imageviews$Get, + delete( + params?: Params$Resource$Httpshealthchecks$Delete, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Imageviews$Get, + ): Promise>; + delete( + params: Params$Resource$Httpshealthchecks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Imageviews$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Httpshealthchecks$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Imageviews$Get, - callback: BodyResponseCallback + delete( + params: Params$Resource$Httpshealthchecks$Delete, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Imageviews$Get - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Httpshealthchecks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imageviews$Get; + params = {} as Params$Resource$Httpshealthchecks$Delete; options = {}; } @@ -96609,32 +94305,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/imageViews/{resourceId}' + '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resourceId'], - pathParams: ['project', 'region', 'resourceId'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of global Image resources available to the project by - * providing a regional context to read the metadata from the Global Clone in - * the region. + * Returns the specified HttpsHealthCheck resource. * @example * ```js * // Before running the sample: @@ -96667,113 +94361,31 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.imageViews.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // Required. Project ID for this request. + * const res = await compute.httpsHealthChecks.get({ + * // Name of the HttpsHealthCheck resource to return. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', - * // Required. Name of the region for 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. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 * // } * } * @@ -96789,54 +94401,53 @@ export namespace compute_alpha { * @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$Imageviews$List, + get( + params: Params$Resource$Httpshealthchecks$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Imageviews$List, + get( + params?: Params$Resource$Httpshealthchecks$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Imageviews$List, + ): Promise>; + get( + params: Params$Resource$Httpshealthchecks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Imageviews$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Httpshealthchecks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Imageviews$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Httpshealthchecks$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Imageviews$List - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Httpshealthchecks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Imageviews$List; + params = {} as Params$Resource$Httpshealthchecks$Get; options = {}; } @@ -96851,7 +94462,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/imageViews' + '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -96859,155 +94470,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Imageviews$Get extends StandardParameters { - /** - * Required. Project ID for this request. - */ - project?: string; - /** - * Required. Name of the region for this request. - */ - region?: string; - /** - * Name of the image resource to return. - */ - resourceId?: string; - } - export interface Params$Resource$Imageviews$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Required. Project ID for this request. - */ - project?: string; - /** - * Required. Name of the region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Instancegroupmanagerresizerequests { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Cancels the specified resize request and removes it from the queue. - * Cancelled resize request does no longer wait for the resources to be - * provisioned. Cancel is only possible for requests that are accepted in the - * queue. + * Creates a HttpsHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -97039,10 +94518,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.cancel({ - * // The name of the managed instance group. - * // The name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpsHealthChecks.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])?))', @@ -97060,12 +94536,27 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the resize request to cancel. - * // The name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, * }); * console.log(res.data); * @@ -97114,32 +94605,32 @@ export namespace compute_alpha { * @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$Instancegroupmanagerresizerequests$Cancel, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + insert( + params?: Params$Resource$Httpshealthchecks$Insert, options?: MethodOptions ): Promise>; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + insert( + params: Params$Resource$Httpshealthchecks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + insert( + params: Params$Resource$Httpshealthchecks$Insert, callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Cancel + | Params$Resource$Httpshealthchecks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -97155,13 +94646,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Cancel; + {}) as Params$Resource$Httpshealthchecks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Cancel; + params = {} as Params$Resource$Httpshealthchecks$Insert; options = {}; } @@ -97176,7 +94666,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' + '/compute/alpha/projects/{project}/global/httpsHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -97184,18 +94674,8 @@ export namespace compute_alpha { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -97209,9 +94689,8 @@ export namespace compute_alpha { } /** - * Deletes the specified, inactive resize request. Requests that are still - * active cannot be deleted. Deleting request does not delete instances that - * were provisioned previously. + * Retrieves the list of HttpsHealthCheck resources available to the specified + * project. * @example * ```js * // Before running the sample: @@ -97235,6 +94714,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -97243,66 +94723,109 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.delete({ - * // The name of the managed instance group. - * // The name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpsHealthChecks.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the resize request to delete. - * // The name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -97318,54 +94841,55 @@ export namespace compute_alpha { * @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$Instancegroupmanagerresizerequests$Delete, + list( + params: Params$Resource$Httpshealthchecks$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instancegroupmanagerresizerequests$Delete, + list( + params?: Params$Resource$Httpshealthchecks$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, + ): Promise>; + list( + params: Params$Resource$Httpshealthchecks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Httpshealthchecks$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagerresizerequests$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Httpshealthchecks$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Delete - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Delete; + {}) as Params$Resource$Httpshealthchecks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Delete; + params = {} as Params$Resource$Httpshealthchecks$List; options = {}; } @@ -97380,40 +94904,33 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + '/compute/alpha/projects/{project}/global/httpsHealthChecks' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns all of the details about the specified resize request. + * Updates a HttpsHealthCheck resource in the specified project using the data + * included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -97437,7 +94954,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -97446,39 +94962,79 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.get({ - * // The name of the managed instance group. - * // Name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpsHealthChecks.patch({ + * // Name of the HttpsHealthCheck resource to patch. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 resize request. - * // Name should conform to RFC1035 or be a resource ID. - * resizeRequest: 'placeholder-value', - * // Name of the href="/compute/docs/regions-zones/#available"\>zone - * // scoping this request. Name should conform to RFC1035. - * zone: '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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "count": 0, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "instances": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "queuingPolicy": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "requestedRunDuration": {}, - * // "resizeBy": 0, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -97495,61 +95051,53 @@ export namespace compute_alpha { * @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$Instancegroupmanagerresizerequests$Get, + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancegroupmanagerresizerequests$Get, + patch( + params?: Params$Resource$Httpshealthchecks$Patch, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, + ): Promise>; + patch( + params: Params$Resource$Httpshealthchecks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Instancegroupmanagerresizerequests$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Httpshealthchecks$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + patch( + params: Params$Resource$Httpshealthchecks$Patch, + callback: BodyResponseCallback ): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Get - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Get; + {}) as Params$Resource$Httpshealthchecks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagerresizerequests$Get; + params = {} as Params$Resource$Httpshealthchecks$Patch; options = {}; } @@ -97564,43 +95112,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' + '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: [ - 'project', - 'zone', - 'instanceGroupManager', - 'resizeRequest', - ], - pathParams: [ - 'instanceGroupManager', - 'project', - 'resizeRequest', - 'zone', - ], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a new resize request that starts provisioning VMs immediately - * or queues VM creation. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -97624,6 +95159,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -97632,53 +95168,18 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.insert({ - * // The name of the managed instance group to which the resize request will - * // be added. - * // Name should conform to RFC1035 or be a resource ID. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.httpsHealthChecks.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located and where the resize request will be created. - * // Name should conform to RFC1035. - * zone: 'placeholder-value', + * // 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 * // { - * // "count": 0, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "instances": [], - * // "kind": "my_kind", - * // "name": "my_name", - * // "queuingPolicy": {}, - * // "region": "my_region", - * // "requestedRunDuration": {}, - * // "resizeBy": 0, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "status": {}, - * // "zone": "my_zone" + * // "permissions": [] * // } * }, * }); @@ -97686,34 +95187,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -97729,54 +95203,57 @@ export namespace compute_alpha { * @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$Instancegroupmanagerresizerequests$Insert, + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instancegroupmanagerresizerequests$Insert, + testIamPermissions( + params?: Params$Resource$Httpshealthchecks$Testiampermissions, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, + ): Promise>; + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagerresizerequests$Insert, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Httpshealthchecks$Testiampermissions, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$Insert - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$Insert; + {}) as Params$Resource$Httpshealthchecks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagerresizerequests$Insert; + params = {} as Params$Resource$Httpshealthchecks$Testiampermissions; options = {}; } @@ -97791,7 +95268,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + '/compute/alpha/projects/{project}/global/httpsHealthChecks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -97799,23 +95276,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of resize requests that are contained in the - * managed instance group. + * Updates a HttpsHealthCheck resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -97839,7 +95316,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -97848,114 +95324,80 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagerResizeRequests.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the managed instance group. The name should conform to RFC1035. - * instanceGroupManager: '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', + * const res = await compute.httpsHealthChecks.update({ + * // Name of the HttpsHealthCheck resource to update. + * httpsHealthCheck: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. The name should conform to RFC1035. - * zone: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "checkIntervalSec": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "healthyThreshold": 0, + * // "host": "my_host", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "port": 0, + * // "requestPath": "my_requestPath", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "timeoutSec": 0, + * // "unhealthyThreshold": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -97971,61 +95413,53 @@ export namespace compute_alpha { * @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$Instancegroupmanagerresizerequests$List, + update( + params: Params$Resource$Httpshealthchecks$Update, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instancegroupmanagerresizerequests$List, + update( + params?: Params$Resource$Httpshealthchecks$Update, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, + ): Promise>; + update( + params: Params$Resource$Httpshealthchecks$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Instancegroupmanagerresizerequests$List, - callback: BodyResponseCallback + update( + params: Params$Resource$Httpshealthchecks$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + update( + params: Params$Resource$Httpshealthchecks$Update, + callback: BodyResponseCallback ): void; - list( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Instancegroupmanagerresizerequests$List - | BodyResponseCallback + | Params$Resource$Httpshealthchecks$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagerresizerequests$List; + {}) as Params$Resource$Httpshealthchecks$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagerresizerequests$List; + params = {} as Params$Resource$Httpshealthchecks$Update; options = {}; } @@ -98040,74 +95474,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' + '/compute/alpha/projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PUT', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'httpsHealthCheck'], + pathParams: ['httpsHealthCheck', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Instancegroupmanagerresizerequests$Cancel extends StandardParameters { - /** - * The name of the managed instance group. - * The name should conform to RFC1035 or be a resource ID. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the resize request to cancel. - * The name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagerresizerequests$Delete extends StandardParameters { + export interface Params$Resource$Httpshealthchecks$Delete extends StandardParameters { /** - * The name of the managed instance group. - * The name should conform to RFC1035 or be a resource ID. + * Name of the HttpsHealthCheck resource to delete. */ - instanceGroupManager?: string; + httpsHealthCheck?: string; /** * Project ID for this request. */ @@ -98128,45 +95522,18 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the resize request to delete. - * The name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. - */ - zone?: string; } - export interface Params$Resource$Instancegroupmanagerresizerequests$Get extends StandardParameters { + export interface Params$Resource$Httpshealthchecks$Get extends StandardParameters { /** - * The name of the managed instance group. - * Name should conform to RFC1035 or be a resource ID. + * Name of the HttpsHealthCheck resource to return. */ - instanceGroupManager?: string; + httpsHealthCheck?: string; /** * Project ID for this request. */ project?: string; - /** - * The name of the resize request. - * Name should conform to RFC1035 or be a resource ID. - */ - resizeRequest?: string; - /** - * Name of the href="/compute/docs/regions-zones/#available"\>zone - * scoping this request. Name should conform to RFC1035. - */ - zone?: string; } - export interface Params$Resource$Instancegroupmanagerresizerequests$Insert extends StandardParameters { - /** - * The name of the managed instance group to which the resize request will - * be added. - * Name should conform to RFC1035 or be a resource ID. - */ - instanceGroupManager?: string; + export interface Params$Resource$Httpshealthchecks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -98187,19 +95554,13 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of thezone where the managed - * instance group is located and where the resize request will be created. - * Name should conform to RFC1035. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagerResizeRequest; + requestBody?: Schema$HttpsHealthCheck; } - export interface Params$Resource$Instancegroupmanagerresizerequests$List extends StandardParameters { + export interface Params$Resource$Httpshealthchecks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -98261,10 +95622,6 @@ export namespace compute_alpha { * expressions. */ filter?: string; - /** - * The name of the managed instance group. The name should conform to RFC1035. - */ - instanceGroupManager?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -98306,35 +95663,262 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Httpshealthchecks$Patch extends StandardParameters { /** - * The name of thezone where the managed - * instance group is located. The name should conform to RFC1035. + * Name of the HttpsHealthCheck resource to patch. */ - zone?: string; + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; } + export interface Params$Resource$Httpshealthchecks$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - export class Resource$Instancegroupmanagers { + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Httpshealthchecks$Update extends StandardParameters { + /** + * Name of the HttpsHealthCheck resource to update. + */ + httpsHealthCheck?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$HttpsHealthCheck; + } + + export class Resource$Imagefamilyviews { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Flags the specified instances to be removed from the - * managed instance group. Abandoning an instance does not delete the - * instance, but it does remove the instance from any target pools that are - * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the - * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have - * not yet been removed from the group. You must separately verify the - * status of the abandoning action with thelistmanagedinstances - * method. + * Returns the latest image that is part of an image family, is not + * deprecated and is rolled out in the specified zone. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * You can specify a maximum of 1000 instances with this method per request. + * 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.imageFamilyViews.get({ + * // Name of the image family to search for. + * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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 zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "image": {} + * // } + * } + * + * 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$Imagefamilyviews$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Imagefamilyviews$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Imagefamilyviews$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Imagefamilyviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Imagefamilyviews$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Imagefamilyviews$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Imagefamilyviews$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Imagefamilyviews$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/alpha/projects/{project}/zones/{zone}/imageFamilyViews/{family}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'family'], + pathParams: ['family', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Imagefamilyviews$Get extends StandardParameters { + /** + * Name of the image family to search for. + */ + family?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Images { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified image. * @example * ```js * // Before running the sample: @@ -98366,9 +95950,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.abandonInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.delete({ + * // Name of the image resource to delete. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -98386,17 +95970,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -98445,32 +96018,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + delete( + params: Params$Resource$Images$Delete, options: StreamMethodOptions ): Promise>; - abandonInstances( - params?: Params$Resource$Instancegroupmanagers$Abandoninstances, + delete( + params?: Params$Resource$Images$Delete, options?: MethodOptions ): Promise>; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + delete( + params: Params$Resource$Images$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + delete( + params: Params$Resource$Images$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - abandonInstances( - params: Params$Resource$Instancegroupmanagers$Abandoninstances, + delete( + params: Params$Resource$Images$Delete, callback: BodyResponseCallback ): void; - abandonInstances(callback: BodyResponseCallback): void; - abandonInstances( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Abandoninstances + | Params$Resource$Images$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -98485,13 +96058,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Abandoninstances; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Abandoninstances; + params = {} as Params$Resource$Images$Delete; options = {}; } @@ -98506,16 +96078,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' + '/compute/alpha/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { @@ -98529,10 +96101,9 @@ export namespace compute_alpha { } /** - * Retrieves the list of managed instance groups and groups them by zone. + * Sets the deprecation status of an image. * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * If an empty request body is given, clears the deprecation status instead. * @example * ```js * // Before running the sample: @@ -98556,7 +96127,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -98565,121 +96135,72 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: + * const res = await compute.images.deprecate({ + * // Image name. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * // 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. * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // 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 literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "deleted": "my_deleted", + * // "deprecated": "my_deprecated", + * // "obsolete": "my_obsolete", + * // "replacement": "my_replacement", + * // "state": "my_state", + * // "stateOverride": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -98695,61 +96216,52 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$Aggregatedlist, + deprecate( + params: Params$Resource$Images$Deprecate, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Instancegroupmanagers$Aggregatedlist, + deprecate( + params?: Params$Resource$Images$Deprecate, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + ): Promise>; + deprecate( + params: Params$Resource$Images$Deprecate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instancegroupmanagers$Aggregatedlist, - callback: BodyResponseCallback + deprecate( + params: Params$Resource$Images$Deprecate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + deprecate( + params: Params$Resource$Images$Deprecate, + callback: BodyResponseCallback ): void; - aggregatedList( + deprecate(callback: BodyResponseCallback): void; + deprecate( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Images$Deprecate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Aggregatedlist; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Deprecate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Aggregatedlist; + params = {} as Params$Resource$Images$Deprecate; options = {}; } @@ -98764,33 +96276,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/instanceGroupManagers' + '/compute/alpha/projects/{project}/global/images/{image}/deprecate' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Applies changes to selected instances on the managed instance group. - * This method can be used to apply new overrides and/or new versions. + * Returns the specified image. * @example * ```js * // Before running the sample: @@ -98814,6 +96323,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -98822,61 +96332,55 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.applyUpdatesToInstances({ - * // The name of the managed instance group, should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.get({ + * // Name of the image resource to return. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 thezone - * // where the managed instance group is located. Should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstances": false, - * // "disruptionMode": "my_disruptionMode", - * // "instances": [], - * // "maximalAction": "my_maximalAction", - * // "minimalAction": "my_minimalAction", - * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "imageEncryptionKey": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locked": false, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "params": {}, + * // "rawDisk": {}, + * // "rolloutOverride": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "storageLocations": [] * // } * } * @@ -98892,56 +96396,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + get( + params: Params$Resource$Images$Get, options: StreamMethodOptions ): Promise>; - applyUpdatesToInstances( - params?: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + get( + params?: Params$Resource$Images$Get, options?: MethodOptions - ): Promise>; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, + ): Promise>; + get( + params: Params$Resource$Images$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - applyUpdatesToInstances( - params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, - callback: BodyResponseCallback + get( + params: Params$Resource$Images$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - applyUpdatesToInstances( - callback: BodyResponseCallback + get( + params: Params$Resource$Images$Get, + callback: BodyResponseCallback ): void; - applyUpdatesToInstances( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Applyupdatestoinstances - | BodyResponseCallback + | Params$Resource$Images$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; + params = {} as Params$Resource$Images$Get; options = {}; } @@ -98956,30 +96456,32 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' + '/compute/alpha/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the accelerator topologies configuration. + * Returns the latest image that is part of an image family and is not + * deprecated. For more information on image families, seePublic + * image families documentation. * @example * ```js * // Before running the sample: @@ -99003,6 +96505,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -99011,73 +96514,56 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await compute.instanceGroupManagers.configureAcceleratorTopologies({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: '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])?))', - * // 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. - * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "acceleratorTopologyActions": {}, - * // "acceleratorTopologyConfigurations": {} - * // } - * }, - * }); + * const res = await compute.images.getFromFamily({ + * // Name of the image family to search for. + * family: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The image project that the image belongs to. For example, to get a CentOS + * // image, specify centos-cloud as the image project. + * 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])?))', + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "imageEncryptionKey": {}, * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locked": false, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "params": {}, + * // "rawDisk": {}, + * // "rolloutOverride": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "storageLocations": [] * // } * } * @@ -99093,56 +96579,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - configureAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, + getFromFamily( + params: Params$Resource$Images$Getfromfamily, options: StreamMethodOptions ): Promise>; - configureAcceleratorTopologies( - params?: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, + getFromFamily( + params?: Params$Resource$Images$Getfromfamily, options?: MethodOptions - ): Promise>; - configureAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, + ): Promise>; + getFromFamily( + params: Params$Resource$Images$Getfromfamily, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - configureAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - configureAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, - callback: BodyResponseCallback + getFromFamily( + params: Params$Resource$Images$Getfromfamily, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - configureAcceleratorTopologies( - callback: BodyResponseCallback + getFromFamily( + params: Params$Resource$Images$Getfromfamily, + callback: BodyResponseCallback ): void; - configureAcceleratorTopologies( + getFromFamily(callback: BodyResponseCallback): void; + getFromFamily( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Configureacceleratortopologies - | BodyResponseCallback + | Params$Resource$Images$Getfromfamily + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Configureacceleratortopologies; + {}) as Params$Resource$Images$Getfromfamily; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Configureacceleratortopologies; + params = {} as Params$Resource$Images$Getfromfamily; options = {}; } @@ -99157,33 +96640,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/configureAcceleratorTopologies' + '/compute/alpha/projects/{project}/global/images/family/{family}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'family'], + pathParams: ['family', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates instances with per-instance configurations in this managed instance - * group. Instances are created using the current instance template. Thecreate instances operation is marked DONE if thecreateInstances request is successful. The underlying actions - * take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances - * method. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -99207,6 +96688,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -99215,71 +96697,23 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.createInstances({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.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])?))', - * // 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. - * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, + * // 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 * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -99295,53 +96729,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, options: StreamMethodOptions ): Promise>; - createInstances( - params?: Params$Resource$Instancegroupmanagers$Createinstances, + getIamPolicy( + params?: Params$Resource$Images$Getiampolicy, options?: MethodOptions - ): Promise>; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, + ): Promise>; + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - createInstances( - params: Params$Resource$Instancegroupmanagers$Createinstances, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Images$Getiampolicy, + callback: BodyResponseCallback ): void; - createInstances(callback: BodyResponseCallback): void; - createInstances( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Createinstances - | BodyResponseCallback + | Params$Resource$Images$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Createinstances; + {}) as Params$Resource$Images$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Createinstances; + params = {} as Params$Resource$Images$Getiampolicy; options = {}; } @@ -99356,33 +96790,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances' + '/compute/alpha/projects/{project}/global/images/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified managed instance group and all of the instances - * in that group. Note that the instance group must not belong to a - * backend service. Read - * Deleting an instance group for more information. + * Creates an image in the specified project using the data included + * in the request. * @example * ```js * // Before running the sample: @@ -99414,12 +96846,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.delete({ - * // The name of the managed instance group to delete. - * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance deletion even if it's - * // configured for the instances. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.images.insert({ + * // Force image creation if true. + * forceCreate: '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])?))', @@ -99437,9 +96866,51 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locked": false, + * // "name": "my_name", + * // "params": {}, + * // "rawDisk": {}, + * // "rolloutOverride": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] + * // } + * }, * }); * console.log(res.data); * @@ -99488,32 +96959,32 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Images$Insert, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instancegroupmanagers$Delete, + insert( + params?: Params$Resource$Images$Insert, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Images$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Images$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroupmanagers$Delete, + insert( + params: Params$Resource$Images$Insert, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Delete + | Params$Resource$Images$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -99528,13 +96999,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Delete; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Delete; + params = {} as Params$Resource$Images$Insert; options = {}; } @@ -99548,17 +97018,16 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + rootUrl + '/compute/alpha/projects/{project}/global/images' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -99572,21 +97041,13 @@ export namespace compute_alpha { } /** - * Flags the specified instances in the managed instance group for immediate - * deletion. The instances are also removed from any target - * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of - * instances that you delete. This operation is marked as DONE - * when the action is scheduled even if the instances are still being deleted. - * You must separately verify the status of the deleting action - * with thelistmanagedinstances - * method. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Retrieves the list of custom images + * available to the specified project. Custom images are images you + * create that belong to your project. This method does not + * get any images that belong to other projects, including publicly-available + * images, like Debian 8. If you want to get a list of publicly-available + * images, use this method to make a request to the respective image project, + * such as debian-cloud or windows-cloud. * @example * ```js * // Before running the sample: @@ -99610,6 +97071,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -99618,75 +97080,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.deleteInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance deletion even if it's - * // configured for the instances. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.images.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instanceNames": [], - * // "instances": [], - * // "skipInstancesOnValidationError": false - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The zone query parameter. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -99702,53 +97200,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, + list( + params: Params$Resource$Images$List, options: StreamMethodOptions ): Promise>; - deleteInstances( - params?: Params$Resource$Instancegroupmanagers$Deleteinstances, + list( + params?: Params$Resource$Images$List, options?: MethodOptions - ): Promise>; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, + ): Promise>; + list( + params: Params$Resource$Images$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Images$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - deleteInstances( - params: Params$Resource$Instancegroupmanagers$Deleteinstances, - callback: BodyResponseCallback + list( + params: Params$Resource$Images$List, + callback: BodyResponseCallback ): void; - deleteInstances(callback: BodyResponseCallback): void; - deleteInstances( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Deleteinstances - | BodyResponseCallback + | Params$Resource$Images$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Deleteinstances; + let params = (paramsOrCallback || {}) as Params$Resource$Images$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Deleteinstances; + params = {} as Params$Resource$Images$List; options = {}; } @@ -99762,32 +97259,32 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' + rootUrl + '/compute/alpha/projects/{project}/global/images' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes selected per-instance configurations for the managed instance - * group. + * Patches the specified image with the data included in the request. + * Only the following fields can be modified: family, description, + * deprecation status. * @example * ```js * // Before running the sample: @@ -99819,24 +97316,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.deletePerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.patch({ + * // Name of the image resource to patch. + * image: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 thezone - * // where the managed instance - * // group is located. - * // It should conform to RFC1035. - * zone: '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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "names": [] + * // "architecture": "my_architecture", + * // "archiveSizeBytes": "my_archiveSizeBytes", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "enableConfidentialCompute": false, + * // "family": "my_family", + * // "guestOsFeatures": [], + * // "id": "my_id", + * // "imageEncryptionKey": {}, + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "licenseCodes": [], + * // "licenses": [], + * // "locked": false, + * // "name": "my_name", + * // "params": {}, + * // "rawDisk": {}, + * // "rolloutOverride": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shieldedInstanceInitialState": {}, + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskEncryptionKey": {}, + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceImage": "my_sourceImage", + * // "sourceImageEncryptionKey": {}, + * // "sourceImageId": "my_sourceImageId", + * // "sourceSnapshot": "my_sourceSnapshot", + * // "sourceSnapshotEncryptionKey": {}, + * // "sourceSnapshotId": "my_sourceSnapshotId", + * // "sourceType": "my_sourceType", + * // "status": "my_status", + * // "storageLocations": [] * // } * }, * }); @@ -99887,34 +97429,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + patch( + params: Params$Resource$Images$Patch, options: StreamMethodOptions ): Promise>; - deletePerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + patch( + params?: Params$Resource$Images$Patch, options?: MethodOptions ): Promise>; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + patch( + params: Params$Resource$Images$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, + patch( + params: Params$Resource$Images$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, - callback: BodyResponseCallback - ): void; - deletePerInstanceConfigs( + patch( + params: Params$Resource$Images$Patch, callback: BodyResponseCallback ): void; - deletePerInstanceConfigs( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs + | Params$Resource$Images$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -99929,14 +97469,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; + params = {} as Params$Resource$Images$Patch; options = {}; } @@ -99951,16 +97489,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' + '/compute/alpha/projects/{project}/global/images/{image}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'image'], + pathParams: ['image', 'project'], context: this.context, }; if (callback) { @@ -99974,7 +97512,8 @@ export namespace compute_alpha { } /** - * Returns all of the details about the specified managed instance group. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -99998,7 +97537,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -100007,59 +97545,31 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.get({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.images.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 thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * // 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 * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "failoverAction": "my_failoverAction", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "multiMig": "my_multiMig", - * // "name": "my_name", - * // "namedPorts": [], - * // "params": {}, - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceAccount": "my_serviceAccount", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetSizePolicy": {}, - * // "targetSizeUnit": "my_targetSizeUnit", - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -100075,55 +97585,53 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$Get, + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancegroupmanagers$Get, + setIamPolicy( + params?: Params$Resource$Images$Setiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instancegroupmanagers$Get, + ): Promise>; + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagers$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroupmanagers$Get, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Images$Setiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Get - | BodyResponseCallback + | Params$Resource$Images$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Get; + {}) as Params$Resource$Images$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Get; + params = {} as Params$Resource$Images$Setiampolicy; options = {}; } @@ -100138,30 +97646,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/alpha/projects/{project}/global/images/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns information about available accelerator topologies for a given MIG. + * Sets the labels on an image. To learn more about labels, read theLabeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -100185,7 +97694,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -100194,25 +97702,54 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await compute.instanceGroupManagers.getAvailableAcceleratorTopologies({ - * // Required. 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])?))', - * // Required. The name of the managed instance group. - * // It should conform to RFC1035. - * resourceId: 'placeholder-value', - * // Required. The name of thezone where the managed - * // instance group is located. - * // Name should conform to RFC1035. - * zone: 'placeholder-value', - * }); + * const res = await compute.images.setLabels({ + * // 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 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 + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "acceleratorTopologiesInfo": {}, - * // "multiMig": "my_multiMig" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -100228,62 +97765,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getAvailableAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + setLabels( + params: Params$Resource$Images$Setlabels, options: StreamMethodOptions ): Promise>; - getAvailableAcceleratorTopologies( - params?: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + setLabels( + params?: Params$Resource$Images$Setlabels, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getAvailableAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + ): Promise>; + setLabels( + params: Params$Resource$Images$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getAvailableAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAvailableAcceleratorTopologies( - params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Images$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getAvailableAcceleratorTopologies( - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Images$Setlabels, + callback: BodyResponseCallback ): void; - getAvailableAcceleratorTopologies( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies - | BodyResponseCallback + | Params$Resource$Images$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies; + let params = (paramsOrCallback || {}) as Params$Resource$Images$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies; + params = {} as Params$Resource$Images$Setlabels; options = {}; } @@ -100298,42 +97825,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{resourceId}/getAvailableAcceleratorTopologies' + '/compute/alpha/projects/{project}/global/images/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resourceId'], - pathParams: ['project', 'resourceId', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a managed instance group using the information that you specify - * in the request. After the group is created, instances in the group are - * created using the specified instance template. - * This operation is marked as DONE when the group is created - * even if the instances in the group have not yet been created. You - * must separately verify the status of the individual instances with thelistmanagedinstances - * method. - * - * A managed instance group can have up to 1000 VM instances per group. Please - * contact Cloud Support if you need an increase in - * this limit. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -100357,6 +97872,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -100365,71 +97881,18 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.insert({ + * const res = await compute.images.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone - * // where you want to create the managed instance group. - * zone: 'placeholder-value', + * // 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 * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "failoverAction": "my_failoverAction", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "multiMig": "my_multiMig", - * // "name": "my_name", - * // "namedPorts": [], - * // "params": {}, - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceAccount": "my_serviceAccount", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetSizePolicy": {}, - * // "targetSizeUnit": "my_targetSizeUnit", - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * }, * }); @@ -100437,34 +97900,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -100480,53 +97916,57 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$Insert, + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instancegroupmanagers$Insert, + testIamPermissions( + params?: Params$Resource$Images$Testiampermissions, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, + ): Promise>; + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroupmanagers$Insert, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Images$Testiampermissions, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Insert - | BodyResponseCallback + | Params$Resource$Images$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Insert; + {}) as Params$Resource$Images$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Insert; + params = {} as Params$Resource$Images$Testiampermissions; options = {}; } @@ -100541,7 +97981,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers' + '/compute/alpha/projects/{project}/global/images/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -100549,23 +97989,338 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Images$Delete extends StandardParameters { /** - * Retrieves a list of managed instance groups that are contained within the - * specified project and zone. + * Name of the image resource to delete. + */ + image?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + } + export interface Params$Resource$Images$Deprecate extends StandardParameters { + /** + * Image name. + */ + image?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DeprecationStatus; + } + export interface Params$Resource$Images$Get extends StandardParameters { + /** + * Name of the image resource to return. + */ + image?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Images$Getfromfamily extends StandardParameters { + /** + * Name of the image family to search for. + */ + family?: string; + /** + * The image project that the image belongs to. For example, to get a CentOS + * image, specify centos-cloud as the image project. + */ + project?: string; + } + export interface Params$Resource$Images$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Images$Insert extends StandardParameters { + /** + * Force image creation if true. + */ + forceCreate?: boolean; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Image; + } + export interface Params$Resource$Images$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The zone query parameter. + */ + zone?: string; + } + export interface Params$Resource$Images$Patch extends StandardParameters { + /** + * Name of the image resource to patch. + */ + image?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Image; + } + export interface Params$Resource$Images$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Images$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Images$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Imageviews { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the specified global ImageView resource, with a regional + * context. * @example * ```js * // Before running the sample: @@ -100598,112 +98353,20 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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. + * const res = await compute.imageViews.get({ + * // Required. 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * // Required. Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the image resource to return. + * resourceId: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "image": {} * // } * } * @@ -100719,55 +98382,52 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$List, + get( + params: Params$Resource$Imageviews$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instancegroupmanagers$List, + get( + params?: Params$Resource$Imageviews$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instancegroupmanagers$List, + ): Promise>; + get( + params: Params$Resource$Imageviews$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagers$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Imageviews$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroupmanagers$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Imageviews$Get, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$List - | BodyResponseCallback + | Params$Resource$Imageviews$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$List; + let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$List; + params = {} as Params$Resource$Imageviews$Get; options = {}; } @@ -100782,7 +98442,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers' + '/compute/alpha/projects/{project}/regions/{region}/imageViews/{resourceId}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -100790,24 +98450,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region', 'resourceId'], + pathParams: ['project', 'region', 'resourceId'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all errors thrown by actions on instances for a given managed - * instance group. The filter and orderBy query - * parameters are not supported. + * Returns a list of global ImageView resources, with a regional + * context. * @example * ```js * // Before running the sample: @@ -100840,7 +98499,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listErrors({ + * const res = await compute.imageViews.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -100900,11 +98559,6 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // The name of the managed instance group. - * // It must be a string that meets the requirements in RFC1035, or an - * // unsigned long integer: must match regexp pattern: - * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. - * instanceGroupManager: '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 @@ -100927,9 +98581,11 @@ export namespace compute_alpha { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // Project ID for this request. + * // Required. 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])?))', + * // Required. Name of the region for 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. * // @@ -100937,17 +98593,19 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * // It should conform to RFC1035. - * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", + * // "id": "my_id", * // "items": [], - * // "nextPageToken": "my_nextPageToken" + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -100963,61 +98621,54 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + list( + params: Params$Resource$Imageviews$List, options: StreamMethodOptions ): Promise>; - listErrors( - params?: Params$Resource$Instancegroupmanagers$Listerrors, + list( + params?: Params$Resource$Imageviews$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + ): Promise>; + list( + params: Params$Resource$Imageviews$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, + list( + params: Params$Resource$Imageviews$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listErrors( - params: Params$Resource$Instancegroupmanagers$Listerrors, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listErrors( - callback: BodyResponseCallback + list( + params: Params$Resource$Imageviews$List, + callback: BodyResponseCallback ): void; - listErrors( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listerrors - | BodyResponseCallback + | Params$Resource$Imageviews$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listerrors; + let params = (paramsOrCallback || {}) as Params$Resource$Imageviews$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Listerrors; + params = {} as Params$Resource$Imageviews$List; options = {}; } @@ -101032,7 +98683,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors' + '/compute/alpha/projects/{project}/regions/{region}/imageViews' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -101040,280 +98691,155 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Imageviews$Get extends StandardParameters { /** - * Lists all of the instances in the managed instance group. Each instance - * in the list has a currentAction, which indicates the action - * that the managed instance group is performing on the instance. For example, - * if the group is still creating an instance, the currentAction - * is CREATING. If a previous action failed, the - * list displays the errors for that failed action. The orderBy - * query parameter is not supported. The `pageToken` query parameter is - * supported only if the group's `listManagedInstancesResults` field is set - * to `PAGINATED`. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Required. Project ID for this request. + */ + project?: string; + /** + * Required. Name of the region for this request. + */ + region?: string; + /** + * Name of the image resource to return. + */ + resourceId?: string; + } + export interface Params$Resource$Imageviews$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * 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', - * ], - * }); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Do the magic - * const res = await compute.instanceGroupManagers.listManagedInstances({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the managed instance group. - * instanceGroupManager: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * }); - * console.log(res.data); + * 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 onresource labels. * - * // Example response - * // { - * // "managedInstances": [], - * // "nextPageToken": "my_nextPageToken" - * // } - * } + * 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) + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * ``` + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * @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. + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: StreamMethodOptions - ): Promise>; - listManagedInstances( - params?: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listManagedInstances( - params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, - callback: BodyResponseCallback - ): void; - listManagedInstances( - callback: BodyResponseCallback - ): void; - listManagedInstances( - paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listmanagedinstances - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listmanagedinstances; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Listmanagedinstances; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + 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; + /** + * Required. Project ID for this request. + */ + project?: string; + /** + * Required. Name of the region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + export class Resource$Instancegroupmanagerresizerequests { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Lists all of the per-instance configurations defined for the managed - * instance group. The orderBy query parameter is not supported. + * Cancels the specified resize request and removes it from the queue. + * Cancelled resize request does no longer wait for the resources to be + * provisioned. Cancel is only possible for requests that are accepted in the + * queue. * @example * ```js * // Before running the sample: @@ -101337,7 +98863,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -101346,112 +98871,66 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.listPerInstanceConfigs({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the managed instance group. It should conform to RFC1035. + * const res = await compute.instanceGroupManagerResizeRequests.cancel({ + * // The name of the managed instance group. + * // The name should conform to RFC1035 or be a resource ID. * instanceGroupManager: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. + * // 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). + * requestId: 'placeholder-value', + * // The name of the resize request to cancel. + * // The name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "items": [], - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -101467,62 +98946,54 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: StreamMethodOptions ): Promise>; - listPerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + cancel( + params?: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + ): Promise>; + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( - callback: BodyResponseCallback + cancel( + params: Params$Resource$Instancegroupmanagerresizerequests$Cancel, + callback: BodyResponseCallback ): void; - listPerInstanceConfigs( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Listperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + {} as Params$Resource$Instancegroupmanagerresizerequests$Cancel; options = {}; } @@ -101537,7 +99008,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}/cancel' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -101545,38 +99016,34 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates a managed instance group using the information that you specify - * in the request. - * This operation is marked as DONE when the group is patched - * even if the instances in the group are still in the process of being - * patched. You must separately verify the status of the individual instances - * with thelistManagedInstances - * method. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. - * - * If you update your group to specify a new template or instance - * configuration, it's possible that your intended specification for each VM - * in the group is different from the current state of that VM. To learn how - * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in - * a MIG. + * Deletes the specified, inactive resize request. Requests that are still + * active cannot be deleted. Deleting request does not delete instances that + * were provisioned previously. * @example * ```js * // Before running the sample: @@ -101608,8 +99075,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.patch({ - * // The name of the instance group manager. + * const res = await compute.instanceGroupManagerResizeRequests.delete({ + * // The name of the managed instance group. + * // The name should conform to RFC1035 or be a resource ID. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -101628,55 +99096,12 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // you want to create the managed instance group. + * // The name of the resize request to delete. + * // The name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "allInstancesConfig": {}, - * // "autoHealingPolicies": [], - * // "baseInstanceName": "my_baseInstanceName", - * // "creationTimestamp": "my_creationTimestamp", - * // "currentActions": {}, - * // "description": "my_description", - * // "distributionPolicy": {}, - * // "failoverAction": "my_failoverAction", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "instanceFlexibilityPolicy": {}, - * // "instanceGroup": "my_instanceGroup", - * // "instanceLifecyclePolicy": {}, - * // "instanceTemplate": "my_instanceTemplate", - * // "kind": "my_kind", - * // "listManagedInstancesResults": "my_listManagedInstancesResults", - * // "multiMig": "my_multiMig", - * // "name": "my_name", - * // "namedPorts": [], - * // "params": {}, - * // "region": "my_region", - * // "resourcePolicies": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceAccount": "my_serviceAccount", - * // "standbyPolicy": {}, - * // "statefulPolicy": {}, - * // "status": {}, - * // "targetPools": [], - * // "targetSize": 0, - * // "targetSizePolicy": {}, - * // "targetSizeUnit": "my_targetSizeUnit", - * // "targetStoppedSize": 0, - * // "targetSuspendedSize": 0, - * // "updatePolicy": {}, - * // "versions": [], - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -101725,32 +99150,32 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Instancegroupmanagers$Patch, + delete( + params?: Params$Resource$Instancegroupmanagerresizerequests$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancegroupmanagers$Patch, + delete( + params: Params$Resource$Instancegroupmanagerresizerequests$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Patch + | Params$Resource$Instancegroupmanagerresizerequests$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -101766,12 +99191,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Patch; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Patch; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Delete; options = {}; } @@ -101786,16 +99212,26 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { @@ -101809,9 +99245,7 @@ export namespace compute_alpha { } /** - * Inserts or patches per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Returns all of the details about the specified resize request. * @example * ```js * // Before running the sample: @@ -101835,6 +99269,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -101843,71 +99278,39 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.patchPerInstanceConfigs({ + * const res = await compute.instanceGroupManagerResizeRequests.get({ * // The name of the managed instance group. - * // It should conform to RFC1035. + * // Name should conform to RFC1035 or be a resource ID. * instanceGroupManager: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. + * // The name of the resize request. + * // Name should conform to RFC1035 or be a resource ID. + * resizeRequest: 'placeholder-value', + * // Name of the href="/compute/docs/regions-zones/#available"\>zone + * // scoping this request. Name should conform to RFC1035. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "perInstanceConfigs": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "count": 0, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "instances": [], * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "queuingPolicy": {}, * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "state": "my_state", + * // "status": {}, * // "zone": "my_zone" * // } * } @@ -101924,56 +99327,61 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, options: StreamMethodOptions ): Promise>; - patchPerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + get( + params?: Params$Resource$Instancegroupmanagerresizerequests$Get, options?: MethodOptions - ): Promise>; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + ): Promise< + GaxiosResponseWithHTTP2 + >; + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagerresizerequests$Get, + callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - patchPerInstanceConfigs( + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + params = {} as Params$Resource$Instancegroupmanagerresizerequests$Get; options = {}; } @@ -101988,42 +99396,43 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests/{resizeRequest}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instanceGroupManager', + 'resizeRequest', + ], + pathParams: [ + 'instanceGroupManager', + 'project', + 'resizeRequest', + 'zone', + ], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Flags the specified VM instances in the managed instance group to be - * immediately recreated. Each instance is recreated using the group's current - * configuration. This operation is marked as DONE when the flag - * is set even if the instances have not yet been recreated. You must - * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking - * the status of managed instances. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. - * - * You can specify a maximum of 1000 instances with this method per request. + * Creates a new resize request that starts provisioning VMs immediately + * or queues VM creation. * @example * ```js * // Before running the sample: @@ -102055,12 +99464,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.recreateInstances({ - * // The name of the managed instance group. + * const res = await compute.instanceGroupManagerResizeRequests.insert({ + * // The name of the managed instance group to which the resize request will + * // be added. + * // Name should conform to RFC1035 or be a resource ID. * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance recreation even if it's - * // configured for the instances. - * noGracefulShutdown: '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])?))', @@ -102079,14 +99487,30 @@ export namespace compute_alpha { * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', * // The name of thezone where the managed - * // instance group is located. + * // instance group is located and where the resize request will be created. + * // Name should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "count": 0, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "instances": [], + * // "kind": "my_kind", + * // "name": "my_name", + * // "queuingPolicy": {}, + * // "region": "my_region", + * // "requestedRunDuration": {}, + * // "resizeBy": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "status": {}, + * // "zone": "my_zone" * // } * }, * }); @@ -102137,32 +99561,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: StreamMethodOptions ): Promise>; - recreateInstances( - params?: Params$Resource$Instancegroupmanagers$Recreateinstances, + insert( + params?: Params$Resource$Instancegroupmanagerresizerequests$Insert, options?: MethodOptions ): Promise>; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - recreateInstances( - params: Params$Resource$Instancegroupmanagers$Recreateinstances, + insert( + params: Params$Resource$Instancegroupmanagerresizerequests$Insert, callback: BodyResponseCallback ): void; - recreateInstances(callback: BodyResponseCallback): void; - recreateInstances( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Recreateinstances + | Params$Resource$Instancegroupmanagerresizerequests$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102178,12 +99602,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Recreateinstances; + {}) as Params$Resource$Instancegroupmanagerresizerequests$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Recreateinstances; + params = + {} as Params$Resource$Instancegroupmanagerresizerequests$Insert; options = {}; } @@ -102198,7 +99623,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -102221,29 +99646,8 @@ export namespace compute_alpha { } /** - * Resizes the managed instance group. If you increase the size, the group - * creates new instances using the current instance template. If you decrease - * the size, the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group - * has not yet added or deleted any instances. You must separately - * verify the status of the creating or deleting - * actions with thelistmanagedinstances - * method. - * - * When resizing down, the instance group arbitrarily chooses the order in - * which VMs are deleted. The group takes into account some VM attributes when - * making the selection including: - * - * + The status of the VM instance. - * + The health of the VM instance. - * + The instance template version the VM is based on. - * + For regional managed instance groups, the location of the VM instance. - * - * This list is subject to change. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is removed or deleted. + * Retrieves a list of resize requests that are contained in the + * managed instance group. * @example * ```js * // Before running the sample: @@ -102267,6 +99671,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -102275,72 +99680,120 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resize({ - * // The name of the managed instance group. - * instanceGroupManager: '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])?))', - * // 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. + * const res = await compute.instanceGroupManagerResizeRequests.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. * // - * // For example, consider a situation where you make an initial request and - * // the request times out. If you make the request again with the same - * // request ID, the server can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The number of running instances that the managed instance group should - * // maintain at any given time. The group automatically adds or removes - * // instances to maintain the number of instances specified by this parameter. - * size: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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; + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. The name should conform to RFC1035. + * instanceGroupManager: '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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. The name should conform to RFC1035. + * zone: '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; * }); * * ``` @@ -102350,53 +99803,61 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resize( - params: Params$Resource$Instancegroupmanagers$Resize, + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, options: StreamMethodOptions ): Promise>; - resize( - params?: Params$Resource$Instancegroupmanagers$Resize, + list( + params?: Params$Resource$Instancegroupmanagerresizerequests$List, options?: MethodOptions - ): Promise>; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resize( - params: Params$Resource$Instancegroupmanagers$Resize, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagerresizerequests$List, + callback: BodyResponseCallback ): void; - resize(callback: BodyResponseCallback): void; - resize( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resize - | BodyResponseCallback + | Params$Resource$Instancegroupmanagerresizerequests$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resize; + {}) as Params$Resource$Instancegroupmanagerresizerequests$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resize; + params = {} as Params$Resource$Instancegroupmanagerresizerequests$List; options = {}; } @@ -102411,45 +99872,301 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeRequests' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager', 'size'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Cancel extends StandardParameters { /** - * Resizes the managed instance group with advanced configuration options like - * disabling creation retries. This is an extended version of theresize method. + * The name of the managed instance group. + * The name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * If you increase the size of the instance group, the group creates new - * instances using the current instance template. If you decrease the size, - * the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group - * has not yet added or deleted any instances. You must separately - * verify the status of the creating,creatingWithoutRetries, or deleting actions with - * the get - * orlistmanagedinstances + * 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). + */ + requestId?: string; + /** + * The name of the resize request to cancel. + * The name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Delete extends StandardParameters { + /** + * The name of the managed instance group. + * The name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the resize request to delete. + * The name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Get extends StandardParameters { + /** + * The name of the managed instance group. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the resize request. + * Name should conform to RFC1035 or be a resource ID. + */ + resizeRequest?: string; + /** + * Name of the href="/compute/docs/regions-zones/#available"\>zone + * scoping this request. Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$Insert extends StandardParameters { + /** + * The name of the managed instance group to which the resize request will + * be added. + * Name should conform to RFC1035 or be a resource ID. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located and where the resize request will be created. + * Name should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagerResizeRequest; + } + export interface Params$Resource$Instancegroupmanagerresizerequests$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. The name should conform to RFC1035. + */ + instanceGroupManager?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. The name should conform to RFC1035. + */ + zone?: string; + } + + export class Resource$Instancegroupmanagers { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Flags the specified instances to be removed from the + * managed instance group. Abandoning an instance does not delete the + * instance, but it does remove the instance from any target pools that are + * applied by the managed instance group. This method reduces thetargetSize of the managed instance group by the + * number of instances that you abandon. This operation is marked asDONE when the action is scheduled even if the instances have + * not yet been removed from the group. You must separately verify the + * status of the abandoning action with thelistmanagedinstances * method. * * If the group is part of a backend * service that has enabled * connection draining, it can take up to 60 seconds after the connection * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per request. * @example * ```js * // Before running the sample: @@ -102481,7 +100198,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resizeAdvanced({ + * const res = await compute.instanceGroupManagers.abandonInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. @@ -102509,9 +100226,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "noCreationRetries": false, - * // "scaleInProtection": false, - * // "targetSize": 0 + * // "instances": [] * // } * }, * }); @@ -102562,32 +100277,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resizeAdvanced( - params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, options: StreamMethodOptions ): Promise>; - resizeAdvanced( - params?: Params$Resource$Instancegroupmanagers$Resizeadvanced, + abandonInstances( + params?: Params$Resource$Instancegroupmanagers$Abandoninstances, options?: MethodOptions ): Promise>; - resizeAdvanced( - params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resizeAdvanced( - params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resizeAdvanced( - params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + abandonInstances( + params: Params$Resource$Instancegroupmanagers$Abandoninstances, callback: BodyResponseCallback ): void; - resizeAdvanced(callback: BodyResponseCallback): void; - resizeAdvanced( + abandonInstances(callback: BodyResponseCallback): void; + abandonInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resizeadvanced + | Params$Resource$Instancegroupmanagers$Abandoninstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -102603,12 +100318,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resizeadvanced; + {}) as Params$Resource$Instancegroupmanagers$Abandoninstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resizeadvanced; + params = {} as Params$Resource$Instancegroupmanagers$Abandoninstances; options = {}; } @@ -102623,7 +100338,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -102646,22 +100361,10 @@ export namespace compute_alpha { } /** - * Flags the specified instances in the managed instance group to be - * resumed. This method increases thetargetSize and decreases the targetSuspendedSize - * of the managed instance group by the number of instances that you resume. - * The resumeInstances operation is marked DONE if - * the resumeInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are suspended. For - * example, if an instance was previously suspended using the suspendInstances - * method, it can be resumed using the resumeInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are resumed. + * Retrieves the list of managed instance groups and groups them by zone. * - * You can specify a maximum of 1000 instances with this method per request. + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -102685,6 +100388,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -102693,70 +100397,121 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.resumeInstances({ - * // The name of the managed instance group. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.instanceGroupManagers.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', * // 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -102772,53 +100527,61 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, options: StreamMethodOptions ): Promise>; - resumeInstances( - params?: Params$Resource$Instancegroupmanagers$Resumeinstances, + aggregatedList( + params?: Params$Resource$Instancegroupmanagers$Aggregatedlist, options?: MethodOptions - ): Promise>; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - resumeInstances( - params: Params$Resource$Instancegroupmanagers$Resumeinstances, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancegroupmanagers$Aggregatedlist, + callback: BodyResponseCallback ): void; - resumeInstances(callback: BodyResponseCallback): void; - resumeInstances( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Resumeinstances - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Resumeinstances; + {}) as Params$Resource$Instancegroupmanagers$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Resumeinstances; + params = {} as Params$Resource$Instancegroupmanagers$Aggregatedlist; options = {}; } @@ -102833,32 +100596,33 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' + '/compute/alpha/projects/{project}/aggregated/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Motifies the autohealing policy for the instances in this managed - * instance group. - * [Deprecated] This method is deprecated. UseinstanceGroupManagers.patch instead. + * Applies changes to selected instances on the managed instance group. + * This method can be used to apply new overrides and/or new versions. * @example * ```js * // Before running the sample: @@ -102890,35 +100654,27 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setAutoHealingPolicies({ - * // The name of the instance group manager. + * const res = await compute.instanceGroupManagers.applyUpdatesToInstances({ + * // The name of the managed instance group, should conform to RFC1035. * instanceGroupManager: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // The name of thezone + * // where the managed instance group is located. Should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "autoHealingPolicies": [] + * // "allInstances": false, + * // "allowedActions": [], + * // "disruptionMode": "my_disruptionMode", + * // "instances": [], + * // "maximalAction": "my_maximalAction", + * // "minimalAction": "my_minimalAction", + * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" * // } * }, * }); @@ -102969,34 +100725,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setAutoHealingPolicies( - params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: StreamMethodOptions ): Promise>; - setAutoHealingPolicies( - params?: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + applyUpdatesToInstances( + params?: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options?: MethodOptions ): Promise>; - setAutoHealingPolicies( - params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setAutoHealingPolicies( - params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setAutoHealingPolicies( - params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + applyUpdatesToInstances( + params: Params$Resource$Instancegroupmanagers$Applyupdatestoinstances, callback: BodyResponseCallback ): void; - setAutoHealingPolicies( + applyUpdatesToInstances( callback: BodyResponseCallback ): void; - setAutoHealingPolicies( + applyUpdatesToInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Setautohealingpolicies + | Params$Resource$Instancegroupmanagers$Applyupdatestoinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103012,13 +100768,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Setautohealingpolicies; + {}) as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Instancegroupmanagers$Setautohealingpolicies; + {} as Params$Resource$Instancegroupmanagers$Applyupdatestoinstances; options = {}; } @@ -103033,7 +100789,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -103056,9 +100812,7 @@ export namespace compute_alpha { } /** - * Specifies the instance template to use when creating new instances in this - * group. The templates for existing instances in the group do not change - * unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. + * Updates the accelerator topologies configuration. * @example * ```js * // Before running the sample: @@ -103090,38 +100844,41 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setInstanceTemplate({ - * // The name of the managed instance group. - * instanceGroupManager: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. - * zone: 'placeholder-value', + * const res = + * await compute.instanceGroupManagers.configureAcceleratorTopologies({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: '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])?))', + * // 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. + * // + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instanceTemplate": "my_instanceTemplate" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "acceleratorTopologyActions": {}, + * // "acceleratorTopologyConfigurations": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -103169,32 +100926,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + configureAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, options: StreamMethodOptions ): Promise>; - setInstanceTemplate( - params?: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + configureAcceleratorTopologies( + params?: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, options?: MethodOptions ): Promise>; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + configureAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + configureAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setInstanceTemplate( - params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + configureAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Configureacceleratortopologies, callback: BodyResponseCallback ): void; - setInstanceTemplate(callback: BodyResponseCallback): void; - setInstanceTemplate( + configureAcceleratorTopologies( + callback: BodyResponseCallback + ): void; + configureAcceleratorTopologies( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Setinstancetemplate + | Params$Resource$Instancegroupmanagers$Configureacceleratortopologies | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103210,13 +100969,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + {}) as Params$Resource$Instancegroupmanagers$Configureacceleratortopologies; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + {} as Params$Resource$Instancegroupmanagers$Configureacceleratortopologies; options = {}; } @@ -103231,7 +100990,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/configureAcceleratorTopologies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -103254,12 +101013,10 @@ export namespace compute_alpha { } /** - * Modifies the target pools to which all instances in this managed instance - * group are assigned. The target pools automatically apply to all of the - * instances in the managed instance group. This operation is markedDONE when you make the request even if the instances have not - * yet been added to their target pools. The change might take some time to - * apply to all of the instances in the group depending on the size of the - * group. + * Creates instances with per-instance configurations in this managed instance + * group. Instances are created using the current instance template. Thecreate instances operation is marked DONE if thecreateInstances request is successful. The underlying actions + * take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances + * method. * @example * ```js * // Before running the sample: @@ -103291,8 +101048,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.setTargetPools({ + * const res = await compute.instanceGroupManagers.createInstances({ * // The name of the managed instance group. + * // It should conform to RFC1035. * instanceGroupManager: 'placeholder-value', * // Project ID for this request. * project: @@ -103304,23 +101062,22 @@ export namespace compute_alpha { * // 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. + * // request ID was received, and if so, will ignore the second request. * // * // The request ID must be * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "fingerprint": "my_fingerprint", - * // "targetPools": [] + * // "instances": [] * // } * }, * }); @@ -103371,32 +101128,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: StreamMethodOptions ): Promise>; - setTargetPools( - params?: Params$Resource$Instancegroupmanagers$Settargetpools, + createInstances( + params?: Params$Resource$Instancegroupmanagers$Createinstances, options?: MethodOptions ): Promise>; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setTargetPools( - params: Params$Resource$Instancegroupmanagers$Settargetpools, + createInstances( + params: Params$Resource$Instancegroupmanagers$Createinstances, callback: BodyResponseCallback ): void; - setTargetPools(callback: BodyResponseCallback): void; - setTargetPools( + createInstances(callback: BodyResponseCallback): void; + createInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Settargetpools + | Params$Resource$Instancegroupmanagers$Createinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103412,12 +101169,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Settargetpools; + {}) as Params$Resource$Instancegroupmanagers$Createinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Settargetpools; + params = {} as Params$Resource$Instancegroupmanagers$Createinstances; options = {}; } @@ -103432,7 +101189,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -103455,22 +101212,10 @@ export namespace compute_alpha { } /** - * Flags the specified instances in the managed instance group to be - * started. This method increases thetargetSize and decreases the targetStoppedSize - * of the managed instance group by the number of instances that you start. - * The startInstances operation is marked DONE if - * the startInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances - * method. - * - * In this request, you can only specify instances that are stopped. For - * example, if an instance was previously stopped using the stopInstances - * method, it can be started using the startInstances method. - * - * If a health check is attached to the managed instance group, the specified - * instances will be verified as healthy after they are started. - * - * You can specify a maximum of 1000 instances with this method per request. + * Deletes the specified managed instance group and all of the instances + * in that group. Note that the instance group must not belong to a + * backend service. Read + * Deleting an instance group for more information. * @example * ```js * // Before running the sample: @@ -103502,9 +101247,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.startInstances({ - * // The name of the managed instance group. + * const res = await compute.instanceGroupManagers.delete({ + * // The name of the managed instance group to delete. * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance deletion even if it's + * // configured for the instances. + * noGracefulShutdown: '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])?))', @@ -103525,14 +101273,6 @@ export namespace compute_alpha { * // The name of thezone where the managed * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, * }); * console.log(res.data); * @@ -103581,32 +101321,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: StreamMethodOptions ): Promise>; - startInstances( - params?: Params$Resource$Instancegroupmanagers$Startinstances, + delete( + params?: Params$Resource$Instancegroupmanagers$Delete, options?: MethodOptions ): Promise>; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - startInstances( - params: Params$Resource$Instancegroupmanagers$Startinstances, + delete( + params: Params$Resource$Instancegroupmanagers$Delete, callback: BodyResponseCallback ): void; - startInstances(callback: BodyResponseCallback): void; - startInstances( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Startinstances + | Params$Resource$Instancegroupmanagers$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103622,12 +101362,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Startinstances; + {}) as Params$Resource$Instancegroupmanagers$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Startinstances; + params = {} as Params$Resource$Instancegroupmanagers$Delete; options = {}; } @@ -103642,9 +101382,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/startInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options @@ -103665,29 +101405,19 @@ export namespace compute_alpha { } /** - * Flags the specified instances in the managed instance group to be - * immediately stopped. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetStoppedSize - * of the managed instance group by the number of instances that you stop. - * The stopInstances operation is marked DONE if - * the stopInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays stopping the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. + * Flags the specified instances in the managed instance group for immediate + * deletion. The instances are also removed from any target + * pools of which they were a member. This method reduces thetargetSize of the managed instance group by the number of + * instances that you delete. This operation is marked as DONE + * when the action is scheduled even if the instances are still being deleted. + * You must separately verify the status of the deleting action + * with thelistmanagedinstances + * method. * * If the group is part of a backend * service that has enabled * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is stopped. - * - * Stopped instances can be started using the startInstances - * method. + * draining duration has elapsed before the VM instance is removed or deleted. * * You can specify a maximum of 1000 instances with this method per request. * @example @@ -103721,10 +101451,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.stopInstances({ + * const res = await compute.instanceGroupManagers.deleteInstances({ * // The name of the managed instance group. * instanceGroupManager: 'placeholder-value', - * // When set, graceful shutdown is skipped for instance stopping even if it's + * // When set, graceful shutdown is skipped for instance deletion even if it's * // configured for the instances. * noGracefulShutdown: 'placeholder-value', * // Project ID for this request. @@ -103752,8 +101482,9 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "forceStop": false, - * // "instances": [] + * // "instanceNames": [], + * // "instances": [], + * // "skipInstancesOnValidationError": false * // } * }, * }); @@ -103804,32 +101535,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: StreamMethodOptions ): Promise>; - stopInstances( - params?: Params$Resource$Instancegroupmanagers$Stopinstances, + deleteInstances( + params?: Params$Resource$Instancegroupmanagers$Deleteinstances, options?: MethodOptions ): Promise>; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stopInstances( - params: Params$Resource$Instancegroupmanagers$Stopinstances, + deleteInstances( + params: Params$Resource$Instancegroupmanagers$Deleteinstances, callback: BodyResponseCallback ): void; - stopInstances(callback: BodyResponseCallback): void; - stopInstances( + deleteInstances(callback: BodyResponseCallback): void; + deleteInstances( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Stopinstances + | Params$Resource$Instancegroupmanagers$Deleteinstances | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -103845,12 +101576,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Stopinstances; + {}) as Params$Resource$Instancegroupmanagers$Deleteinstances; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Stopinstances; + params = {} as Params$Resource$Instancegroupmanagers$Deleteinstances; options = {}; } @@ -103865,7 +101596,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -103888,31 +101619,8 @@ export namespace compute_alpha { } /** - * Flags the specified instances in the managed instance group to be - * immediately suspended. You can only specify instances that are running in - * this request. This method reduces thetargetSize and increases the targetSuspendedSize - * of the managed instance group by the number of instances that you suspend. - * The suspendInstances operation is marked DONE if - * the suspendInstances request is successful. The underlying - * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances - * method. - * - * If the standbyPolicy.initialDelaySec field is set, the group - * delays suspension of the instances until initialDelaySec have - * passed from instance.creationTimestamp (that is, when the - * instance was created). This delay gives your application time to - * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there - * will be zero delay. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration has elapsed before the VM instance is suspended. - * - * Suspended instances can be resumed using the resumeInstances - * method. - * - * You can specify a maximum of 1000 instances with this method per request. + * Deletes selected per-instance configurations for the managed instance + * group. * @example * ```js * // Before running the sample: @@ -103944,36 +101652,24 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.suspendInstances({ + * const res = await compute.instanceGroupManagers.deletePerInstanceConfigs({ * // The name of the managed instance group. + * // It should conform to RFC1035. * instanceGroupManager: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of thezone where the managed - * // instance group is located. + * // The name of thezone + * // where the managed instance + * // group is located. + * // It should conform to RFC1035. * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "forceSuspend": false, - * // "instances": [] + * // "names": [] * // } * }, * }); @@ -104024,32 +101720,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: StreamMethodOptions ): Promise>; - suspendInstances( - params?: Params$Resource$Instancegroupmanagers$Suspendinstances, + deletePerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options?: MethodOptions ): Promise>; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspendInstances( - params: Params$Resource$Instancegroupmanagers$Suspendinstances, + deletePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs, callback: BodyResponseCallback ): void; - suspendInstances(callback: BodyResponseCallback): void; - suspendInstances( + deletePerInstanceConfigs( + callback: BodyResponseCallback + ): void; + deletePerInstanceConfigs( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Suspendinstances + | Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -104065,12 +101763,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Suspendinstances; + {}) as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Suspendinstances; + params = + {} as Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs; options = {}; } @@ -104085,7 +101784,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -104108,7 +101807,7 @@ export namespace compute_alpha { } /** - * Returns permissions that a caller has on the specified resource. + * Returns all of the details about the specified managed instance group. * @example * ```js * // Before running the sample: @@ -104141,28 +101840,59 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.testIamPermissions({ + * const res = await compute.instanceGroupManagers.get({ + * // The name of the managed instance group. + * instanceGroupManager: '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 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "failoverAction": "my_failoverAction", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "multiMig": "my_multiMig", + * // "name": "my_name", + * // "namedPorts": [], + * // "params": {}, + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceAccount": "my_serviceAccount", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetSizeUnit": "my_targetSizeUnit", + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" * // } * } * @@ -104178,57 +101908,55 @@ export namespace compute_alpha { * @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$Instancegroupmanagers$Testiampermissions, + get( + params: Params$Resource$Instancegroupmanagers$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Instancegroupmanagers$Testiampermissions, + get( + params?: Params$Resource$Instancegroupmanagers$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Instancegroupmanagers$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Instancegroupmanagers$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Instancegroupmanagers$Testiampermissions, + get( + params: Params$Resource$Instancegroupmanagers$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Instancegroupmanagers$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Instancegroupmanagers$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Testiampermissions - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Testiampermissions; + {}) as Params$Resource$Instancegroupmanagers$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Testiampermissions; + params = {} as Params$Resource$Instancegroupmanagers$Get; options = {}; } @@ -104243,41 +101971,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a managed instance group using the information that you specify - * in the request. - * This operation is marked as DONE when the group is updated - * even if the instances in the group have not yet been updated. You must - * separately verify the status of the individual instances with thelistManagedInstances - * method. - * - * If you update your group to specify a new template or instance - * configuration, it's possible that your intended specification for each VM - * in the group is different from the current state of that VM. To learn how - * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in - * a MIG. + * Returns information about available accelerator topologies for a given MIG. * @example * ```js * // Before running the sample: @@ -104301,6 +102018,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104309,9 +102027,178 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.update({ - * // The name of the instance group manager. - * instanceGroupManager: 'placeholder-value', + * const res = + * await compute.instanceGroupManagers.getAvailableAcceleratorTopologies({ + * // Required. 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])?))', + * // Required. The name of the managed instance group. + * // It should conform to RFC1035. + * resourceId: 'placeholder-value', + * // Required. The name of thezone where the managed + * // instance group is located. + * // Name should conform to RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "acceleratorTopologiesInfo": {}, + * // "multiMig": "my_multiMig" + * // } + * } + * + * 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. + */ + getAvailableAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + options: StreamMethodOptions + ): Promise>; + getAvailableAcceleratorTopologies( + params?: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getAvailableAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAvailableAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAvailableAcceleratorTopologies( + params: Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies, + callback: BodyResponseCallback + ): void; + getAvailableAcceleratorTopologies( + callback: BodyResponseCallback + ): void; + getAvailableAcceleratorTopologies( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies; + 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}/zones/{zone}/instanceGroupManagers/{resourceId}/getAvailableAcceleratorTopologies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resourceId'], + pathParams: ['project', 'resourceId', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a managed instance group using the information that you specify + * in the request. After the group is created, instances in the group are + * created using the specified instance template. + * This operation is marked as DONE when the group is created + * even if the instances in the group have not yet been created. You + * must separately verify the status of the individual instances with thelistmanagedinstances + * method. + * + * A managed instance group can have up to 1000 VM instances per group. Please + * contact Cloud Support if you need an increase in + * this limit. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.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])?))', @@ -104426,32 +102313,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Instancegroupmanagers$Update, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Instancegroupmanagers$Update, + insert( + params?: Params$Resource$Instancegroupmanagers$Insert, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Instancegroupmanagers$Update, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Instancegroupmanagers$Update, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Instancegroupmanagers$Update, + insert( + params: Params$Resource$Instancegroupmanagers$Insert, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Update + | Params$Resource$Instancegroupmanagers$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -104467,12 +102354,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Update; + {}) as Params$Resource$Instancegroupmanagers$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroupmanagers$Update; + params = {} as Params$Resource$Instancegroupmanagers$Insert; options = {}; } @@ -104487,16 +102374,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -104510,9 +102397,8 @@ export namespace compute_alpha { } /** - * Inserts or updates per-instance configurations for the managed instance - * group. perInstanceConfig.name serves as a key used to - * distinguish whether to perform insert or patch. + * Retrieves a list of managed instance groups that are contained within the + * specified project and zone. * @example * ```js * // Before running the sample: @@ -104536,6 +102422,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -104544,72 +102431,112 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroupManagers.updatePerInstanceConfigs({ - * // The name of the managed instance group. - * // It should conform to RFC1035. - * instanceGroupManager: 'placeholder-value', + * const res = await compute.instanceGroupManagers.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of thezone - * // where the managed instance group is located. - * // It should conform to RFC1035. + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "perInstanceConfigs": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -104625,56 +102552,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + list( + params: Params$Resource$Instancegroupmanagers$List, options: StreamMethodOptions ): Promise>; - updatePerInstanceConfigs( - params?: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + list( + params?: Params$Resource$Instancegroupmanagers$List, options?: MethodOptions - ): Promise>; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + ): Promise>; + list( + params: Params$Resource$Instancegroupmanagers$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - updatePerInstanceConfigs( - params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagers$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( - callback: BodyResponseCallback + list( + params: Params$Resource$Instancegroupmanagers$List, + callback: BodyResponseCallback ): void; - updatePerInstanceConfigs( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs - | BodyResponseCallback + | Params$Resource$Instancegroupmanagers$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + {}) as Params$Resource$Instancegroupmanagers$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + params = {} as Params$Resource$Instancegroupmanagers$List; options = {}; } @@ -104689,411 +102615,7422 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' + '/compute/alpha/projects/{project}/zones/{zone}/instanceGroupManagers' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroupManager'], - pathParams: ['instanceGroupManager', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Instancegroupmanagers$Abandoninstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * Lists all errors thrown by actions on instances for a given managed + * instance group. The filter and orderBy query + * parameters are not supported. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. + * 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', + * ], + * }); * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * // Do the magic + * const res = await compute.instanceGroupManagers.listErrors({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. + * // It must be a string that meets the requirements in RFC1035, or an + * // unsigned long integer: must match regexp pattern: + * // (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * instanceGroupManager: '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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * // Example response + * // { + * // "items": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } * - * 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 onresource labels. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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) * ``` * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { - /** - * The name of the managed instance group, should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the managed instance group is located. Should conform to RFC1035. + * @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. */ - zone?: string; + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + options: StreamMethodOptions + ): Promise>; + listErrors( + params?: Params$Resource$Instancegroupmanagers$Listerrors, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listErrors( + params: Params$Resource$Instancegroupmanagers$Listerrors, + callback: BodyResponseCallback + ): void; + listErrors( + callback: BodyResponseCallback + ): void; + listErrors( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Listerrors + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Listerrors; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Configureacceleratortopologies extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. - * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Listerrors; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. - * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. - */ - zone?: string; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { - /** - * The name of the managed instance group to delete. - */ - instanceGroupManager?: string; - /** - * When set, graceful shutdown is skipped for instance deletion even if it's - * configured for the instances. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: 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. + * Lists all of the instances in the managed instance group. Each instance + * in the list has a currentAction, which indicates the action + * that the managed instance group is performing on the instance. For example, + * if the group is still creating an instance, the currentAction + * is CREATING. If a previous action failed, the + * list displays the errors for that failed action. The orderBy + * query parameter is not supported. The `pageToken` query parameter is + * supported only if the group's `listManagedInstancesResults` field is set + * to `PAGINATED`. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * When set, graceful shutdown is skipped for instance deletion even if it's - * configured for the instances. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersDeleteInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone - * where the managed instance + * // Do the magic + * const res = await compute.instanceGroupManagers.listManagedInstances({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "managedInstances": [], + * // "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. + */ + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: StreamMethodOptions + ): Promise>; + listManagedInstances( + params?: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listManagedInstances( + params: Params$Resource$Instancegroupmanagers$Listmanagedinstances, + callback: BodyResponseCallback + ): void; + listManagedInstances( + callback: BodyResponseCallback + ): void; + listManagedInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Listmanagedinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Listmanagedinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Listmanagedinstances; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Lists all of the per-instance configurations defined for the managed + * instance group. The orderBy query parameter is not supported. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroupManagers.listPerInstanceConfigs({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the managed instance group. It should conform to RFC1035. + * instanceGroupManager: '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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "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. + */ + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + listPerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Listperinstanceconfigs, + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + listPerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Listperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Listperinstanceconfigs; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates a managed instance group using the information that you specify + * in the request. + * This operation is marked as DONE when the group is patched + * even if the instances in the group are still in the process of being + * patched. You must separately verify the status of the individual instances + * with thelistManagedInstances + * method. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. + * + * If you update your group to specify a new template or instance + * configuration, it's possible that your intended specification for each VM + * in the group is different from the current state of that VM. To learn how + * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in + * a MIG. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.patch({ + * // The name of the instance group manager. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // you want to create the managed instance group. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "failoverAction": "my_failoverAction", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "multiMig": "my_multiMig", + * // "name": "my_name", + * // "namedPorts": [], + * // "params": {}, + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceAccount": "my_serviceAccount", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetSizeUnit": "my_targetSizeUnit", + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Instancegroupmanagers$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Instancegroupmanagers$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Instancegroupmanagers$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Instancegroupmanagers$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Instancegroupmanagers$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$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/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Inserts or patches per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.patchPerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + patchPerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + options?: MethodOptions + ): Promise>; + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs, + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + callback: BodyResponseCallback + ): void; + patchPerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified VM instances in the managed instance group to be + * immediately recreated. Each instance is recreated using the group's current + * configuration. This operation is marked as DONE when the flag + * is set even if the instances have not yet been recreated. You must + * separately verify the status of each instance by checking itscurrentAction field; for more information, see Checking + * the status of managed instances. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * + * You can specify a maximum of 1000 instances with this method per 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.recreateInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance recreation even if it's + * // configured for the instances. + * noGracefulShutdown: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, + options: StreamMethodOptions + ): Promise>; + recreateInstances( + params?: Params$Resource$Instancegroupmanagers$Recreateinstances, + options?: MethodOptions + ): Promise>; + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + recreateInstances( + params: Params$Resource$Instancegroupmanagers$Recreateinstances, + callback: BodyResponseCallback + ): void; + recreateInstances(callback: BodyResponseCallback): void; + recreateInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Recreateinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Recreateinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Recreateinstances; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Resizes the managed instance group. If you increase the size, the group + * creates new instances using the current instance template. If you decrease + * the size, the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group + * has not yet added or deleted any instances. You must separately + * verify the status of the creating or deleting + * actions with thelistmanagedinstances + * method. + * + * When resizing down, the instance group arbitrarily chooses the order in + * which VMs are deleted. The group takes into account some VM attributes when + * making the selection including: + * + * + The status of the VM instance. + * + The health of the VM instance. + * + The instance template version the VM is based on. + * + For regional managed instance groups, the location of the VM instance. + * + * This list is subject to change. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.resize({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The number of running instances that the managed instance group should + * // maintain at any given time. The group automatically adds or removes + * // instances to maintain the number of instances specified by this parameter. + * size: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + resize( + params: Params$Resource$Instancegroupmanagers$Resize, + options: StreamMethodOptions + ): Promise>; + resize( + params?: Params$Resource$Instancegroupmanagers$Resize, + options?: MethodOptions + ): Promise>; + resize( + params: Params$Resource$Instancegroupmanagers$Resize, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resize( + params: Params$Resource$Instancegroupmanagers$Resize, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resize( + params: Params$Resource$Instancegroupmanagers$Resize, + callback: BodyResponseCallback + ): void; + resize(callback: BodyResponseCallback): void; + resize( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Resize + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Resize; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Resize; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager', 'size'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Resizes the managed instance group with advanced configuration options like + * disabling creation retries. This is an extended version of theresize method. + * + * If you increase the size of the instance group, the group creates new + * instances using the current instance template. If you decrease the size, + * the group deletes instances. The resize operation is markedDONE when the resize actions are scheduled even if the group + * has not yet added or deleted any instances. You must separately + * verify the status of the creating,creatingWithoutRetries, or deleting actions with + * the get + * orlistmanagedinstances + * method. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is removed or deleted. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.resizeAdvanced({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "noCreationRetries": false, + * // "scaleInProtection": false, + * // "targetSize": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + resizeAdvanced( + params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + options: StreamMethodOptions + ): Promise>; + resizeAdvanced( + params?: Params$Resource$Instancegroupmanagers$Resizeadvanced, + options?: MethodOptions + ): Promise>; + resizeAdvanced( + params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resizeAdvanced( + params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resizeAdvanced( + params: Params$Resource$Instancegroupmanagers$Resizeadvanced, + callback: BodyResponseCallback + ): void; + resizeAdvanced(callback: BodyResponseCallback): void; + resizeAdvanced( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Resizeadvanced + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Resizeadvanced; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Resizeadvanced; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * resumed. This method increases thetargetSize and decreases the targetSuspendedSize + * of the managed instance group by the number of instances that you resume. + * The resumeInstances operation is marked DONE if + * the resumeInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theRESUMING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are suspended. For + * example, if an instance was previously suspended using the suspendInstances + * method, it can be resumed using the resumeInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are resumed. + * + * You can specify a maximum of 1000 instances with this method per 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.resumeInstances({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, + options: StreamMethodOptions + ): Promise>; + resumeInstances( + params?: Params$Resource$Instancegroupmanagers$Resumeinstances, + options?: MethodOptions + ): Promise>; + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resumeInstances( + params: Params$Resource$Instancegroupmanagers$Resumeinstances, + callback: BodyResponseCallback + ): void; + resumeInstances(callback: BodyResponseCallback): void; + resumeInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Resumeinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Resumeinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Resumeinstances; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resumeInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Motifies the autohealing policy for the instances in this managed + * instance group. + * [Deprecated] This method is deprecated. UseinstanceGroupManagers.patch instead. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.setAutoHealingPolicies({ + * // The name of the instance group manager. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "autoHealingPolicies": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + setAutoHealingPolicies( + params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + options: StreamMethodOptions + ): Promise>; + setAutoHealingPolicies( + params?: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + options?: MethodOptions + ): Promise>; + setAutoHealingPolicies( + params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setAutoHealingPolicies( + params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setAutoHealingPolicies( + params: Params$Resource$Instancegroupmanagers$Setautohealingpolicies, + callback: BodyResponseCallback + ): void; + setAutoHealingPolicies( + callback: BodyResponseCallback + ): void; + setAutoHealingPolicies( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Setautohealingpolicies + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Setautohealingpolicies; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Setautohealingpolicies; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Specifies the instance template to use when creating new instances in this + * group. The templates for existing instances in the group do not change + * unless you run recreateInstances, runapplyUpdatesToInstances, or set the group'supdatePolicy.type to PROACTIVE. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.setInstanceTemplate({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceTemplate": "my_instanceTemplate" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: StreamMethodOptions + ): Promise>; + setInstanceTemplate( + params?: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options?: MethodOptions + ): Promise>; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setInstanceTemplate( + params: Params$Resource$Instancegroupmanagers$Setinstancetemplate, + callback: BodyResponseCallback + ): void; + setInstanceTemplate(callback: BodyResponseCallback): void; + setInstanceTemplate( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Setinstancetemplate + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Setinstancetemplate; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Modifies the target pools to which all instances in this managed instance + * group are assigned. The target pools automatically apply to all of the + * instances in the managed instance group. This operation is markedDONE when you make the request even if the instances have not + * yet been added to their target pools. The change might take some time to + * apply to all of the instances in the group depending on the size of the + * group. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.setTargetPools({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "targetPools": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: StreamMethodOptions + ): Promise>; + setTargetPools( + params?: Params$Resource$Instancegroupmanagers$Settargetpools, + options?: MethodOptions + ): Promise>; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setTargetPools( + params: Params$Resource$Instancegroupmanagers$Settargetpools, + callback: BodyResponseCallback + ): void; + setTargetPools(callback: BodyResponseCallback): void; + setTargetPools( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Settargetpools + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Settargetpools; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Settargetpools; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * started. This method increases thetargetSize and decreases the targetStoppedSize + * of the managed instance group by the number of instances that you start. + * The startInstances operation is marked DONE if + * the startInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTARTING action with thelistmanagedinstances + * method. + * + * In this request, you can only specify instances that are stopped. For + * example, if an instance was previously stopped using the stopInstances + * method, it can be started using the startInstances method. + * + * If a health check is attached to the managed instance group, the specified + * instances will be verified as healthy after they are started. + * + * You can specify a maximum of 1000 instances with this method per 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.startInstances({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: StreamMethodOptions + ): Promise>; + startInstances( + params?: Params$Resource$Instancegroupmanagers$Startinstances, + options?: MethodOptions + ): Promise>; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + startInstances( + params: Params$Resource$Instancegroupmanagers$Startinstances, + callback: BodyResponseCallback + ): void; + startInstances(callback: BodyResponseCallback): void; + startInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Startinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Startinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Startinstances; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/startInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * immediately stopped. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetStoppedSize + * of the managed instance group by the number of instances that you stop. + * The stopInstances operation is marked DONE if + * the stopInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSTOPPING action with thelistmanagedinstances + * method. + * + * If the standbyPolicy.initialDelaySec field is set, the group + * delays stopping the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is stopped. + * + * Stopped instances can be started using the startInstances + * method. + * + * You can specify a maximum of 1000 instances with this method per 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.stopInstances({ + * // The name of the managed instance group. + * instanceGroupManager: 'placeholder-value', + * // When set, graceful shutdown is skipped for instance stopping even if it's + * // configured for the instances. + * noGracefulShutdown: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceStop": false, + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: StreamMethodOptions + ): Promise>; + stopInstances( + params?: Params$Resource$Instancegroupmanagers$Stopinstances, + options?: MethodOptions + ): Promise>; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + stopInstances( + params: Params$Resource$Instancegroupmanagers$Stopinstances, + callback: BodyResponseCallback + ): void; + stopInstances(callback: BodyResponseCallback): void; + stopInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Stopinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Stopinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Stopinstances; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/stopInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Flags the specified instances in the managed instance group to be + * immediately suspended. You can only specify instances that are running in + * this request. This method reduces thetargetSize and increases the targetSuspendedSize + * of the managed instance group by the number of instances that you suspend. + * The suspendInstances operation is marked DONE if + * the suspendInstances request is successful. The underlying + * actions take additional time. You must separately verify the status of theSUSPENDING action with thelistmanagedinstances + * method. + * + * If the standbyPolicy.initialDelaySec field is set, the group + * delays suspension of the instances until initialDelaySec have + * passed from instance.creationTimestamp (that is, when the + * instance was created). This delay gives your application time to + * set itself up and initialize on the instance. If more thaninitialDelaySec seconds have passed sinceinstance.creationTimestamp when this method is called, there + * will be zero delay. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration has elapsed before the VM instance is suspended. + * + * Suspended instances can be resumed using the resumeInstances + * method. + * + * You can specify a maximum of 1000 instances with this method per 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.suspendInstances({ + * // The name of the managed instance group. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone where the managed + * // instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "forceSuspend": false, + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: StreamMethodOptions + ): Promise>; + suspendInstances( + params?: Params$Resource$Instancegroupmanagers$Suspendinstances, + options?: MethodOptions + ): Promise>; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + suspendInstances( + params: Params$Resource$Instancegroupmanagers$Suspendinstances, + callback: BodyResponseCallback + ): void; + suspendInstances(callback: BodyResponseCallback): void; + suspendInstances( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Suspendinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Suspendinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Suspendinstances; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/suspendInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroupManagers.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])?))', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // 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$Instancegroupmanagers$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Instancegroupmanagers$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Instancegroupmanagers$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancegroupmanagers$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancegroupmanagers$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$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/alpha/projects/{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates a managed instance group using the information that you specify + * in the request. + * This operation is marked as DONE when the group is updated + * even if the instances in the group have not yet been updated. You must + * separately verify the status of the individual instances with thelistManagedInstances + * method. + * + * If you update your group to specify a new template or instance + * configuration, it's possible that your intended specification for each VM + * in the group is different from the current state of that VM. To learn how + * to apply an updated configuration to the VMs in a MIG, seeUpdating instances in + * a MIG. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.update({ + * // The name of the instance group manager. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone + * // where you want to create the managed instance group. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allInstancesConfig": {}, + * // "autoHealingPolicies": [], + * // "baseInstanceName": "my_baseInstanceName", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentActions": {}, + * // "description": "my_description", + * // "distributionPolicy": {}, + * // "failoverAction": "my_failoverAction", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "instanceFlexibilityPolicy": {}, + * // "instanceGroup": "my_instanceGroup", + * // "instanceLifecyclePolicy": {}, + * // "instanceTemplate": "my_instanceTemplate", + * // "kind": "my_kind", + * // "listManagedInstancesResults": "my_listManagedInstancesResults", + * // "multiMig": "my_multiMig", + * // "name": "my_name", + * // "namedPorts": [], + * // "params": {}, + * // "region": "my_region", + * // "resourcePolicies": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceAccount": "my_serviceAccount", + * // "standbyPolicy": {}, + * // "statefulPolicy": {}, + * // "status": {}, + * // "targetPools": [], + * // "targetSize": 0, + * // "targetSizePolicy": {}, + * // "targetSizeUnit": "my_targetSizeUnit", + * // "targetStoppedSize": 0, + * // "targetSuspendedSize": 0, + * // "updatePolicy": {}, + * // "versions": [], + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + update( + params: Params$Resource$Instancegroupmanagers$Update, + options: StreamMethodOptions + ): Promise>; + update( + params?: Params$Resource$Instancegroupmanagers$Update, + options?: MethodOptions + ): Promise>; + update( + params: Params$Resource$Instancegroupmanagers$Update, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Instancegroupmanagers$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + update( + params: Params$Resource$Instancegroupmanagers$Update, + callback: BodyResponseCallback + ): void; + update(callback: BodyResponseCallback): void; + update( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Update + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Update; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroupmanagers$Update; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PUT', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Inserts or updates per-instance configurations for the managed instance + * group. perInstanceConfig.name serves as a key used to + * distinguish whether to perform insert or patch. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroupManagers.updatePerInstanceConfigs({ + * // The name of the managed instance group. + * // It should conform to RFC1035. + * instanceGroupManager: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of thezone + * // where the managed instance group is located. + * // It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "perInstanceConfigs": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: StreamMethodOptions + ): Promise>; + updatePerInstanceConfigs( + params?: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options?: MethodOptions + ): Promise>; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + params: Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs, + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + callback: BodyResponseCallback + ): void; + updatePerInstanceConfigs( + paramsOrCallback?: + | Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs; + 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}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroupManager'], + pathParams: ['instanceGroupManager', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Instancegroupmanagers$Abandoninstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersAbandonInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instancegroupmanagers$Applyupdatestoinstances extends StandardParameters { + /** + * The name of the managed instance group, should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the managed instance group is located. Should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersApplyUpdatesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Configureacceleratortopologies extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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. + * + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersConfigureAcceleratorTopologiesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Createinstances extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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. + * + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersCreateInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Delete extends StandardParameters { + /** + * The name of the managed instance group to delete. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Deleteinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance deletion even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersDeleteInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Deleteperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone + * where the managed instance * group is located. * It should conform to RFC1035. */ - zone?: string; + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersDeletePerInstanceConfigsReq; + } + export interface Params$Resource$Instancegroupmanagers$Get extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies extends StandardParameters { + /** + * Required. Project ID for this request. + */ + project?: string; + /** + * Required. The name of the managed instance group. + * It should conform to RFC1035. + */ + resourceId?: string; + /** + * Required. The name of thezone where the managed + * instance group is located. + * Name should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone + * where you want to create the managed instance group. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Instancegroupmanagers$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listerrors extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. + * It must be a string that meets the requirements in RFC1035, or an + * unsigned long integer: must match regexp pattern: + * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + */ + instanceGroupManager?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listmanagedinstances extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. + */ + instanceGroupManager?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Listperinstanceconfigs extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + filter?: string; + /** + * The name of the managed instance group. It should conform to RFC1035. + */ + instanceGroupManager?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Patch extends StandardParameters { + /** + * The name of the instance group manager. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone where + * you want to create the managed instance group. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersPatchPerInstanceConfigsReq; + } + export interface Params$Resource$Instancegroupmanagers$Recreateinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance recreation even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersRecreateInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Resize extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The number of running instances that the managed instance group should + * maintain at any given time. The group automatically adds or removes + * instances to maintain the number of instances specified by this parameter. + */ + size?: number; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + } + export interface Params$Resource$Instancegroupmanagers$Resizeadvanced extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersResizeAdvancedRequest; + } + export interface Params$Resource$Instancegroupmanagers$Resumeinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersResumeInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Setautohealingpolicies extends StandardParameters { + /** + * The name of the instance group manager. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetAutoHealingRequest; + } + export interface Params$Resource$Instancegroupmanagers$Setinstancetemplate extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetInstanceTemplateRequest; + } + export interface Params$Resource$Instancegroupmanagers$Settargetpools extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSetTargetPoolsRequest; + } + export interface Params$Resource$Instancegroupmanagers$Startinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersStartInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Stopinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * When set, graceful shutdown is skipped for instance stopping even if it's + * configured for the instances. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersStopInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Suspendinstances extends StandardParameters { + /** + * The name of the managed instance group. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone where the managed + * instance group is located. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersSuspendInstancesRequest; + } + export interface Params$Resource$Instancegroupmanagers$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Instancegroupmanagers$Update extends StandardParameters { + /** + * The name of the instance group manager. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone + * where you want to create the managed instance group. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManager; + } + export interface Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { + /** + * The name of the managed instance group. + * It should conform to RFC1035. + */ + instanceGroupManager?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of thezone + * where the managed instance group is located. + * It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupManagersUpdatePerInstanceConfigsReq; + } + + export class Resource$Instancegroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Adds a list of instances to the specified instance group. All of the + * instances in the instance group must be in the same network/subnetwork. + * Read + * Adding instances for more information. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroups.addInstances({ + * // The name of the instance group where you are adding instances. + * instanceGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + addInstances( + params: Params$Resource$Instancegroups$Addinstances, + options: StreamMethodOptions + ): Promise>; + addInstances( + params?: Params$Resource$Instancegroups$Addinstances, + options?: MethodOptions + ): Promise>; + addInstances( + params: Params$Resource$Instancegroups$Addinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addInstances( + params: Params$Resource$Instancegroups$Addinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addInstances( + params: Params$Resource$Instancegroups$Addinstances, + callback: BodyResponseCallback + ): void; + addInstances(callback: BodyResponseCallback): void; + addInstances( + paramsOrCallback?: + | Params$Resource$Instancegroups$Addinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Addinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$Addinstances; + 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}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of instance groups and sorts them by zone. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroups.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: '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$Instancegroups$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Instancegroups$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Instancegroups$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Instancegroups$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$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/alpha/projects/{project}/aggregated/instanceGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified instance group. The instances in the group are not + * deleted. Note that instance group must not belong to a backend service. + * Read + * Deleting an instance group for more information. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroups.delete({ + * // The name of the instance group to delete. + * instanceGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Instancegroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Instancegroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Instancegroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Instancegroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Instancegroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Instancegroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$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/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified zonal instance group. Get a list of available zonal + * instance groups by making a list() request. + * + * For managed instance groups, use theinstanceGroupManagers + * or regionInstanceGroupManagers + * methods instead. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroups.get({ + * // The name of the instance group. + * instanceGroup: '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 zone + * // where the instance group is located. + * zone: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namedPorts": [], + * // "network": "my_network", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "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. + */ + get( + params: Params$Resource$Instancegroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Instancegroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Instancegroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instancegroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instancegroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Instancegroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$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/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates an instance group in the specified project 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroups.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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone + * // where you want to create the instance group. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "namedPorts": [], + * // "network": "my_network", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Instancegroups$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Instancegroups$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Instancegroups$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instancegroups$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instancegroups$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Instancegroups$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$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/alpha/projects/{project}/zones/{zone}/instanceGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of zonal instance group resources contained within the + * specified zone. + * + * For managed instance groups, use theinstanceGroupManagers + * or regionInstanceGroupManagers + * methods instead. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroups.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone + * // where the instance group is located. + * zone: '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$Instancegroups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Instancegroups$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Instancegroups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Instancegroups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Instancegroups$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Instancegroups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$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/alpha/projects/{project}/zones/{zone}/instanceGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists the instances in the specified instance group. + * The orderBy query parameter is not supported. + * The filter query parameter is supported, but only for + * expressions that use `eq` (equal) or `ne` (not equal) operators. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroups.listInstances({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // The name of the instance group from which you want to generate a list + * // of included instances. + * instanceGroup: '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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instanceState": "my_instanceState" + * // } + * }, + * }); + * 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. + */ + listInstances( + params: Params$Resource$Instancegroups$Listinstances, + options: StreamMethodOptions + ): Promise>; + listInstances( + params?: Params$Resource$Instancegroups$Listinstances, + options?: MethodOptions + ): Promise>; + listInstances( + params: Params$Resource$Instancegroups$Listinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listInstances( + params: Params$Resource$Instancegroups$Listinstances, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listInstances( + params: Params$Resource$Instancegroups$Listinstances, + callback: BodyResponseCallback + ): void; + listInstances( + callback: BodyResponseCallback + ): void; + listInstances( + paramsOrCallback?: + | Params$Resource$Instancegroups$Listinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Listinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$Listinstances; + 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}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Removes one or more instances from the specified instance group, but does + * not delete those instances. + * + * If the group is part of a backend + * service that has enabled + * connection draining, it can take up to 60 seconds after the connection + * draining duration before the VM instance is removed or deleted. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroups.removeInstances({ + * // The name of the instance group where the specified instances will be + * // removed. + * instanceGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "instances": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, + options: StreamMethodOptions + ): Promise>; + removeInstances( + params?: Params$Resource$Instancegroups$Removeinstances, + options?: MethodOptions + ): Promise>; + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeInstances( + params: Params$Resource$Instancegroups$Removeinstances, + callback: BodyResponseCallback + ): void; + removeInstances(callback: BodyResponseCallback): void; + removeInstances( + paramsOrCallback?: + | Params$Resource$Instancegroups$Removeinstances + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Removeinstances; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$Removeinstances; + 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}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the named ports for the specified instance group. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instanceGroups.setNamedPorts({ + * // The name of the instance group where the named ports are updated. + * instanceGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone + * // where the instance group is located. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "namedPorts": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, + options: StreamMethodOptions + ): Promise>; + setNamedPorts( + params?: Params$Resource$Instancegroups$Setnamedports, + options?: MethodOptions + ): Promise>; + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setNamedPorts( + params: Params$Resource$Instancegroups$Setnamedports, + callback: BodyResponseCallback + ): void; + setNamedPorts(callback: BodyResponseCallback): void; + setNamedPorts( + paramsOrCallback?: + | Params$Resource$Instancegroups$Setnamedports + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Setnamedports; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$Setnamedports; + 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}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instanceGroup'], + pathParams: ['instanceGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersDeletePerInstanceConfigsReq; - } - export interface Params$Resource$Instancegroupmanagers$Get extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of thezone where the managed - * instance group is located. + * 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instanceGroups.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])?))', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // 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. */ - zone?: string; + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Instancegroups$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancegroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instancegroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancegroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancegroups$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/alpha/projects/{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Instancegroupmanagers$Getavailableacceleratortopologies extends StandardParameters { - /** - * Required. Project ID for this request. - */ - project?: string; - /** - * Required. The name of the managed instance group. - * It should conform to RFC1035. - */ - resourceId?: string; + + export interface Params$Resource$Instancegroups$Addinstances extends StandardParameters { /** - * Required. The name of thezone where the managed - * instance group is located. - * Name should conform to RFC1035. + * The name of the instance group where you are adding instances. */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Insert extends StandardParameters { + instanceGroup?: string; /** * Project ID for this request. */ @@ -105116,16 +110053,16 @@ export namespace compute_alpha { requestId?: string; /** * The name of the zone - * where you want to create the managed instance group. + * where the instance group is located. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManager; + requestBody?: Schema$InstanceGroupsAddInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$List extends StandardParameters { + export interface Params$Resource$Instancegroups$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -105187,6 +110124,16 @@ export namespace compute_alpha { * expressions. */ 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`, @@ -105229,129 +110176,90 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * The name of thezone where the managed - * instance group is located. + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. */ - zone?: string; + serviceProjectNumber?: string; } - export interface Params$Resource$Instancegroupmanagers$Listerrors extends StandardParameters { + export interface Params$Resource$Instancegroups$Delete extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * The name of the instance group to delete. + */ + instanceGroup?: string; + /** + * Project ID for this request. + */ + project?: 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, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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. * - * You cannot combine constraints on multiple fields using regular - * expressions. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - filter?: string; + requestId?: string; /** - * The name of the managed instance group. - * It must be a string that meets the requirements in RFC1035, or an - * unsigned long integer: must match regexp pattern: - * (?:[a-z](?:[-a-z0-9]{0,61\}[a-z0-9])?)|1-9{0,19\}. + * The name of the zone + * where the instance group is located. */ - instanceGroupManager?: string; + zone?: string; + } + export interface Params$Resource$Instancegroups$Get extends StandardParameters { /** - * 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`) + * The name of the instance group. */ - maxResults?: number; + instanceGroup?: string; /** - * 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. + * Project ID for this request. */ - orderBy?: string; + project?: 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. + * The name of the zone + * where the instance group is located. */ - pageToken?: string; + zone?: string; + } + export interface Params$Resource$Instancegroups$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; /** - * The name of thezone where the managed - * instance group is located. - * It should conform to RFC1035. + * The name of the zone + * where you want to create the instance group. */ zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroup; } - export interface Params$Resource$Instancegroupmanagers$Listmanagedinstances extends StandardParameters { + export interface Params$Resource$Instancegroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -105413,10 +110321,6 @@ export namespace compute_alpha { * expressions. */ filter?: string; - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -105459,12 +110363,12 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * The name of thezone where the managed - * instance group is located. + * The name of thezone + * where the instance group is located. */ zone?: string; } - export interface Params$Resource$Instancegroupmanagers$Listperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Instancegroups$Listinstances extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -105527,9 +110431,10 @@ export namespace compute_alpha { */ filter?: string; /** - * The name of the managed instance group. It should conform to RFC1035. + * The name of the instance group from which you want to generate a list + * of included instances. */ - instanceGroupManager?: string; + instanceGroup?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -105572,17 +110477,22 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. + * The name of the zone + * where the instance group is located. */ zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceGroupsListInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Patch extends StandardParameters { + export interface Params$Resource$Instancegroups$Removeinstances extends StandardParameters { /** - * The name of the instance group manager. + * The name of the instance group where the specified instances will be + * removed. */ - instanceGroupManager?: string; + instanceGroup?: string; /** * Project ID for this request. */ @@ -105604,22 +110514,21 @@ export namespace compute_alpha { */ requestId?: string; /** - * The name of the zone where - * you want to create the managed instance group. + * The name of the zone + * where the instance group is located. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManager; + requestBody?: Schema$InstanceGroupsRemoveInstancesRequest; } - export interface Params$Resource$Instancegroupmanagers$Patchperinstanceconfigs extends StandardParameters { + export interface Params$Resource$Instancegroups$Setnamedports extends StandardParameters { /** - * The name of the managed instance group. - * It should conform to RFC1035. + * The name of the instance group where the named ports are updated. */ - instanceGroupManager?: string; + instanceGroup?: string; /** * Project ID for this request. */ @@ -105641,493 +110550,1145 @@ export namespace compute_alpha { */ requestId?: string; /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. + * The name of the zone + * where the instance group is located. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceGroupManagersPatchPerInstanceConfigsReq; + requestBody?: Schema$InstanceGroupsSetNamedPortsRequest; } - export interface Params$Resource$Instancegroupmanagers$Recreateinstances extends StandardParameters { + export interface Params$Resource$Instancegroups$Testiampermissions extends StandardParameters { /** - * The name of the managed instance group. + * Project ID for this request. */ - instanceGroupManager?: string; + project?: string; /** - * When set, graceful shutdown is skipped for instance recreation even if it's - * configured for the instances. + * Name or id of the resource for this request. */ - noGracefulShutdown?: boolean; + resource?: string; /** - * Project ID for this request. + * The name of the zone for this request. */ - project?: string; + zone?: 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. + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Instances { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Adds an access config to an instance's network interface. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * 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.instances.addAccessConfig({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface to add to this instance. + * networkInterface: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "externalIpv6": "my_externalIpv6", + * // "externalIpv6PrefixLength": 0, + * // "kind": "my_kind", + * // "name": "my_name", + * // "natIP": "my_natIP", + * // "networkTier": "my_networkTier", + * // "publicDnsName": "my_publicDnsName", + * // "publicPtrDomainName": "my_publicPtrDomainName", + * // "securityPolicy": "my_securityPolicy", + * // "setPublicDns": false, + * // "setPublicPtr": false, + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. */ - requestId?: string; + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, + options: StreamMethodOptions + ): Promise>; + addAccessConfig( + params?: Params$Resource$Instances$Addaccessconfig, + options?: MethodOptions + ): Promise>; + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addAccessConfig( + params: Params$Resource$Instances$Addaccessconfig, + callback: BodyResponseCallback + ): void; + addAccessConfig(callback: BodyResponseCallback): void; + addAccessConfig( + paramsOrCallback?: + | Params$Resource$Instances$Addaccessconfig + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Addaccessconfig; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Addaccessconfig; + 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}/zones/{zone}/instances/{instance}/addAccessConfig' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * The name of thezone where the managed - * instance group is located. + * Adds one dynamic network interface to an active instance. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instances.addNetworkInterface({ + * // The instance name for this request stored as resource_id. + * // Name should conform to RFC1035 or be an unsigned long integer. + * instance: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "accessConfigs": [], + * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], + * // "dns64Eligible": false, + * // "enableVpcScopedDns": false, + * // "fingerprint": "my_fingerprint", + * // "igmpQuery": "my_igmpQuery", + * // "internalIpv6PrefixLength": 0, + * // "ipv6AccessConfigs": [], + * // "ipv6AccessType": "my_ipv6AccessType", + * // "ipv6Address": "my_ipv6Address", + * // "kind": "my_kind", + * // "macAddress": "my_macAddress", + * // "name": "my_name", + * // "nat64Eligible": false, + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkIP": "my_networkIP", + * // "nicType": "my_nicType", + * // "parentNicName": "my_parentNicName", + * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", + * // "stackType": "my_stackType", + * // "subinterfaces": [], + * // "subnetwork": "my_subnetwork", + * // "vlan": 0 + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. */ - zone?: string; + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, + options: StreamMethodOptions + ): Promise>; + addNetworkInterface( + params?: Params$Resource$Instances$Addnetworkinterface, + options?: MethodOptions + ): Promise>; + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addNetworkInterface( + params: Params$Resource$Instances$Addnetworkinterface, + callback: BodyResponseCallback + ): void; + addNetworkInterface(callback: BodyResponseCallback): void; + addNetworkInterface( + paramsOrCallback?: + | Params$Resource$Instances$Addnetworkinterface + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Addnetworkinterface; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Addnetworkinterface; + 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}/zones/{zone}/instances/{instance}/addNetworkInterface' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersRecreateInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Resize extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * Adds existing resource policies to an instance. You can only add one + * policy right now which will be applied to this instance for scheduling live + * migrations. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The number of running instances that the managed instance group should - * maintain at any given time. The group automatically adds or removes - * instances to maintain the number of instances specified by this parameter. - */ - size?: number; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroupmanagers$Resizeadvanced extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersResizeAdvancedRequest; - } - export interface Params$Resource$Instancegroupmanagers$Resumeinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * // Do the magic + * const res = await compute.instances.addResourcePolicies({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * - * 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. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resourcePolicies": [] + * // } + * }, + * }); + * console.log(res.data); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersResumeInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Setautohealingpolicies extends StandardParameters { - /** - * The name of the instance group manager. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. + * ``` + * + * @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. */ - zone?: string; + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, + options: StreamMethodOptions + ): Promise>; + addResourcePolicies( + params?: Params$Resource$Instances$Addresourcepolicies, + options?: MethodOptions + ): Promise>; + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + addResourcePolicies( + params: Params$Resource$Instances$Addresourcepolicies, + callback: BodyResponseCallback + ): void; + addResourcePolicies(callback: BodyResponseCallback): void; + addResourcePolicies( + paramsOrCallback?: + | Params$Resource$Instances$Addresourcepolicies + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Addresourcepolicies; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Addresourcepolicies; + 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}/zones/{zone}/instances/{instance}/addResourcePolicies' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSetAutoHealingRequest; - } - export interface Params$Resource$Instancegroupmanagers$Setinstancetemplate extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * Retrieves an aggregated list of all of the instances in your project + * across all regions and zones. * - * 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 performance of this method degrades when a filter is specified on a + * project that has a very large number of instances. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSetInstanceTemplateRequest; - } - export interface Params$Resource$Instancegroupmanagers$Settargetpools extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSetTargetPoolsRequest; - } - export interface Params$Resource$Instancegroupmanagers$Startinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersStartInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Stopinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * When set, graceful shutdown is skipped for instance stopping even if it's - * configured for the instances. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: 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. + * // Do the magic + * const res = await compute.instances.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersStopInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Suspendinstances extends StandardParameters { - /** - * The name of the managed instance group. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). - */ - requestId?: string; - /** - * The name of thezone where the managed - * instance group is located. + * @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. */ - zone?: string; + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Instances$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Instances$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Instances$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersSuspendInstancesRequest; - } - export interface Params$Resource$Instancegroupmanagers$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$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/alpha/projects/{project}/aggregated/instances' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Instancegroupmanagers$Update extends StandardParameters { - /** - * The name of the instance group manager. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * Attaches an existing Disk resource to an instance. You must first + * create the disk before you can attach it. It is not possible to create + * and attach a disk at the same time. For more information, readAdding a + * persistent disk to your instance. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone - * where you want to create the managed instance group. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManager; - } - export interface Params$Resource$Instancegroupmanagers$Updateperinstanceconfigs extends StandardParameters { - /** - * The name of the managed instance group. - * It should conform to RFC1035. - */ - instanceGroupManager?: string; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of thezone - * where the managed instance group is located. - * It should conform to RFC1035. + * // Do the magic + * const res = await compute.instances.attachDisk({ + * // Whether to force attach the regional disk even if it's currently attached + * // to another instance. If you try to force attach a zonal disk to an + * // instance, you will receive an error. + * forceAttach: 'placeholder-value', + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "architecture": "my_architecture", + * // "autoDelete": false, + * // "boot": false, + * // "deviceName": "my_deviceName", + * // "diskEncryptionKey": {}, + * // "diskSizeGb": "my_diskSizeGb", + * // "forceAttach": false, + * // "guestOsFeatures": [], + * // "index": 0, + * // "initializeParams": {}, + * // "interface": "my_interface", + * // "kind": "my_kind", + * // "licenses": [], + * // "locked": false, + * // "mode": "my_mode", + * // "savedState": "my_savedState", + * // "shieldedInstanceInitialState": {}, + * // "source": "my_source", + * // "type": "my_type" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. */ - zone?: string; + attachDisk( + params: Params$Resource$Instances$Attachdisk, + options: StreamMethodOptions + ): Promise>; + attachDisk( + params?: Params$Resource$Instances$Attachdisk, + options?: MethodOptions + ): Promise>; + attachDisk( + params: Params$Resource$Instances$Attachdisk, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + attachDisk( + params: Params$Resource$Instances$Attachdisk, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + attachDisk( + params: Params$Resource$Instances$Attachdisk, + callback: BodyResponseCallback + ): void; + attachDisk(callback: BodyResponseCallback): void; + attachDisk( + paramsOrCallback?: + | Params$Resource$Instances$Attachdisk + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Attachdisk; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupManagersUpdatePerInstanceConfigsReq; - } + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Attachdisk; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Instancegroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/attachDisk' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Adds a list of instances to the specified instance group. All of the - * instances in the instance group must be in the same network/subnetwork. - * Read - * Adding instances for more information. + * Creates multiple instances. Count specifies the number of instances to + * create. For more information, seeAbout bulk + * creation of VMs. * @example * ```js * // Before running the sample: @@ -106159,9 +111720,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.addInstances({ - * // The name of the instance group where you are adding instances. - * instanceGroup: 'placeholder-value', + * const res = await compute.instances.bulkInsert({ * // 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])?))', @@ -106179,15 +111738,21 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. - * zone: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "instances": [] + * // "count": "my_count", + * // "instanceFlexibilityPolicy": {}, + * // "instanceProperties": {}, + * // "locationPolicy": {}, + * // "minCount": "my_minCount", + * // "namePattern": "my_namePattern", + * // "perInstanceProperties": {}, + * // "sourceInstanceTemplate": "my_sourceInstanceTemplate" * // } * }, * }); @@ -106238,32 +111803,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, options: StreamMethodOptions ): Promise>; - addInstances( - params?: Params$Resource$Instancegroups$Addinstances, + bulkInsert( + params?: Params$Resource$Instances$Bulkinsert, options?: MethodOptions ): Promise>; - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addInstances( - params: Params$Resource$Instancegroups$Addinstances, + bulkInsert( + params: Params$Resource$Instances$Bulkinsert, callback: BodyResponseCallback ): void; - addInstances(callback: BodyResponseCallback): void; - addInstances( + bulkInsert(callback: BodyResponseCallback): void; + bulkInsert( paramsOrCallback?: - | Params$Resource$Instancegroups$Addinstances + | Params$Resource$Instances$Bulkinsert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -106279,12 +111844,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Addinstances; + {}) as Params$Resource$Instances$Bulkinsert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Addinstances; + params = {} as Params$Resource$Instances$Bulkinsert; options = {}; } @@ -106299,7 +111864,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instances/bulkInsert' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -106307,8 +111872,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -106322,10 +111887,8 @@ export namespace compute_alpha { } /** - * Retrieves the list of instance groups and sorts them by zone. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Deletes the specified Instance resource. For more information, seeDeleting + * an instance. * @example * ```js * // Before running the sample: @@ -106349,7 +111912,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -106358,121 +111920,63 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.instances.delete({ + * // Name of the instance resource to delete. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // If set to true, Graceful Shutdown is skipped. + * noGracefulShutdown: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -106488,57 +111992,52 @@ export namespace compute_alpha { * @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$Instancegroups$Aggregatedlist, + delete( + params: Params$Resource$Instances$Delete, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Instancegroups$Aggregatedlist, + delete( + params?: Params$Resource$Instances$Delete, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, + ): Promise>; + delete( + params: Params$Resource$Instances$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Instancegroups$Aggregatedlist, - callback: BodyResponseCallback + delete( + params: Params$Resource$Instances$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + delete( + params: Params$Resource$Instances$Delete, + callback: BodyResponseCallback ): void; - aggregatedList( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instancegroups$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Instances$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Aggregatedlist; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Aggregatedlist; + params = {} as Params$Resource$Instances$Delete; options = {}; } @@ -106553,33 +112052,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/instanceGroups' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified instance group. The instances in the group are not - * deleted. Note that instance group must not belong to a backend service. - * Read - * Deleting an instance group for more information. + * Deletes an access config from an instance's network interface. * @example * ```js * // Before running the sample: @@ -106611,9 +112107,13 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.delete({ - * // The name of the instance group to delete. - * instanceGroup: 'placeholder-value', + * const res = await compute.instances.deleteAccessConfig({ + * // The name of the access config to delete. + * accessConfig: 'placeholder-value', + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface. + * networkInterface: '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])?))', @@ -106631,9 +112131,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. - * zone: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -106682,32 +112181,32 @@ export namespace compute_alpha { * @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$Instancegroups$Delete, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instancegroups$Delete, + deleteAccessConfig( + params?: Params$Resource$Instances$Deleteaccessconfig, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Instancegroups$Delete, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroups$Delete, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instancegroups$Delete, + deleteAccessConfig( + params: Params$Resource$Instances$Deleteaccessconfig, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + deleteAccessConfig(callback: BodyResponseCallback): void; + deleteAccessConfig( paramsOrCallback?: - | Params$Resource$Instancegroups$Delete + | Params$Resource$Instances$Deleteaccessconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -106723,12 +112222,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Delete; + {}) as Params$Resource$Instances$Deleteaccessconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Delete; + params = {} as Params$Resource$Instances$Deleteaccessconfig; options = {}; } @@ -106743,16 +112242,22 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instance', + 'accessConfig', + 'networkInterface', + ], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { @@ -106766,12 +112271,11 @@ export namespace compute_alpha { } /** - * Returns the specified zonal instance group. Get a list of available zonal - * instance groups by making a list() request. - * - * For managed instance groups, use theinstanceGroupManagers - * or regionInstanceGroupManagers - * methods instead. + * Deletes one dynamic network interface from an active instance. + * InstancesDeleteNetworkInterfaceRequest indicates: + * - instance from which to delete, using project+zone+resource_id fields; + * - dynamic network interface to be deleted, using network_interface_name + * field; * @example * ```js * // Before running the sample: @@ -106795,7 +112299,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -106804,33 +112307,63 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.get({ - * // The name of the instance group. - * instanceGroup: 'placeholder-value', + * const res = await compute.instances.deleteNetworkInterface({ + * // The instance name for this request stored as resource_id. + * // Name should conform to RFC1035 or be an unsigned long integer. + * instance: 'placeholder-value', + * // The name of the dynamic network interface to be deleted from the instance. + * networkInterfaceName: '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 zone - * // where the instance group is located. - * zone: '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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "namedPorts": [], - * // "network": "my_network", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "size": 0, - * // "subnetwork": "my_subnetwork", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -106847,53 +112380,55 @@ export namespace compute_alpha { * @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$Instancegroups$Get, + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancegroups$Get, + deleteNetworkInterface( + params?: Params$Resource$Instances$Deletenetworkinterface, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instancegroups$Get, + ): Promise>; + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancegroups$Get, - callback: BodyResponseCallback + deleteNetworkInterface( + params: Params$Resource$Instances$Deletenetworkinterface, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + deleteNetworkInterface( + callback: BodyResponseCallback + ): void; + deleteNetworkInterface( paramsOrCallback?: - | Params$Resource$Instancegroups$Get - | BodyResponseCallback + | Params$Resource$Instances$Deletenetworkinterface + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Get; + {}) as Params$Resource$Instances$Deletenetworkinterface; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Get; + params = {} as Params$Resource$Instances$Deletenetworkinterface; options = {}; } @@ -106908,31 +112443,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/deleteNetworkInterface' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instance', 'networkInterfaceName'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an instance group in the specified project using the - * parameters that are included in the request. + * Detaches a disk from an instance. * @example * ```js * // Before running the sample: @@ -106964,7 +112498,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.insert({ + * const res = await compute.instances.detachDisk({ + * // The device name of the disk to detach. Make a get() request on + * // the instance to view currently attached disks and device names. + * deviceName: 'placeholder-value', + * // Instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -106982,30 +112521,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone - * // where you want to create the instance group. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "namedPorts": [], - * // "network": "my_network", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "size": 0, - * // "subnetwork": "my_subnetwork", - * // "zone": "my_zone" - * // } - * }, + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -107054,32 +112571,32 @@ export namespace compute_alpha { * @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$Instancegroups$Insert, + detachDisk( + params: Params$Resource$Instances$Detachdisk, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instancegroups$Insert, + detachDisk( + params?: Params$Resource$Instances$Detachdisk, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Instancegroups$Insert, + detachDisk( + params: Params$Resource$Instances$Detachdisk, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroups$Insert, + detachDisk( + params: Params$Resource$Instances$Detachdisk, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instancegroups$Insert, + detachDisk( + params: Params$Resource$Instances$Detachdisk, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + detachDisk(callback: BodyResponseCallback): void; + detachDisk( paramsOrCallback?: - | Params$Resource$Instancegroups$Insert + | Params$Resource$Instances$Detachdisk | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -107095,12 +112612,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Insert; + {}) as Params$Resource$Instances$Detachdisk; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Insert; + params = {} as Params$Resource$Instances$Detachdisk; options = {}; } @@ -107115,7 +112632,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/detachDisk' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -107123,8 +112640,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instance', 'deviceName'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { @@ -107138,12 +112655,212 @@ export namespace compute_alpha { } /** - * Retrieves the list of zonal instance group resources contained within the - * specified zone. + * Returns the specified Instance 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * For managed instance groups, use theinstanceGroupManagers - * or regionInstanceGroupManagers - * methods instead. + * 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', + * '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.instances.get({ + * // Name of the instance resource to return. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * // View of the instance. + * view: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "advancedMachineFeatures": {}, + * // "canIpForward": false, + * // "confidentialInstanceConfig": {}, + * // "cpuPlatform": "my_cpuPlatform", + * // "creationTimestamp": "my_creationTimestamp", + * // "deletionProtection": false, + * // "description": "my_description", + * // "disks": [], + * // "displayDevice": {}, + * // "eraseWindowsVssSignature": false, + * // "fingerprint": "my_fingerprint", + * // "guestAccelerators": [], + * // "hostname": "my_hostname", + * // "id": "my_id", + * // "identity": "my_identity", + * // "identityCertificate": false, + * // "instanceEncryptionKey": {}, + * // "keyRevocationActionType": "my_keyRevocationActionType", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastStartTimestamp": "my_lastStartTimestamp", + * // "lastStopTimestamp": "my_lastStopTimestamp", + * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", + * // "machineType": "my_machineType", + * // "metadata": {}, + * // "minCpuPlatform": "my_minCpuPlatform", + * // "name": "my_name", + * // "networkInterfaces": [], + * // "networkPerformanceConfig": {}, + * // "params": {}, + * // "partnerMetadata": {}, + * // "postKeyRevocationActionType": "my_postKeyRevocationActionType", + * // "preservedStateSizeGb": "my_preservedStateSizeGb", + * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", + * // "reservationAffinity": {}, + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduling": {}, + * // "secureTags": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceAccounts": [], + * // "serviceIntegrationSpecs": {}, + * // "shieldedInstanceConfig": {}, + * // "shieldedInstanceIntegrityPolicy": {}, + * // "shieldedVmConfig": {}, + * // "shieldedVmIntegrityPolicy": {}, + * // "sourceMachineImage": "my_sourceMachineImage", + * // "sourceMachineImageEncryptionKey": {}, + * // "startRestricted": false, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "tags": {}, + * // "upcomingMaintenance": {}, + * // "workloadIdentityConfig": {}, + * // "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. + */ + get( + params: Params$Resource$Instances$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Instances$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Instances$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instances$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instances$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Instances$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$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/alpha/projects/{project}/zones/{zone}/instances/{instance}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns effective firewalls applied to an interface of the instance. * @example * ```js * // Before running the sample: @@ -107176,112 +112893,189 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.instances.getEffectiveFirewalls({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the network interface to get the effective firewalls. + * networkInterface: '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 zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "firewallPolicys": [], + * // "firewalls": [], + * // "organizationFirewalls": [] + * // } + * } + * + * 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. + */ + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + options: StreamMethodOptions + ): Promise>; + getEffectiveFirewalls( + params?: Params$Resource$Instances$Geteffectivefirewalls, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + params: Params$Resource$Instances$Geteffectivefirewalls, + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( + paramsOrCallback?: + | Params$Resource$Instances$Geteffectivefirewalls + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Geteffectivefirewalls; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Geteffectivefirewalls; + 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}/zones/{zone}/instances/{instance}/getEffectiveFirewalls' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Returns the specified guest attributes entry. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instances.getGuestAttributes({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone - * // where the instance group is located. - * zone: 'placeholder-value', + * // Specifies the guest attributes path to be queried. + * queryPath: 'placeholder-value', + * // Specifies the key for the guest attributes entry. + * variableKey: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "queryPath": "my_queryPath", + * // "queryValue": {}, * // "selfLink": "my_selfLink", - * // "warning": {} + * // "variableKey": "my_variableKey", + * // "variableValue": "my_variableValue" * // } * } * @@ -107297,53 +113091,55 @@ export namespace compute_alpha { * @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$Instancegroups$List, + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instancegroups$List, + getGuestAttributes( + params?: Params$Resource$Instances$Getguestattributes, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instancegroups$List, + ): Promise>; + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroups$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instancegroups$List, - callback: BodyResponseCallback + getGuestAttributes( + params: Params$Resource$Instances$Getguestattributes, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + getGuestAttributes( + callback: BodyResponseCallback + ): void; + getGuestAttributes( paramsOrCallback?: - | Params$Resource$Instancegroups$List - | BodyResponseCallback + | Params$Resource$Instances$Getguestattributes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$List; + {}) as Params$Resource$Instances$Getguestattributes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$List; + params = {} as Params$Resource$Instances$Getguestattributes; options = {}; } @@ -107358,7 +113154,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -107366,25 +113162,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the instances in the specified instance group. - * The orderBy query parameter is not supported. - * The filter query parameter is supported, but only for - * expressions that use `eq` (equal) or `ne` (not equal) operators. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -107417,123 +113211,25 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.listInstances({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // The name of the instance group from which you want to generate a list - * // of included instances. - * instanceGroup: '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', + * const res = await compute.instances.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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instanceState": "my_instanceState" - * // } - * }, + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -107549,57 +113245,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listInstances( - params: Params$Resource$Instancegroups$Listinstances, + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, options: StreamMethodOptions ): Promise>; - listInstances( - params?: Params$Resource$Instancegroups$Listinstances, + getIamPolicy( + params?: Params$Resource$Instances$Getiampolicy, options?: MethodOptions - ): Promise>; - listInstances( - params: Params$Resource$Instancegroups$Listinstances, + ): Promise>; + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listInstances( - params: Params$Resource$Instancegroups$Listinstances, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listInstances( - params: Params$Resource$Instancegroups$Listinstances, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listInstances( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instances$Getiampolicy, + callback: BodyResponseCallback ): void; - listInstances( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Instancegroups$Listinstances - | BodyResponseCallback + | Params$Resource$Instances$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Listinstances; + {}) as Params$Resource$Instances$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Listinstances; + params = {} as Params$Resource$Instances$Getiampolicy; options = {}; } @@ -107614,36 +113306,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Removes one or more instances from the specified instance group, but does - * not delete those instances. - * - * If the group is part of a backend - * service that has enabled - * connection draining, it can take up to 60 seconds after the connection - * draining duration before the VM instance is removed or deleted. + * Gets partner metadata of the specified instance and namespaces. * @example * ```js * // Before running the sample: @@ -107667,6 +113353,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -107675,71 +113362,23 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.removeInstances({ - * // The name of the instance group where the specified instances will be - * // removed. - * instanceGroup: 'placeholder-value', + * const res = await compute.instances.getPartnerMetadata({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Comma separated partner metadata namespaces. + * namespaces: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instances": [] - * // } - * }, + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "fingerprint": "my_fingerprint", + * // "partnerMetadata": {} * // } * } * @@ -107755,53 +113394,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, + getPartnerMetadata( + params: Params$Resource$Instances$Getpartnermetadata, options: StreamMethodOptions ): Promise>; - removeInstances( - params?: Params$Resource$Instancegroups$Removeinstances, + getPartnerMetadata( + params?: Params$Resource$Instances$Getpartnermetadata, options?: MethodOptions - ): Promise>; - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, + ): Promise>; + getPartnerMetadata( + params: Params$Resource$Instances$Getpartnermetadata, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getPartnerMetadata( + params: Params$Resource$Instances$Getpartnermetadata, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeInstances( - params: Params$Resource$Instancegroups$Removeinstances, - callback: BodyResponseCallback + getPartnerMetadata( + params: Params$Resource$Instances$Getpartnermetadata, + callback: BodyResponseCallback ): void; - removeInstances(callback: BodyResponseCallback): void; - removeInstances( + getPartnerMetadata( + callback: BodyResponseCallback + ): void; + getPartnerMetadata( paramsOrCallback?: - | Params$Resource$Instancegroups$Removeinstances - | BodyResponseCallback + | Params$Resource$Instances$Getpartnermetadata + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Removeinstances; + {}) as Params$Resource$Instances$Getpartnermetadata; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Removeinstances; + params = {} as Params$Resource$Instances$Getpartnermetadata; options = {}; } @@ -107816,30 +113457,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getPartnerMetadata' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the named ports for the specified instance group. + * Returns the screenshot from the specified instance. * @example * ```js * // Before running the sample: @@ -107863,6 +113504,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -107871,71 +113513,21 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.setNamedPorts({ - * // The name of the instance group where the named ports are updated. - * instanceGroup: 'placeholder-value', + * const res = await compute.instances.getScreenshot({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone - * // where the instance group is located. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "fingerprint": "my_fingerprint", - * // "namedPorts": [] - * // } - * }, + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "contents": "my_contents", + * // "kind": "my_kind" * // } * } * @@ -107951,53 +113543,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, options: StreamMethodOptions ): Promise>; - setNamedPorts( - params?: Params$Resource$Instancegroups$Setnamedports, + getScreenshot( + params?: Params$Resource$Instances$Getscreenshot, options?: MethodOptions - ): Promise>; - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, + ): Promise>; + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setNamedPorts( - params: Params$Resource$Instancegroups$Setnamedports, - callback: BodyResponseCallback + getScreenshot( + params: Params$Resource$Instances$Getscreenshot, + callback: BodyResponseCallback ): void; - setNamedPorts(callback: BodyResponseCallback): void; - setNamedPorts( + getScreenshot(callback: BodyResponseCallback): void; + getScreenshot( paramsOrCallback?: - | Params$Resource$Instancegroups$Setnamedports - | BodyResponseCallback + | Params$Resource$Instances$Getscreenshot + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Setnamedports; + {}) as Params$Resource$Instances$Getscreenshot; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Setnamedports; + params = {} as Params$Resource$Instances$Getscreenshot; options = {}; } @@ -108012,30 +113604,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/screenshot' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instanceGroup'], - pathParams: ['instanceGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Returns the last 1 MB of serial port output from the specified instance. * @example * ```js * // Before running the sample: @@ -108068,28 +113660,44 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceGroups.testIamPermissions({ + * const res = await compute.instances.getSerialPortOutput({ + * // Name of the instance for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Specifies which COM or serial port to retrieve data from. + * port: '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 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}', + * // Specifies the starting byte position of the output to return. To start with + * // the first byte of output to the specified port, omit this field or set it + * // to `0`. + * // + * // If the output for that byte position is available, this field matches the + * // `start` parameter sent with the request. If the amount of serial console + * // output exceeds the size of the buffer (1 MB), the oldest output is + * // discarded and is no longer available. If the requested start position + * // refers to discarded output, the start position is adjusted to the oldest + * // output still available, and the adjusted start position is returned as the + * // `start` property value. + * // + * // You can also provide a negative start position, which translates to the + * // most recent number of bytes written to the serial port. For example, -3 is + * // interpreted as the most recent 3 bytes written to the serial console. Note + * // that the negative start is bounded by the retained buffer size, and the + * // returned serial console output will not exceed the max buffer size. + * start: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "contents": "my_contents", + * // "kind": "my_kind", + * // "next": "my_next", + * // "selfLink": "my_selfLink", + * // "start": "my_start" * // } * } * @@ -108105,57 +113713,55 @@ export namespace compute_alpha { * @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$Instancegroups$Testiampermissions, + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Instancegroups$Testiampermissions, + getSerialPortOutput( + params?: Params$Resource$Instances$Getserialportoutput, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, + ): Promise>; + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Instancegroups$Testiampermissions, - callback: BodyResponseCallback + getSerialPortOutput( + params: Params$Resource$Instances$Getserialportoutput, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getSerialPortOutput( + callback: BodyResponseCallback ): void; - testIamPermissions( + getSerialPortOutput( paramsOrCallback?: - | Params$Resource$Instancegroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Instances$Getserialportoutput + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancegroups$Testiampermissions; + {}) as Params$Resource$Instances$Getserialportoutput; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancegroups$Testiampermissions; + params = {} as Params$Resource$Instances$Getserialportoutput; options = {}; } @@ -108170,591 +113776,335 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/serialPort' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Instancegroups$Addinstances extends StandardParameters { - /** - * The name of the instance group where you are adding instances. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsAddInstancesRequest; - } - export interface Params$Resource$Instancegroups$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instancegroups$Delete extends StandardParameters { - /** - * The name of the instance group to delete. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroups$Get extends StandardParameters { - /** - * The name of the instance group. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroups$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone - * where you want to create the instance group. - */ - zone?: string; /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroup; - } - export interface Params$Resource$Instancegroups$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of thezone - * where the instance group is located. - */ - zone?: string; - } - export interface Params$Resource$Instancegroups$Listinstances extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` + * Returns the Shielded Instance Identity of an instance + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * 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', + * ], + * }); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Do the magic + * const res = await compute.instances.getShieldedInstanceIdentity({ + * // Name or id of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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 zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * The name of the instance group from which you want to generate a list - * of included instances. - */ - instanceGroup?: 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. + * // Example response + * // { + * // "eccP256EncryptionKey": {}, + * // "eccP256SigningKey": {}, + * // "encryptionKey": {}, + * // "kind": "my_kind", + * // "signingKey": {} + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of the zone - * where the instance group is located. + * @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. */ - zone?: string; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + options: StreamMethodOptions + ): Promise>; + getShieldedInstanceIdentity( + params?: Params$Resource$Instances$Getshieldedinstanceidentity, + options?: MethodOptions + ): Promise>; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + params: Params$Resource$Instances$Getshieldedinstanceidentity, + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + callback: BodyResponseCallback + ): void; + getShieldedInstanceIdentity( + paramsOrCallback?: + | Params$Resource$Instances$Getshieldedinstanceidentity + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getshieldedinstanceidentity; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getshieldedinstanceidentity; + 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}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsListInstancesRequest; - } - export interface Params$Resource$Instancegroups$Removeinstances extends StandardParameters { - /** - * The name of the instance group where the specified instances will be - * removed. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: 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. + * Returns the Shielded VM Identity of an instance + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsRemoveInstancesRequest; - } - export interface Params$Resource$Instancegroups$Setnamedports extends StandardParameters { - /** - * The name of the instance group where the named ports are updated. - */ - instanceGroup?: string; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone - * where the instance group is located. + * // Do the magic + * const res = await compute.instances.getShieldedVmIdentity({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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 zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "encryptionKey": {}, + * // "kind": "my_kind", + * // "signingKey": {} + * // } + * } + * + * 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. */ - zone?: string; + getShieldedVmIdentity( + params: Params$Resource$Instances$Getshieldedvmidentity, + options: StreamMethodOptions + ): Promise>; + getShieldedVmIdentity( + params?: Params$Resource$Instances$Getshieldedvmidentity, + options?: MethodOptions + ): Promise>; + getShieldedVmIdentity( + params: Params$Resource$Instances$Getshieldedvmidentity, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getShieldedVmIdentity( + params: Params$Resource$Instances$Getshieldedvmidentity, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getShieldedVmIdentity( + params: Params$Resource$Instances$Getshieldedvmidentity, + callback: BodyResponseCallback + ): void; + getShieldedVmIdentity( + callback: BodyResponseCallback + ): void; + getShieldedVmIdentity( + paramsOrCallback?: + | Params$Resource$Instances$Getshieldedvmidentity + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Getshieldedvmidentity; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$InstanceGroupsSetNamedPortsRequest; - } - export interface Params$Resource$Instancegroups$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instances$Getshieldedvmidentity; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Instances { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getShieldedVmIdentity' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Adds an access config to an instance's network interface. + * Retrieves details of a specific VM extension state. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -108778,6 +114128,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -108786,82 +114137,28 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.addAccessConfig({ - * // The instance name for this request. + * const res = await compute.instances.getVmExtensionState({ + * // The name of the extension to get the state for. + * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name or id of the instance resource. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface to add to this instance. - * networkInterface: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. + * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "externalIpv6": "my_externalIpv6", - * // "externalIpv6PrefixLength": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "natIP": "my_natIP", - * // "networkTier": "my_networkTier", - * // "publicDnsName": "my_publicDnsName", - * // "publicPtrDomainName": "my_publicPtrDomainName", - * // "securityPolicy": "my_securityPolicy", - * // "setPublicDns": false, - * // "setPublicPtr": false, - * // "type": "my_type" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", + * // "enforcementMsg": "my_enforcementMsg", + * // "enforcementState": "my_enforcementState", + * // "healthMsg": "my_healthMsg", + * // "healthStatus": "my_healthStatus", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "policyId": "my_policyId", + * // "version": "my_version" * // } * } * @@ -108877,53 +114174,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, + getVmExtensionState( + params: Params$Resource$Instances$Getvmextensionstate, options: StreamMethodOptions ): Promise>; - addAccessConfig( - params?: Params$Resource$Instances$Addaccessconfig, + getVmExtensionState( + params?: Params$Resource$Instances$Getvmextensionstate, options?: MethodOptions - ): Promise>; - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, + ): Promise>; + getVmExtensionState( + params: Params$Resource$Instances$Getvmextensionstate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVmExtensionState( + params: Params$Resource$Instances$Getvmextensionstate, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addAccessConfig( - params: Params$Resource$Instances$Addaccessconfig, - callback: BodyResponseCallback + getVmExtensionState( + params: Params$Resource$Instances$Getvmextensionstate, + callback: BodyResponseCallback ): void; - addAccessConfig(callback: BodyResponseCallback): void; - addAccessConfig( + getVmExtensionState( + callback: BodyResponseCallback + ): void; + getVmExtensionState( paramsOrCallback?: - | Params$Resource$Instances$Addaccessconfig - | BodyResponseCallback + | Params$Resource$Instances$Getvmextensionstate + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Addaccessconfig; + {}) as Params$Resource$Instances$Getvmextensionstate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Addaccessconfig; + params = {} as Params$Resource$Instances$Getvmextensionstate; options = {}; } @@ -108938,30 +114237,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/vmExtensionStates/{extensionName}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instance', 'extensionName'], + pathParams: ['extensionName', 'instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Adds one dynamic network interface to an active instance. + * Creates an instance resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -108993,10 +114293,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.addNetworkInterface({ - * // The instance name for this request stored as resource_id. - * // Name should conform to RFC1035 or be an unsigned long integer. - * instance: 'placeholder-value', + * const res = await compute.instances.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])?))', @@ -109014,6 +114311,26 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Specifies instance template to create the instance. + * // + * // This field is optional. It can be a full or partial URL. For example, the + * // following are all valid URLs to an instance template: + * // + * // + * // - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate + * // - projects/project/global/instanceTemplates/instanceTemplate + * // - global/instanceTemplates/instanceTemplate + * sourceInstanceTemplate: 'placeholder-value', + * // Specifies the machine image to use to create the instance. + * // + * // This field is optional. It can be a full or partial URL. For example, the + * // following are all valid URLs to a machine image: + * // + * // + * // - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage + * // - projects/project/global/global/machineImages/machineImage + * // - global/machineImages/machineImage + * sourceMachineImage: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * @@ -109021,32 +114338,65 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "accessConfigs": [], - * // "aliasIpRanges": [], - * // "aliasIpv6Ranges": [], - * // "dns64Eligible": false, - * // "enableVpcScopedDns": false, + * // "advancedMachineFeatures": {}, + * // "canIpForward": false, + * // "confidentialInstanceConfig": {}, + * // "cpuPlatform": "my_cpuPlatform", + * // "creationTimestamp": "my_creationTimestamp", + * // "deletionProtection": false, + * // "description": "my_description", + * // "disks": [], + * // "displayDevice": {}, + * // "eraseWindowsVssSignature": false, * // "fingerprint": "my_fingerprint", - * // "igmpQuery": "my_igmpQuery", - * // "internalIpv6PrefixLength": 0, - * // "ipv6AccessConfigs": [], - * // "ipv6AccessType": "my_ipv6AccessType", - * // "ipv6Address": "my_ipv6Address", + * // "guestAccelerators": [], + * // "hostname": "my_hostname", + * // "id": "my_id", + * // "identity": "my_identity", + * // "identityCertificate": false, + * // "instanceEncryptionKey": {}, + * // "keyRevocationActionType": "my_keyRevocationActionType", * // "kind": "my_kind", - * // "macAddress": "my_macAddress", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "lastStartTimestamp": "my_lastStartTimestamp", + * // "lastStopTimestamp": "my_lastStopTimestamp", + * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", + * // "machineType": "my_machineType", + * // "metadata": {}, + * // "minCpuPlatform": "my_minCpuPlatform", * // "name": "my_name", - * // "nat64Eligible": false, - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkIP": "my_networkIP", - * // "nicType": "my_nicType", - * // "parentNicName": "my_parentNicName", - * // "queueCount": 0, - * // "serviceClassId": "my_serviceClassId", - * // "stackType": "my_stackType", - * // "subinterfaces": [], - * // "subnetwork": "my_subnetwork", - * // "vlan": 0 + * // "networkInterfaces": [], + * // "networkPerformanceConfig": {}, + * // "params": {}, + * // "partnerMetadata": {}, + * // "postKeyRevocationActionType": "my_postKeyRevocationActionType", + * // "preservedStateSizeGb": "my_preservedStateSizeGb", + * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", + * // "reservationAffinity": {}, + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduling": {}, + * // "secureTags": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceAccounts": [], + * // "serviceIntegrationSpecs": {}, + * // "shieldedInstanceConfig": {}, + * // "shieldedInstanceIntegrityPolicy": {}, + * // "shieldedVmConfig": {}, + * // "shieldedVmIntegrityPolicy": {}, + * // "sourceMachineImage": "my_sourceMachineImage", + * // "sourceMachineImageEncryptionKey": {}, + * // "startRestricted": false, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "tags": {}, + * // "upcomingMaintenance": {}, + * // "workloadIdentityConfig": {}, + * // "zone": "my_zone" * // } * }, * }); @@ -109097,32 +114447,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, + insert( + params: Params$Resource$Instances$Insert, options: StreamMethodOptions ): Promise>; - addNetworkInterface( - params?: Params$Resource$Instances$Addnetworkinterface, + insert( + params?: Params$Resource$Instances$Insert, options?: MethodOptions ): Promise>; - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, + insert( + params: Params$Resource$Instances$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, + insert( + params: Params$Resource$Instances$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addNetworkInterface( - params: Params$Resource$Instances$Addnetworkinterface, + insert( + params: Params$Resource$Instances$Insert, callback: BodyResponseCallback ): void; - addNetworkInterface(callback: BodyResponseCallback): void; - addNetworkInterface( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instances$Addnetworkinterface + | Params$Resource$Instances$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -109137,13 +114487,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Addnetworkinterface; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Addnetworkinterface; + params = {} as Params$Resource$Instances$Insert; options = {}; } @@ -109158,7 +114507,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/addNetworkInterface' + '/compute/alpha/projects/{project}/zones/{zone}/instances' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -109166,8 +114515,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -109181,9 +114530,8 @@ export namespace compute_alpha { } /** - * Adds existing resource policies to an instance. You can only add one - * policy right now which will be applied to this instance for scheduling live - * migrations. + * Retrieves the list of instances contained within + * the specified zone. * @example * ```js * // Before running the sample: @@ -109207,6 +114555,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -109215,69 +114564,113 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.addResourcePolicies({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instances.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // View of the instance. + * view: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "resourcePolicies": [] - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -109293,53 +114686,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, + list( + params: Params$Resource$Instances$List, options: StreamMethodOptions ): Promise>; - addResourcePolicies( - params?: Params$Resource$Instances$Addresourcepolicies, + list( + params?: Params$Resource$Instances$List, options?: MethodOptions - ): Promise>; - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, + ): Promise>; + list( + params: Params$Resource$Instances$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Instances$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addResourcePolicies( - params: Params$Resource$Instances$Addresourcepolicies, - callback: BodyResponseCallback + list( + params: Params$Resource$Instances$List, + callback: BodyResponseCallback ): void; - addResourcePolicies(callback: BodyResponseCallback): void; - addResourcePolicies( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instances$Addresourcepolicies - | BodyResponseCallback + | Params$Resource$Instances$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Addresourcepolicies; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Addresourcepolicies; + params = {} as Params$Resource$Instances$List; options = {}; } @@ -109354,37 +114746,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies' + '/compute/alpha/projects/{project}/zones/{zone}/instances' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves an aggregated list of all of the instances in your project - * across all regions and zones. - * - * The performance of this method degrades when a filter is specified on a - * project that has a very large number of instances. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Retrieves a list of resources that refer to the VM instance specified in + * the request. For example, if the VM instance is part of a managed or + * unmanaged instance group, the referrers list includes the instance group. + * For more information, readViewing + * referrers to VM instances. * @example * ```js * // Before running the sample: @@ -109417,7 +114806,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.aggregatedList({ + * const res = await compute.instances.listReferrers({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -109477,14 +114866,9 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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', + * // Name of the target instance scoping this request, or '-' if the + * // request should span over all instances in the container. + * instance: '-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 @@ -109517,20 +114901,18 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -109547,57 +114929,57 @@ export namespace compute_alpha { * @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$Instances$Aggregatedlist, + listReferrers( + params: Params$Resource$Instances$Listreferrers, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Instances$Aggregatedlist, + listReferrers( + params?: Params$Resource$Instances$Listreferrers, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, + ): Promise>; + listReferrers( + params: Params$Resource$Instances$Listreferrers, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, + listReferrers( + params: Params$Resource$Instances$Listreferrers, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Instances$Aggregatedlist, - callback: BodyResponseCallback + listReferrers( + params: Params$Resource$Instances$Listreferrers, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + listReferrers( + callback: BodyResponseCallback ): void; - aggregatedList( + listReferrers( paramsOrCallback?: - | Params$Resource$Instances$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Instances$Listreferrers + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Aggregatedlist; + {}) as Params$Resource$Instances$Listreferrers; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Aggregatedlist; + params = {} as Params$Resource$Instances$Listreferrers; options = {}; } @@ -109611,7 +114993,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/aggregated/instances' + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/referrers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -109619,25 +115002,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Attaches an existing Disk resource to an instance. You must first - * create the disk before you can attach it. It is not possible to create - * and attach a disk at the same time. For more information, readAdding a - * persistent disk to your instance. + * Lists all VM extensions states for a specific instance. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -109661,6 +115042,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -109669,91 +115051,115 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.attachDisk({ - * // Whether to force attach the regional disk even if it's currently attached - * // to another instance. If you try to force attach a zonal disk to an - * // instance, you will receive an error. - * forceAttach: 'placeholder-value', - * // The instance name for this request. + * const res = await compute.instances.listVmExtensionStates({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // Name of the target instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the zone for this request. + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // Required. Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "architecture": "my_architecture", - * // "autoDelete": false, - * // "boot": false, - * // "deviceName": "my_deviceName", - * // "diskEncryptionKey": {}, - * // "diskSizeGb": "my_diskSizeGb", - * // "forceAttach": false, - * // "guestOsFeatures": [], - * // "index": 0, - * // "initializeParams": {}, - * // "interface": "my_interface", - * // "kind": "my_kind", - * // "licenses": [], - * // "locked": false, - * // "mode": "my_mode", - * // "savedState": "my_savedState", - * // "shieldedInstanceInitialState": {}, - * // "source": "my_source", - * // "type": "my_type" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -109769,53 +115175,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachDisk( - params: Params$Resource$Instances$Attachdisk, + listVmExtensionStates( + params: Params$Resource$Instances$Listvmextensionstates, options: StreamMethodOptions ): Promise>; - attachDisk( - params?: Params$Resource$Instances$Attachdisk, + listVmExtensionStates( + params?: Params$Resource$Instances$Listvmextensionstates, options?: MethodOptions - ): Promise>; - attachDisk( - params: Params$Resource$Instances$Attachdisk, + ): Promise>; + listVmExtensionStates( + params: Params$Resource$Instances$Listvmextensionstates, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachDisk( - params: Params$Resource$Instances$Attachdisk, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listVmExtensionStates( + params: Params$Resource$Instances$Listvmextensionstates, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - attachDisk( - params: Params$Resource$Instances$Attachdisk, - callback: BodyResponseCallback + listVmExtensionStates( + params: Params$Resource$Instances$Listvmextensionstates, + callback: BodyResponseCallback ): void; - attachDisk(callback: BodyResponseCallback): void; - attachDisk( + listVmExtensionStates( + callback: BodyResponseCallback + ): void; + listVmExtensionStates( paramsOrCallback?: - | Params$Resource$Instances$Attachdisk - | BodyResponseCallback + | Params$Resource$Instances$Listvmextensionstates + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Attachdisk; + {}) as Params$Resource$Instances$Listvmextensionstates; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Attachdisk; + params = {} as Params$Resource$Instances$Listvmextensionstates; options = {}; } @@ -109830,9 +115240,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/attachDisk' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/vmExtensionStates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -109843,19 +115253,19 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates multiple instances. Count specifies the number of instances to - * create. For more information, seeAbout bulk - * creation of VMs. + * Patches partner metadata of the specified instance. * @example * ```js * // Before running the sample: @@ -109887,7 +115297,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.bulkInsert({ + * const res = await compute.instances.patchPartnerMetadata({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -109912,14 +115324,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "count": "my_count", - * // "instanceFlexibilityPolicy": {}, - * // "instanceProperties": {}, - * // "locationPolicy": {}, - * // "minCount": "my_minCount", - * // "namePattern": "my_namePattern", - * // "perInstanceProperties": {}, - * // "sourceInstanceTemplate": "my_sourceInstanceTemplate" + * // "fingerprint": "my_fingerprint", + * // "partnerMetadata": {} * // } * }, * }); @@ -109970,32 +115376,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, + patchPartnerMetadata( + params: Params$Resource$Instances$Patchpartnermetadata, options: StreamMethodOptions ): Promise>; - bulkInsert( - params?: Params$Resource$Instances$Bulkinsert, + patchPartnerMetadata( + params?: Params$Resource$Instances$Patchpartnermetadata, options?: MethodOptions ): Promise>; - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, + patchPartnerMetadata( + params: Params$Resource$Instances$Patchpartnermetadata, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, + patchPartnerMetadata( + params: Params$Resource$Instances$Patchpartnermetadata, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - bulkInsert( - params: Params$Resource$Instances$Bulkinsert, + patchPartnerMetadata( + params: Params$Resource$Instances$Patchpartnermetadata, callback: BodyResponseCallback ): void; - bulkInsert(callback: BodyResponseCallback): void; - bulkInsert( + patchPartnerMetadata( + callback: BodyResponseCallback + ): void; + patchPartnerMetadata( paramsOrCallback?: - | Params$Resource$Instances$Bulkinsert + | Params$Resource$Instances$Patchpartnermetadata | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110011,12 +115419,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Bulkinsert; + {}) as Params$Resource$Instances$Patchpartnermetadata; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Bulkinsert; + params = {} as Params$Resource$Instances$Patchpartnermetadata; options = {}; } @@ -110031,7 +115439,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/bulkInsert' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/patchPartnerMetadata' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -110039,8 +115447,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { @@ -110054,8 +115462,7 @@ export namespace compute_alpha { } /** - * Deletes the specified Instance resource. For more information, seeDeleting - * an instance. + * Perform a manual maintenance on the instance. * @example * ```js * // Before running the sample: @@ -110087,11 +115494,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.delete({ - * // Name of the instance resource to delete. + * const res = await compute.instances.performMaintenance({ + * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // If set to true, Graceful Shutdown is skipped. - * noGracefulShutdown: '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])?))', @@ -110159,32 +115564,32 @@ export namespace compute_alpha { * @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$Instances$Delete, + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Instances$Delete, + performMaintenance( + params?: Params$Resource$Instances$Performmaintenance, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Instances$Delete, + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instances$Delete, + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Instances$Delete, + performMaintenance( + params: Params$Resource$Instances$Performmaintenance, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + performMaintenance(callback: BodyResponseCallback): void; + performMaintenance( paramsOrCallback?: - | Params$Resource$Instances$Delete + | Params$Resource$Instances$Performmaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110199,12 +115604,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Performmaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Delete; + params = {} as Params$Resource$Instances$Performmaintenance; options = {}; } @@ -110219,9 +115625,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/performMaintenance' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options @@ -110242,7 +115648,7 @@ export namespace compute_alpha { } /** - * Deletes an access config from an instance's network interface. + * Removes resource policies from an instance. * @example * ```js * // Before running the sample: @@ -110274,13 +115680,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.deleteAccessConfig({ - * // The name of the access config to delete. - * accessConfig: 'placeholder-value', + * const res = await compute.instances.removeResourcePolicies({ * // The instance name for this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface. - * networkInterface: '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])?))', @@ -110300,6 +115702,14 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "resourcePolicies": [] + * // } + * }, * }); * console.log(res.data); * @@ -110348,32 +115758,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, options: StreamMethodOptions ): Promise>; - deleteAccessConfig( - params?: Params$Resource$Instances$Deleteaccessconfig, + removeResourcePolicies( + params?: Params$Resource$Instances$Removeresourcepolicies, options?: MethodOptions ): Promise>; - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteAccessConfig( - params: Params$Resource$Instances$Deleteaccessconfig, + removeResourcePolicies( + params: Params$Resource$Instances$Removeresourcepolicies, callback: BodyResponseCallback ): void; - deleteAccessConfig(callback: BodyResponseCallback): void; - deleteAccessConfig( + removeResourcePolicies( + callback: BodyResponseCallback + ): void; + removeResourcePolicies( paramsOrCallback?: - | Params$Resource$Instances$Deleteaccessconfig + | Params$Resource$Instances$Removeresourcepolicies | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110389,12 +115801,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Deleteaccessconfig; + {}) as Params$Resource$Instances$Removeresourcepolicies; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Deleteaccessconfig; + params = {} as Params$Resource$Instances$Removeresourcepolicies; options = {}; } @@ -110409,7 +115821,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -110417,13 +115829,7 @@ export namespace compute_alpha { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instance', - 'accessConfig', - 'networkInterface', - ], + requiredParams: ['project', 'zone', 'instance'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -110438,11 +115844,7 @@ export namespace compute_alpha { } /** - * Deletes one dynamic network interface from an active instance. - * InstancesDeleteNetworkInterfaceRequest indicates: - * - instance from which to delete, using project+zone+resource_id fields; - * - dynamic network interface to be deleted, using network_interface_name - * field; + * Mark the host as faulty and try to restart the instance on a new host. * @example * ```js * // Before running the sample: @@ -110474,12 +115876,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.deleteNetworkInterface({ - * // The instance name for this request stored as resource_id. - * // Name should conform to RFC1035 or be an unsigned long integer. - * instance: 'placeholder-value', - * // The name of the dynamic network interface to be deleted from the instance. - * networkInterfaceName: 'placeholder-value', + * const res = await compute.instances.reportHostAsFaulty({ + * // Name of the instance scoping this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -110499,6 +115898,16 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "actionHint": "my_actionHint", + * // "disruptionSchedule": "my_disruptionSchedule", + * // "faultReasons": [] + * // } + * }, * }); * console.log(res.data); * @@ -110546,35 +115955,33 @@ export namespace compute_alpha { * @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. - */ - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, + */ + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, options: StreamMethodOptions ): Promise>; - deleteNetworkInterface( - params?: Params$Resource$Instances$Deletenetworkinterface, + reportHostAsFaulty( + params?: Params$Resource$Instances$Reporthostasfaulty, options?: MethodOptions ): Promise>; - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNetworkInterface( - params: Params$Resource$Instances$Deletenetworkinterface, - callback: BodyResponseCallback - ): void; - deleteNetworkInterface( + reportHostAsFaulty( + params: Params$Resource$Instances$Reporthostasfaulty, callback: BodyResponseCallback ): void; - deleteNetworkInterface( + reportHostAsFaulty(callback: BodyResponseCallback): void; + reportHostAsFaulty( paramsOrCallback?: - | Params$Resource$Instances$Deletenetworkinterface + | Params$Resource$Instances$Reporthostasfaulty | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110590,12 +115997,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Deletenetworkinterface; + {}) as Params$Resource$Instances$Reporthostasfaulty; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Deletenetworkinterface; + params = {} as Params$Resource$Instances$Reporthostasfaulty; options = {}; } @@ -110610,7 +116017,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/deleteNetworkInterface' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -110618,7 +116025,7 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterfaceName'], + requiredParams: ['project', 'zone', 'instance'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -110633,7 +116040,9 @@ export namespace compute_alpha { } /** - * Detaches a disk from an instance. + * Performs a reset on the instance. This is a hard reset. The VM + * does not do a graceful shutdown. For more information, seeResetting + * an instance. * @example * ```js * // Before running the sample: @@ -110665,11 +116074,8 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.detachDisk({ - * // The device name of the disk to detach. Make a get() request on - * // the instance to view currently attached disks and device names. - * deviceName: 'placeholder-value', - * // Instance name for this request. + * const res = await compute.instances.reset({ + * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -110738,32 +116144,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachDisk( - params: Params$Resource$Instances$Detachdisk, + reset( + params: Params$Resource$Instances$Reset, options: StreamMethodOptions ): Promise>; - detachDisk( - params?: Params$Resource$Instances$Detachdisk, + reset( + params?: Params$Resource$Instances$Reset, options?: MethodOptions ): Promise>; - detachDisk( - params: Params$Resource$Instances$Detachdisk, + reset( + params: Params$Resource$Instances$Reset, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachDisk( - params: Params$Resource$Instances$Detachdisk, + reset( + params: Params$Resource$Instances$Reset, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachDisk( - params: Params$Resource$Instances$Detachdisk, + reset( + params: Params$Resource$Instances$Reset, callback: BodyResponseCallback ): void; - detachDisk(callback: BodyResponseCallback): void; - detachDisk( + reset(callback: BodyResponseCallback): void; + reset( paramsOrCallback?: - | Params$Resource$Instances$Detachdisk + | Params$Resource$Instances$Reset | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -110778,13 +116184,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Detachdisk; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Reset; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Detachdisk; + params = {} as Params$Resource$Instances$Reset; options = {}; } @@ -110799,7 +116204,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/detachDisk' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/reset' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -110807,7 +116212,7 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instance', 'deviceName'], + requiredParams: ['project', 'zone', 'instance'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -110822,7 +116227,8 @@ export namespace compute_alpha { } /** - * Returns the specified Instance resource. + * Resumes an instance that was suspended using theinstances().suspend + * method. * @example * ```js * // Before running the sample: @@ -110846,7 +116252,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -110855,79 +116260,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.get({ - * // Name of the instance resource to return. + * const res = await compute.instances.resume({ + * // Name of the instance resource to resume. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // View of the instance. - * view: '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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "disks": [], + * // "instanceEncryptionKey": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "advancedMachineFeatures": {}, - * // "canIpForward": false, - * // "confidentialInstanceConfig": {}, - * // "cpuPlatform": "my_cpuPlatform", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deletionProtection": false, * // "description": "my_description", - * // "disks": [], - * // "displayDevice": {}, - * // "eraseWindowsVssSignature": false, - * // "fingerprint": "my_fingerprint", - * // "guestAccelerators": [], - * // "hostname": "my_hostname", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "identity": "my_identity", - * // "identityCertificate": false, - * // "instanceEncryptionKey": {}, - * // "keyRevocationActionType": "my_keyRevocationActionType", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastStartTimestamp": "my_lastStartTimestamp", - * // "lastStopTimestamp": "my_lastStopTimestamp", - * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", - * // "machineType": "my_machineType", - * // "metadata": {}, - * // "minCpuPlatform": "my_minCpuPlatform", * // "name": "my_name", - * // "networkInterfaces": [], - * // "networkPerformanceConfig": {}, - * // "params": {}, - * // "partnerMetadata": {}, - * // "postKeyRevocationActionType": "my_postKeyRevocationActionType", - * // "preservedStateSizeGb": "my_preservedStateSizeGb", - * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", - * // "reservationAffinity": {}, - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "scheduling": {}, - * // "secureTags": [], + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceAccounts": [], - * // "serviceIntegrationSpecs": {}, - * // "shieldedInstanceConfig": {}, - * // "shieldedInstanceIntegrityPolicy": {}, - * // "shieldedVmConfig": {}, - * // "shieldedVmIntegrityPolicy": {}, - * // "sourceMachineImage": "my_sourceMachineImage", - * // "sourceMachineImageEncryptionKey": {}, - * // "startRestricted": false, + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", * // "statusMessage": "my_statusMessage", - * // "tags": {}, - * // "upcomingMaintenance": {}, - * // "workloadIdentityConfig": {}, + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -110944,52 +116339,52 @@ export namespace compute_alpha { * @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$Instances$Get, + resume( + params: Params$Resource$Instances$Resume, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instances$Get, + resume( + params?: Params$Resource$Instances$Resume, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instances$Get, + ): Promise>; + resume( + params: Params$Resource$Instances$Resume, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instances$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + resume( + params: Params$Resource$Instances$Resume, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instances$Get, - callback: BodyResponseCallback + resume( + params: Params$Resource$Instances$Resume, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + resume(callback: BodyResponseCallback): void; + resume( paramsOrCallback?: - | Params$Resource$Instances$Get - | BodyResponseCallback + | Params$Resource$Instances$Resume + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Resume; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Get; + params = {} as Params$Resource$Instances$Resume; options = {}; } @@ -111004,9 +116399,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/resume' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -111017,17 +116412,17 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns effective firewalls applied to an interface of the instance. + * Sends diagnostic interrupt to the instance. * @example * ```js * // Before running the sample: @@ -111051,7 +116446,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111060,11 +116454,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getEffectiveFirewalls({ + * const res = await compute.instances.sendDiagnosticInterrupt({ * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // The name of the network interface to get the effective firewalls. - * networkInterface: 'placeholder-value', + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -111072,13 +116464,6 @@ export namespace compute_alpha { * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); - * - * // Example response - * // { - * // "firewallPolicys": [], - * // "firewalls": [], - * // "organizationFirewalls": [] - * // } * } * * main().catch(e => { @@ -111093,61 +116478,51 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, options: StreamMethodOptions ): Promise>; - getEffectiveFirewalls( - params?: Params$Resource$Instances$Geteffectivefirewalls, + sendDiagnosticInterrupt( + params?: Params$Resource$Instances$Senddiagnosticinterrupt, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, + ): Promise>; + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getEffectiveFirewalls( - params: Params$Resource$Instances$Geteffectivefirewalls, - callback: BodyResponseCallback + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - callback: BodyResponseCallback + sendDiagnosticInterrupt( + params: Params$Resource$Instances$Senddiagnosticinterrupt, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( + sendDiagnosticInterrupt(callback: BodyResponseCallback): void; + sendDiagnosticInterrupt( paramsOrCallback?: - | Params$Resource$Instances$Geteffectivefirewalls - | BodyResponseCallback + | Params$Resource$Instances$Senddiagnosticinterrupt + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback + callback?: BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Geteffectivefirewalls; + {}) as Params$Resource$Instances$Senddiagnosticinterrupt; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Geteffectivefirewalls; + params = {} as Params$Resource$Instances$Senddiagnosticinterrupt; options = {}; } @@ -111162,32 +116537,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], + requiredParams: ['project', 'zone', 'instance'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Returns the specified guest attributes entry. + * Sets deletion protection on the instance. * @example * ```js * // Before running the sample: @@ -111211,7 +116584,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111220,16 +116592,28 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getGuestAttributes({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instances.setDeletionProtection({ + * // Whether the resource should be protected against deletion. + * deletionProtection: '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])?))', - * // Specifies the guest attributes path to be queried. - * queryPath: 'placeholder-value', - * // Specifies the key for the guest attributes entry. - * variableKey: '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). + * requestId: 'placeholder-value', + * // 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}', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -111237,12 +116621,34 @@ export namespace compute_alpha { * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "queryPath": "my_queryPath", - * // "queryValue": {}, + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "variableKey": "my_variableKey", - * // "variableValue": "my_variableValue" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -111258,55 +116664,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, options: StreamMethodOptions ): Promise>; - getGuestAttributes( - params?: Params$Resource$Instances$Getguestattributes, + setDeletionProtection( + params?: Params$Resource$Instances$Setdeletionprotection, options?: MethodOptions - ): Promise>; - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, + ): Promise>; + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getGuestAttributes( - params: Params$Resource$Instances$Getguestattributes, - callback: BodyResponseCallback + setDeletionProtection( + params: Params$Resource$Instances$Setdeletionprotection, + callback: BodyResponseCallback ): void; - getGuestAttributes( - callback: BodyResponseCallback + setDeletionProtection( + callback: BodyResponseCallback ): void; - getGuestAttributes( + setDeletionProtection( paramsOrCallback?: - | Params$Resource$Instances$Getguestattributes - | BodyResponseCallback + | Params$Resource$Instances$Setdeletionprotection + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getguestattributes; + {}) as Params$Resource$Instances$Setdeletionprotection; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getguestattributes; + params = {} as Params$Resource$Instances$Setdeletionprotection; options = {}; } @@ -111321,31 +116727,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Sets the auto-delete flag for a disk attached to an instance. * @example * ```js * // Before running the sample: @@ -111369,7 +116774,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111378,14 +116782,31 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.instances.setDiskAutoDelete({ + * // Whether to auto-delete the disk when the instance is deleted. + * autoDelete: 'placeholder-value', + * // The device name of the disk to modify. Make a get() request + * // on the instance to view currently attached disks and device names. + * deviceName: '\w[\w.-]{0,254}', + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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}', + * // 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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -111393,10 +116814,34 @@ export namespace compute_alpha { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -111412,53 +116857,53 @@ export namespace compute_alpha { * @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$Instances$Getiampolicy, + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Instances$Getiampolicy, + setDiskAutoDelete( + params?: Params$Resource$Instances$Setdiskautodelete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, + ): Promise>; + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Instances$Getiampolicy, - callback: BodyResponseCallback + setDiskAutoDelete( + params: Params$Resource$Instances$Setdiskautodelete, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + setDiskAutoDelete(callback: BodyResponseCallback): void; + setDiskAutoDelete( paramsOrCallback?: - | Params$Resource$Instances$Getiampolicy - | BodyResponseCallback + | Params$Resource$Instances$Setdiskautodelete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getiampolicy; + {}) as Params$Resource$Instances$Setdiskautodelete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getiampolicy; + params = {} as Params$Resource$Instances$Setdiskautodelete; options = {}; } @@ -111473,30 +116918,37 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: [ + 'project', + 'zone', + 'instance', + 'autoDelete', + 'deviceName', + ], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets partner metadata of the specified instance and namespaces. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -111520,7 +116972,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111529,23 +116980,33 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getPartnerMetadata({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Comma separated partner metadata namespaces. - * namespaces: 'placeholder-value', + * const res = await compute.instances.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])?))', + * // 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}', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "fingerprint": "my_fingerprint", - * // "partnerMetadata": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -111561,55 +117022,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getPartnerMetadata( - params: Params$Resource$Instances$Getpartnermetadata, + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, options: StreamMethodOptions ): Promise>; - getPartnerMetadata( - params?: Params$Resource$Instances$Getpartnermetadata, + setIamPolicy( + params?: Params$Resource$Instances$Setiampolicy, options?: MethodOptions - ): Promise>; - getPartnerMetadata( - params: Params$Resource$Instances$Getpartnermetadata, + ): Promise>; + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getPartnerMetadata( - params: Params$Resource$Instances$Getpartnermetadata, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getPartnerMetadata( - params: Params$Resource$Instances$Getpartnermetadata, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getPartnerMetadata( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instances$Setiampolicy, + callback: BodyResponseCallback ): void; - getPartnerMetadata( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Instances$Getpartnermetadata - | BodyResponseCallback + | Params$Resource$Instances$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getpartnermetadata; + {}) as Params$Resource$Instances$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getpartnermetadata; + params = {} as Params$Resource$Instances$Setiampolicy; options = {}; } @@ -111624,30 +117083,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getPartnerMetadata' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the screenshot from the specified instance. + * Sets labels on an instance. To learn more about labels, read theLabeling + * Resources documentation. * @example * ```js * // Before running the sample: @@ -111671,7 +117131,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111680,21 +117139,70 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getScreenshot({ + * const res = await compute.instances.setLabels({ * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "contents": "my_contents", - * // "kind": "my_kind" + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -111710,53 +117218,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, + setLabels( + params: Params$Resource$Instances$Setlabels, options: StreamMethodOptions ): Promise>; - getScreenshot( - params?: Params$Resource$Instances$Getscreenshot, + setLabels( + params?: Params$Resource$Instances$Setlabels, options?: MethodOptions - ): Promise>; - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, + ): Promise>; + setLabels( + params: Params$Resource$Instances$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Instances$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getScreenshot( - params: Params$Resource$Instances$Getscreenshot, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Instances$Setlabels, + callback: BodyResponseCallback ): void; - getScreenshot(callback: BodyResponseCallback): void; - getScreenshot( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Instances$Getscreenshot - | BodyResponseCallback + | Params$Resource$Instances$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getscreenshot; + {}) as Params$Resource$Instances$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getscreenshot; + params = {} as Params$Resource$Instances$Setlabels; options = {}; } @@ -111771,9 +117279,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/screenshot' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -111784,17 +117292,18 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the last 1 MB of serial port output from the specified instance. + * Changes the number and/or type of accelerator for a stopped instance to the + * values specified in the request. * @example * ```js * // Before running the sample: @@ -111818,7 +117327,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111827,44 +117335,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getSerialPortOutput({ - * // Name of the instance for this request. + * const res = await compute.instances.setMachineResources({ + * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Specifies which COM or serial port to retrieve data from. - * port: '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])?))', - * // Specifies the starting byte position of the output to return. To start with - * // the first byte of output to the specified port, omit this field or set it - * // to `0`. + * // 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. * // - * // If the output for that byte position is available, this field matches the - * // `start` parameter sent with the request. If the amount of serial console - * // output exceeds the size of the buffer (1 MB), the oldest output is - * // discarded and is no longer available. If the requested start position - * // refers to discarded output, the start position is adjusted to the oldest - * // output still available, and the adjusted start position is returned as the - * // `start` property value. + * // 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. * // - * // You can also provide a negative start position, which translates to the - * // most recent number of bytes written to the serial port. For example, -3 is - * // interpreted as the most recent 3 bytes written to the serial console. Note - * // that the negative start is bounded by the retained buffer size, and the - * // returned serial console output will not exceed the max buffer size. - * start: 'placeholder-value', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "guestAccelerators": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "contents": "my_contents", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "next": "my_next", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "start": "my_start" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -111880,55 +117413,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, options: StreamMethodOptions ): Promise>; - getSerialPortOutput( - params?: Params$Resource$Instances$Getserialportoutput, + setMachineResources( + params?: Params$Resource$Instances$Setmachineresources, options?: MethodOptions - ): Promise>; - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, + ): Promise>; + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getSerialPortOutput( - params: Params$Resource$Instances$Getserialportoutput, - callback: BodyResponseCallback + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getSerialPortOutput( - callback: BodyResponseCallback + setMachineResources( + params: Params$Resource$Instances$Setmachineresources, + callback: BodyResponseCallback ): void; - getSerialPortOutput( + setMachineResources(callback: BodyResponseCallback): void; + setMachineResources( paramsOrCallback?: - | Params$Resource$Instances$Getserialportoutput - | BodyResponseCallback + | Params$Resource$Instances$Setmachineresources + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getserialportoutput; + {}) as Params$Resource$Instances$Setmachineresources; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getserialportoutput; + params = {} as Params$Resource$Instances$Setmachineresources; options = {}; } @@ -111943,9 +117474,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/serialPort' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -111956,17 +117487,18 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the Shielded Instance Identity of an instance + * Changes the machine type for a stopped instance to the machine + * type specified in the request. * @example * ```js * // Before running the sample: @@ -111990,7 +117522,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -111999,24 +117530,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getShieldedInstanceIdentity({ - * // Name or id of the instance scoping this request. + * const res = await compute.instances.setMachineType({ + * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "machineType": "my_machineType" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "eccP256EncryptionKey": {}, - * // "eccP256SigningKey": {}, - * // "encryptionKey": {}, + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "signingKey": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -112032,57 +117608,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, + setMachineType( + params: Params$Resource$Instances$Setmachinetype, options: StreamMethodOptions ): Promise>; - getShieldedInstanceIdentity( - params?: Params$Resource$Instances$Getshieldedinstanceidentity, + setMachineType( + params?: Params$Resource$Instances$Setmachinetype, options?: MethodOptions - ): Promise>; - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, + ): Promise>; + setMachineType( + params: Params$Resource$Instances$Setmachinetype, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getShieldedInstanceIdentity( - params: Params$Resource$Instances$Getshieldedinstanceidentity, - callback: BodyResponseCallback + setMachineType( + params: Params$Resource$Instances$Setmachinetype, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( - callback: BodyResponseCallback + setMachineType( + params: Params$Resource$Instances$Setmachinetype, + callback: BodyResponseCallback ): void; - getShieldedInstanceIdentity( + setMachineType(callback: BodyResponseCallback): void; + setMachineType( paramsOrCallback?: - | Params$Resource$Instances$Getshieldedinstanceidentity - | BodyResponseCallback + | Params$Resource$Instances$Setmachinetype + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getshieldedinstanceidentity; + {}) as Params$Resource$Instances$Setmachinetype; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getshieldedinstanceidentity; + params = {} as Params$Resource$Instances$Setmachinetype; options = {}; } @@ -112097,9 +117669,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMachineType' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -112110,17 +117682,18 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the Shielded VM Identity of an instance + * Sets metadata for the specified instance to the data included + * in the request. * @example * ```js * // Before running the sample: @@ -112144,7 +117717,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -112153,22 +117725,71 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getShieldedVmIdentity({ + * const res = await compute.instances.setMetadata({ * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "fingerprint": "my_fingerprint", + * // "items": [], + * // "kind": "my_kind" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "encryptionKey": {}, + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "signingKey": {} + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -112184,55 +117805,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getShieldedVmIdentity( - params: Params$Resource$Instances$Getshieldedvmidentity, + setMetadata( + params: Params$Resource$Instances$Setmetadata, options: StreamMethodOptions ): Promise>; - getShieldedVmIdentity( - params?: Params$Resource$Instances$Getshieldedvmidentity, + setMetadata( + params?: Params$Resource$Instances$Setmetadata, options?: MethodOptions - ): Promise>; - getShieldedVmIdentity( - params: Params$Resource$Instances$Getshieldedvmidentity, + ): Promise>; + setMetadata( + params: Params$Resource$Instances$Setmetadata, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getShieldedVmIdentity( - params: Params$Resource$Instances$Getshieldedvmidentity, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getShieldedVmIdentity( - params: Params$Resource$Instances$Getshieldedvmidentity, - callback: BodyResponseCallback + setMetadata( + params: Params$Resource$Instances$Setmetadata, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getShieldedVmIdentity( - callback: BodyResponseCallback + setMetadata( + params: Params$Resource$Instances$Setmetadata, + callback: BodyResponseCallback ): void; - getShieldedVmIdentity( + setMetadata(callback: BodyResponseCallback): void; + setMetadata( paramsOrCallback?: - | Params$Resource$Instances$Getshieldedvmidentity - | BodyResponseCallback + | Params$Resource$Instances$Setmetadata + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getshieldedvmidentity; + {}) as Params$Resource$Instances$Setmetadata; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getshieldedvmidentity; + params = {} as Params$Resource$Instances$Setmetadata; options = {}; } @@ -112247,9 +117866,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/getShieldedVmIdentity' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMetadata' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -112260,18 +117879,20 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves details of a specific VM extension state. - * This is a read-only API. + * Changes the minimum CPU platform that this instance should use. + * This method can only + * be called on a stopped instance. For more information, readSpecifying a + * Minimum CPU Platform. * @example * ```js * // Before running the sample: @@ -112295,7 +117916,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -112304,28 +117924,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.getVmExtensionState({ - * // The name of the extension to get the state for. - * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name or id of the instance resource. + * const res = await compute.instances.setMinCpuPlatform({ + * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 zone for this request. + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "minCpuPlatform": "my_minCpuPlatform" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "enforcementMsg": "my_enforcementMsg", - * // "enforcementState": "my_enforcementState", - * // "healthMsg": "my_healthMsg", - * // "healthStatus": "my_healthStatus", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", * // "name": "my_name", - * // "policyId": "my_policyId", - * // "version": "my_version" + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -112341,55 +118002,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getVmExtensionState( - params: Params$Resource$Instances$Getvmextensionstate, + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, options: StreamMethodOptions ): Promise>; - getVmExtensionState( - params?: Params$Resource$Instances$Getvmextensionstate, + setMinCpuPlatform( + params?: Params$Resource$Instances$Setmincpuplatform, options?: MethodOptions - ): Promise>; - getVmExtensionState( - params: Params$Resource$Instances$Getvmextensionstate, + ): Promise>; + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getVmExtensionState( - params: Params$Resource$Instances$Getvmextensionstate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getVmExtensionState( - params: Params$Resource$Instances$Getvmextensionstate, - callback: BodyResponseCallback + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getVmExtensionState( - callback: BodyResponseCallback + setMinCpuPlatform( + params: Params$Resource$Instances$Setmincpuplatform, + callback: BodyResponseCallback ): void; - getVmExtensionState( + setMinCpuPlatform(callback: BodyResponseCallback): void; + setMinCpuPlatform( paramsOrCallback?: - | Params$Resource$Instances$Getvmextensionstate - | BodyResponseCallback + | Params$Resource$Instances$Setmincpuplatform + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Getvmextensionstate; + {}) as Params$Resource$Instances$Setmincpuplatform; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Getvmextensionstate; + params = {} as Params$Resource$Instances$Setmincpuplatform; options = {}; } @@ -112404,31 +118063,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/vmExtensionStates/{extensionName}' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'extensionName'], - pathParams: ['extensionName', 'instance', 'project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates an instance resource in the specified project using the data - * included in the request. + * Sets name of an instance. * @example * ```js * // Before running the sample: @@ -112460,7 +118118,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.insert({ + * const res = await compute.instances.setName({ + * // The instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -112478,26 +118138,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Specifies instance template to create the instance. - * // - * // This field is optional. It can be a full or partial URL. For example, the - * // following are all valid URLs to an instance template: - * // - * // - * // - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate - * // - projects/project/global/instanceTemplates/instanceTemplate - * // - global/instanceTemplates/instanceTemplate - * sourceInstanceTemplate: 'placeholder-value', - * // Specifies the machine image to use to create the instance. - * // - * // This field is optional. It can be a full or partial URL. For example, the - * // following are all valid URLs to a machine image: - * // - * // - * // - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage - * // - projects/project/global/global/machineImages/machineImage - * // - global/machineImages/machineImage - * sourceMachineImage: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * @@ -112505,65 +118145,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "advancedMachineFeatures": {}, - * // "canIpForward": false, - * // "confidentialInstanceConfig": {}, - * // "cpuPlatform": "my_cpuPlatform", - * // "creationTimestamp": "my_creationTimestamp", - * // "deletionProtection": false, - * // "description": "my_description", - * // "disks": [], - * // "displayDevice": {}, - * // "eraseWindowsVssSignature": false, - * // "fingerprint": "my_fingerprint", - * // "guestAccelerators": [], - * // "hostname": "my_hostname", - * // "id": "my_id", - * // "identity": "my_identity", - * // "identityCertificate": false, - * // "instanceEncryptionKey": {}, - * // "keyRevocationActionType": "my_keyRevocationActionType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastStartTimestamp": "my_lastStartTimestamp", - * // "lastStopTimestamp": "my_lastStopTimestamp", - * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", - * // "machineType": "my_machineType", - * // "metadata": {}, - * // "minCpuPlatform": "my_minCpuPlatform", - * // "name": "my_name", - * // "networkInterfaces": [], - * // "networkPerformanceConfig": {}, - * // "params": {}, - * // "partnerMetadata": {}, - * // "postKeyRevocationActionType": "my_postKeyRevocationActionType", - * // "preservedStateSizeGb": "my_preservedStateSizeGb", - * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", - * // "reservationAffinity": {}, - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "scheduling": {}, - * // "secureTags": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceAccounts": [], - * // "serviceIntegrationSpecs": {}, - * // "shieldedInstanceConfig": {}, - * // "shieldedInstanceIntegrityPolicy": {}, - * // "shieldedVmConfig": {}, - * // "shieldedVmIntegrityPolicy": {}, - * // "sourceMachineImage": "my_sourceMachineImage", - * // "sourceMachineImageEncryptionKey": {}, - * // "startRestricted": false, - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "tags": {}, - * // "upcomingMaintenance": {}, - * // "workloadIdentityConfig": {}, - * // "zone": "my_zone" + * // "currentName": "my_currentName", + * // "name": "my_name" * // } * }, * }); @@ -112614,32 +118197,32 @@ export namespace compute_alpha { * @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$Instances$Insert, + setName( + params: Params$Resource$Instances$Setname, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Instances$Insert, + setName( + params?: Params$Resource$Instances$Setname, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Instances$Insert, + setName( + params: Params$Resource$Instances$Setname, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instances$Insert, + setName( + params: Params$Resource$Instances$Setname, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Instances$Insert, + setName( + params: Params$Resource$Instances$Setname, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + setName(callback: BodyResponseCallback): void; + setName( paramsOrCallback?: - | Params$Resource$Instances$Insert + | Params$Resource$Instances$Setname | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -112654,12 +118237,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setname; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Insert; + params = {} as Params$Resource$Instances$Setname; options = {}; } @@ -112674,7 +118258,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setName' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -112682,8 +118266,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { @@ -112697,8 +118281,11 @@ export namespace compute_alpha { } /** - * Retrieves the list of instances contained within - * the specified zone. + * Sets an instance's scheduling options. You can only call this method on astopped instance, + * that is, a VM instance that is in a `TERMINATED` state. SeeInstance Life + * Cycle for more information on the possible instance states. + * For more information about setting scheduling options for a VM, seeSet + * VM host maintenance policy. * @example * ```js * // Before running the sample: @@ -112722,7 +118309,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -112731,113 +118317,92 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.instances.setScheduling({ + * // Instance name for this request. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // View of the instance. - * view: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "automaticRestart": false, + * // "availabilityDomain": 0, + * // "currentCpus": 0, + * // "currentMemoryMb": "my_currentMemoryMb", + * // "gracefulShutdown": {}, + * // "hostErrorTimeoutSeconds": 0, + * // "instanceTerminationAction": "my_instanceTerminationAction", + * // "latencyTolerant": false, + * // "localSsdRecoveryTimeout": {}, + * // "locationHint": "my_locationHint", + * // "maintenanceFreezeDurationHours": 0, + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maxRunDuration": {}, + * // "minNodeCpus": 0, + * // "nodeAffinities": [], + * // "onHostMaintenance": "my_onHostMaintenance", + * // "onInstanceStopAction": {}, + * // "preemptible": false, + * // "preemptionNoticeDuration": {}, + * // "provisioningModel": "my_provisioningModel", + * // "shutdownTimeout": {}, + * // "skipGuestOsShutdown": false, + * // "terminationTime": "my_terminationTime", + * // "windowsLicenseOptimizationMode": "my_windowsLicenseOptimizationMode" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -112853,52 +118418,53 @@ export namespace compute_alpha { * @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$Instances$List, + setScheduling( + params: Params$Resource$Instances$Setscheduling, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instances$List, + setScheduling( + params?: Params$Resource$Instances$Setscheduling, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instances$List, + ): Promise>; + setScheduling( + params: Params$Resource$Instances$Setscheduling, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instances$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setScheduling( + params: Params$Resource$Instances$Setscheduling, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instances$List, - callback: BodyResponseCallback + setScheduling( + params: Params$Resource$Instances$Setscheduling, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + setScheduling(callback: BodyResponseCallback): void; + setScheduling( paramsOrCallback?: - | Params$Resource$Instances$List - | BodyResponseCallback + | Params$Resource$Instances$Setscheduling + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Setscheduling; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$List; + params = {} as Params$Resource$Instances$Setscheduling; options = {}; } @@ -112913,34 +118479,32 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setScheduling' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of resources that refer to the VM instance specified in - * the request. For example, if the VM instance is part of a managed or - * unmanaged instance group, the referrers list includes the instance group. - * For more information, readViewing - * referrers to VM instances. + * Sets the Google Cloud Armor security policy for the specified instance. + * For more information, seeGoogle + * Cloud Armor Overview * @example * ```js * // Before running the sample: @@ -112964,7 +118528,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -112973,114 +118536,71 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.listReferrers({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Name of the target instance scoping this request, or '-' if the - * // request should span over all instances in the container. - * instance: '-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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', + * const res = await compute.instances.setSecurityPolicy({ + * // Name of the Instance resource to which the security policy should be + * // set. The name should conform to RFC1035. + * instance: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate commitments. + * // + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Name of the zone scoping this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkInterfaces": [], + * // "securityPolicy": "my_securityPolicy" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -113096,57 +118616,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listReferrers( - params: Params$Resource$Instances$Listreferrers, + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, options: StreamMethodOptions ): Promise>; - listReferrers( - params?: Params$Resource$Instances$Listreferrers, + setSecurityPolicy( + params?: Params$Resource$Instances$Setsecuritypolicy, options?: MethodOptions - ): Promise>; - listReferrers( - params: Params$Resource$Instances$Listreferrers, + ): Promise>; + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listReferrers( - params: Params$Resource$Instances$Listreferrers, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listReferrers( - params: Params$Resource$Instances$Listreferrers, - callback: BodyResponseCallback + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listReferrers( - callback: BodyResponseCallback + setSecurityPolicy( + params: Params$Resource$Instances$Setsecuritypolicy, + callback: BodyResponseCallback ): void; - listReferrers( + setSecurityPolicy(callback: BodyResponseCallback): void; + setSecurityPolicy( paramsOrCallback?: - | Params$Resource$Instances$Listreferrers - | BodyResponseCallback + | Params$Resource$Instances$Setsecuritypolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Listreferrers; + {}) as Params$Resource$Instances$Setsecuritypolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Listreferrers; + params = {} as Params$Resource$Instances$Setsecuritypolicy; options = {}; } @@ -113161,9 +118677,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/referrers' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setSecurityPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -113174,18 +118690,19 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists all VM extensions states for a specific instance. - * This is a read-only API. + * Sets the service account on the instance. For more information, + * readChanging + * the service account and access scopes for an instance. * @example * ```js * // Before running the sample: @@ -113209,7 +118726,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -113218,115 +118734,70 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.listVmExtensionStates({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * filter: 'placeholder-value', - * // Name of the target instance scoping this request. + * const res = await compute.instances.setServiceAccount({ + * // Name of the instance resource to start. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // Required. Name of the zone for this request. + * // For example, consider a situation where you make an initial request and + * // the request times out. If you make the request again with the same + * // request ID, the server can check if original operation with the same + * // request ID was received, and if so, will ignore the second request. This + * // prevents clients from accidentally creating duplicate commitments. + * // + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "email": "my_email", + * // "scopes": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -113342,57 +118813,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listVmExtensionStates( - params: Params$Resource$Instances$Listvmextensionstates, + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, options: StreamMethodOptions ): Promise>; - listVmExtensionStates( - params?: Params$Resource$Instances$Listvmextensionstates, + setServiceAccount( + params?: Params$Resource$Instances$Setserviceaccount, options?: MethodOptions - ): Promise>; - listVmExtensionStates( - params: Params$Resource$Instances$Listvmextensionstates, + ): Promise>; + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listVmExtensionStates( - params: Params$Resource$Instances$Listvmextensionstates, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listVmExtensionStates( - params: Params$Resource$Instances$Listvmextensionstates, - callback: BodyResponseCallback + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listVmExtensionStates( - callback: BodyResponseCallback + setServiceAccount( + params: Params$Resource$Instances$Setserviceaccount, + callback: BodyResponseCallback ): void; - listVmExtensionStates( + setServiceAccount(callback: BodyResponseCallback): void; + setServiceAccount( paramsOrCallback?: - | Params$Resource$Instances$Listvmextensionstates - | BodyResponseCallback + | Params$Resource$Instances$Setserviceaccount + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Listvmextensionstates; + {}) as Params$Resource$Instances$Setserviceaccount; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Listvmextensionstates; + params = {} as Params$Resource$Instances$Setserviceaccount; options = {}; } @@ -113407,9 +118874,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/vmExtensionStates' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -113420,19 +118887,20 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Patches partner metadata of the specified instance. + * Sets the Shielded Instance integrity policy for an instance. You can + * only use this method on a running instance. This method + * supports PATCH semantics and uses the JSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -113464,8 +118932,8 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.patchPartnerMetadata({ - * // Name of the instance scoping this request. + * const res = await compute.instances.setShieldedInstanceIntegrityPolicy({ + * // Name or id of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -113491,8 +118959,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "fingerprint": "my_fingerprint", - * // "partnerMetadata": {} + * // "updateAutoLearnPolicy": false * // } * }, * }); @@ -113543,34 +119010,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPartnerMetadata( - params: Params$Resource$Instances$Patchpartnermetadata, + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, options: StreamMethodOptions ): Promise>; - patchPartnerMetadata( - params?: Params$Resource$Instances$Patchpartnermetadata, + setShieldedInstanceIntegrityPolicy( + params?: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, options?: MethodOptions ): Promise>; - patchPartnerMetadata( - params: Params$Resource$Instances$Patchpartnermetadata, + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPartnerMetadata( - params: Params$Resource$Instances$Patchpartnermetadata, + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPartnerMetadata( - params: Params$Resource$Instances$Patchpartnermetadata, + setShieldedInstanceIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, callback: BodyResponseCallback ): void; - patchPartnerMetadata( + setShieldedInstanceIntegrityPolicy( callback: BodyResponseCallback ): void; - patchPartnerMetadata( + setShieldedInstanceIntegrityPolicy( paramsOrCallback?: - | Params$Resource$Instances$Patchpartnermetadata + | Params$Resource$Instances$Setshieldedinstanceintegritypolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -113586,12 +119053,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Patchpartnermetadata; + {}) as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Patchpartnermetadata; + params = + {} as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; options = {}; } @@ -113606,9 +119074,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/patchPartnerMetadata' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -113629,7 +119097,10 @@ export namespace compute_alpha { } /** - * Perform a manual maintenance on the instance. + * Sets the Shielded VM integrity policy for a VM instance. You can + * only use this method on a running VM instance. This method + * supports PATCH semantics and uses the JSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -113661,7 +119132,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.performMaintenance({ + * const res = await compute.instances.setShieldedVmIntegrityPolicy({ * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. @@ -113683,198 +119154,12 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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. - */ - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, - options: StreamMethodOptions - ): Promise>; - performMaintenance( - params?: Params$Resource$Instances$Performmaintenance, - options?: MethodOptions - ): Promise>; - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - performMaintenance( - params: Params$Resource$Instances$Performmaintenance, - callback: BodyResponseCallback - ): void; - performMaintenance(callback: BodyResponseCallback): void; - performMaintenance( - paramsOrCallback?: - | Params$Resource$Instances$Performmaintenance - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Performmaintenance; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Performmaintenance; - 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}/zones/{zone}/instances/{instance}/performMaintenance' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Removes resource policies from an instance. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.instances.removeResourcePolicies({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "resourcePolicies": [] + * // "updateAutoLearnPolicy": false * // } * }, * }); @@ -113925,34 +119210,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, + setShieldedVmIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedvmintegritypolicy, options: StreamMethodOptions ): Promise>; - removeResourcePolicies( - params?: Params$Resource$Instances$Removeresourcepolicies, + setShieldedVmIntegrityPolicy( + params?: Params$Resource$Instances$Setshieldedvmintegritypolicy, options?: MethodOptions ): Promise>; - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, + setShieldedVmIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedvmintegritypolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, + setShieldedVmIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedvmintegritypolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeResourcePolicies( - params: Params$Resource$Instances$Removeresourcepolicies, + setShieldedVmIntegrityPolicy( + params: Params$Resource$Instances$Setshieldedvmintegritypolicy, callback: BodyResponseCallback ): void; - removeResourcePolicies( + setShieldedVmIntegrityPolicy( callback: BodyResponseCallback ): void; - removeResourcePolicies( + setShieldedVmIntegrityPolicy( paramsOrCallback?: - | Params$Resource$Instances$Removeresourcepolicies + | Params$Resource$Instances$Setshieldedvmintegritypolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -113968,12 +119253,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Removeresourcepolicies; + {}) as Params$Resource$Instances$Setshieldedvmintegritypolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Removeresourcepolicies; + params = {} as Params$Resource$Instances$Setshieldedvmintegritypolicy; options = {}; } @@ -113988,9 +119273,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setShieldedVmIntegrityPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -114011,7 +119296,8 @@ export namespace compute_alpha { } /** - * Mark the host as faulty and try to restart the instance on a new host. + * Sets network tags + * for the specified instance to the data included in the request. * @example * ```js * // Before running the sample: @@ -114043,7 +119329,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.reportHostAsFaulty({ + * const res = await compute.instances.setTags({ * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. @@ -114070,9 +119356,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "actionHint": "my_actionHint", - * // "disruptionSchedule": "my_disruptionSchedule", - * // "faultReasons": [] + * // "fingerprint": "my_fingerprint", + * // "items": [] * // } * }, * }); @@ -114123,32 +119408,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + setTags( + params: Params$Resource$Instances$Settags, options: StreamMethodOptions ): Promise>; - reportHostAsFaulty( - params?: Params$Resource$Instances$Reporthostasfaulty, + setTags( + params?: Params$Resource$Instances$Settags, options?: MethodOptions ): Promise>; - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + setTags( + params: Params$Resource$Instances$Settags, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + setTags( + params: Params$Resource$Instances$Settags, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reportHostAsFaulty( - params: Params$Resource$Instances$Reporthostasfaulty, + setTags( + params: Params$Resource$Instances$Settags, callback: BodyResponseCallback ): void; - reportHostAsFaulty(callback: BodyResponseCallback): void; - reportHostAsFaulty( + setTags(callback: BodyResponseCallback): void; + setTags( paramsOrCallback?: - | Params$Resource$Instances$Reporthostasfaulty + | Params$Resource$Instances$Settags | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114164,12 +119449,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Reporthostasfaulty; + {}) as Params$Resource$Instances$Settags; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Reporthostasfaulty; + params = {} as Params$Resource$Instances$Settags; options = {}; } @@ -114184,7 +119469,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/reportHostAsFaulty' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setTags' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -114207,9 +119492,8 @@ export namespace compute_alpha { } /** - * Performs a reset on the instance. This is a hard reset. The VM - * does not do a graceful shutdown. For more information, seeResetting - * an instance. + * Simulates a host maintenance event on a VM. For more information, see + * Simulate a host maintenance event. * @example * ```js * // Before running the sample: @@ -114241,7 +119525,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.reset({ + * const res = await compute.instances.simulateMaintenanceEvent({ * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. @@ -114261,6 +119545,9 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Determines whether the customers receive notifications before migration. + * // Only applicable to SF vms. + * withExtendedNotifications: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -114311,32 +119598,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - reset( - params: Params$Resource$Instances$Reset, + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, options: StreamMethodOptions ): Promise>; - reset( - params?: Params$Resource$Instances$Reset, + simulateMaintenanceEvent( + params?: Params$Resource$Instances$Simulatemaintenanceevent, options?: MethodOptions ): Promise>; - reset( - params: Params$Resource$Instances$Reset, + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reset( - params: Params$Resource$Instances$Reset, + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - reset( - params: Params$Resource$Instances$Reset, + simulateMaintenanceEvent( + params: Params$Resource$Instances$Simulatemaintenanceevent, callback: BodyResponseCallback ): void; - reset(callback: BodyResponseCallback): void; - reset( + simulateMaintenanceEvent( + callback: BodyResponseCallback + ): void; + simulateMaintenanceEvent( paramsOrCallback?: - | Params$Resource$Instances$Reset + | Params$Resource$Instances$Simulatemaintenanceevent | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114351,12 +119640,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Reset; + let params = (paramsOrCallback || + {}) as Params$Resource$Instances$Simulatemaintenanceevent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Reset; + params = {} as Params$Resource$Instances$Simulatemaintenanceevent; options = {}; } @@ -114371,7 +119661,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/reset' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -114394,8 +119684,9 @@ export namespace compute_alpha { } /** - * Resumes an instance that was suspended using theinstances().suspend - * method. + * Starts an instance that was stopped using theinstances().stop + * method. For more information, seeRestart an + * instance. * @example * ```js * // Before running the sample: @@ -114427,8 +119718,8 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.resume({ - * // Name of the instance resource to resume. + * const res = await compute.instances.start({ + * // Name of the instance resource to start. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -114449,15 +119740,6 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "disks": [], - * // "instanceEncryptionKey": {} - * // } - * }, * }); * console.log(res.data); * @@ -114506,32 +119788,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - resume( - params: Params$Resource$Instances$Resume, + start( + params: Params$Resource$Instances$Start, options: StreamMethodOptions ): Promise>; - resume( - params?: Params$Resource$Instances$Resume, + start( + params?: Params$Resource$Instances$Start, options?: MethodOptions ): Promise>; - resume( - params: Params$Resource$Instances$Resume, + start( + params: Params$Resource$Instances$Start, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resume( - params: Params$Resource$Instances$Resume, + start( + params: Params$Resource$Instances$Start, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - resume( - params: Params$Resource$Instances$Resume, + start( + params: Params$Resource$Instances$Start, callback: BodyResponseCallback ): void; - resume(callback: BodyResponseCallback): void; - resume( + start(callback: BodyResponseCallback): void; + start( paramsOrCallback?: - | Params$Resource$Instances$Resume + | Params$Resource$Instances$Start | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114546,12 +119828,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Resume; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Start; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Resume; + params = {} as Params$Resource$Instances$Start; options = {}; } @@ -114566,7 +119848,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/resume' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/start' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -114589,7 +119871,9 @@ export namespace compute_alpha { } /** - * Sends diagnostic interrupt to the instance. + * Starts an instance that was stopped using theinstances().stop + * method. For more information, seeRestart an + * instance. * @example * ```js * // Before running the sample: @@ -114621,16 +119905,71 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.sendDiagnosticInterrupt({ - * // Name of the instance scoping this request. + * const res = await compute.instances.startWithEncryptionKey({ + * // Name of the instance resource to start. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "disks": [], + * // "instanceEncryptionKey": {} + * // } + * }, * }); * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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 => { @@ -114645,51 +119984,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, options: StreamMethodOptions ): Promise>; - sendDiagnosticInterrupt( - params?: Params$Resource$Instances$Senddiagnosticinterrupt, + startWithEncryptionKey( + params?: Params$Resource$Instances$Startwithencryptionkey, options?: MethodOptions - ): Promise>; - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, + ): Promise>; + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - sendDiagnosticInterrupt( - params: Params$Resource$Instances$Senddiagnosticinterrupt, - callback: BodyResponseCallback + startWithEncryptionKey( + params: Params$Resource$Instances$Startwithencryptionkey, + callback: BodyResponseCallback ): void; - sendDiagnosticInterrupt(callback: BodyResponseCallback): void; - sendDiagnosticInterrupt( + startWithEncryptionKey( + callback: BodyResponseCallback + ): void; + startWithEncryptionKey( paramsOrCallback?: - | Params$Resource$Instances$Senddiagnosticinterrupt - | BodyResponseCallback + | Params$Resource$Instances$Startwithencryptionkey + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, - callback?: BodyResponseCallback | BodyResponseCallback + callback?: + | BodyResponseCallback + | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Senddiagnosticinterrupt; + {}) as Params$Resource$Instances$Startwithencryptionkey; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Senddiagnosticinterrupt; + params = {} as Params$Resource$Instances$Startwithencryptionkey; options = {}; } @@ -114704,7 +120047,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -114717,17 +120060,22 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets deletion protection on the instance. + * Stops a running instance, shutting it down cleanly, and allows + * you to restart the instance at a later time. Stopped instances do not incur + * VM usage charges while they are stopped. However, resources that the VM is + * using, such as persistent disks and static IP addresses, will continue to + * be charged until they are deleted. For more information, seeStopping + * an instance. * @example * ```js * // Before running the sample: @@ -114759,9 +120107,15 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setDeletionProtection({ - * // Whether the resource should be protected against deletion. - * deletionProtection: 'placeholder-value', + * const res = await compute.instances.stop({ + * // This property is required if the instance has any attached Local SSD disks. + * // If false, Local SSD data will be preserved when the instance is suspended. + * // If true, the contents of any attached Local SSD disks will be discarded. + * discardLocalSsd: 'placeholder-value', + * // Name of the instance resource to stop. + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // If set to true, Graceful Shutdown is skipped. + * noGracefulShutdown: '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])?))', @@ -114779,8 +120133,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // 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}', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -114831,34 +120183,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, + stop( + params: Params$Resource$Instances$Stop, options: StreamMethodOptions ): Promise>; - setDeletionProtection( - params?: Params$Resource$Instances$Setdeletionprotection, + stop( + params?: Params$Resource$Instances$Stop, options?: MethodOptions ): Promise>; - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, + stop( + params: Params$Resource$Instances$Stop, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, + stop( + params: Params$Resource$Instances$Stop, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setDeletionProtection( - params: Params$Resource$Instances$Setdeletionprotection, - callback: BodyResponseCallback - ): void; - setDeletionProtection( + stop( + params: Params$Resource$Instances$Stop, callback: BodyResponseCallback ): void; - setDeletionProtection( + stop(callback: BodyResponseCallback): void; + stop( paramsOrCallback?: - | Params$Resource$Instances$Setdeletionprotection + | Params$Resource$Instances$Stop | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -114873,13 +120223,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setdeletionprotection; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Stop; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setdeletionprotection; + params = {} as Params$Resource$Instances$Stop; options = {}; } @@ -114894,7 +120243,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/stop' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -114902,8 +120251,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'zone', 'instance'], + pathParams: ['instance', 'project', 'zone'], context: this.context, }; if (callback) { @@ -114917,7 +120266,14 @@ export namespace compute_alpha { } /** - * Sets the auto-delete flag for a disk attached to an instance. + * This method suspends a running instance, saving its state to persistent + * storage, and allows you to resume the instance at a later time. Suspended + * instances have no compute costs (cores or RAM), and incur only storage + * charges for the saved VM memory and localSSD data. Any charged resources + * the virtual machine was using, such as persistent disks and static IP + * addresses, will continue to be charged while the instance is suspended. + * For more information, see + * Suspending and resuming an instance. * @example * ```js * // Before running the sample: @@ -114949,13 +120305,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setDiskAutoDelete({ - * // Whether to auto-delete the disk when the instance is deleted. - * autoDelete: 'placeholder-value', - * // The device name of the disk to modify. Make a get() request - * // on the instance to view currently attached disks and device names. - * deviceName: '\w[\w.-]{0,254}', - * // The instance name for this request. + * const res = await compute.instances.suspend({ + * // This property is required if the instance has any attached Local SSD disks. + * // If false, Local SSD data will be preserved when the instance is suspended. + * // If true, the contents of any attached Local SSD disks will be discarded. + * discardLocalSsd: 'placeholder-value', + * // Name of the instance resource to suspend. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -115024,32 +120379,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, + suspend( + params: Params$Resource$Instances$Suspend, options: StreamMethodOptions ): Promise>; - setDiskAutoDelete( - params?: Params$Resource$Instances$Setdiskautodelete, + suspend( + params?: Params$Resource$Instances$Suspend, options?: MethodOptions ): Promise>; - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, + suspend( + params: Params$Resource$Instances$Suspend, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, + suspend( + params: Params$Resource$Instances$Suspend, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setDiskAutoDelete( - params: Params$Resource$Instances$Setdiskautodelete, + suspend( + params: Params$Resource$Instances$Suspend, callback: BodyResponseCallback ): void; - setDiskAutoDelete(callback: BodyResponseCallback): void; - setDiskAutoDelete( + suspend(callback: BodyResponseCallback): void; + suspend( paramsOrCallback?: - | Params$Resource$Instances$Setdiskautodelete + | Params$Resource$Instances$Suspend | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115065,12 +120420,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setdiskautodelete; + {}) as Params$Resource$Instances$Suspend; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setdiskautodelete; + params = {} as Params$Resource$Instances$Suspend; options = {}; } @@ -115085,7 +120440,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/suspend' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -115093,13 +120448,7 @@ export namespace compute_alpha { options ), params, - requiredParams: [ - 'project', - 'zone', - 'instance', - 'autoDelete', - 'deviceName', - ], + requiredParams: ['project', 'zone', 'instance'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -115114,8 +120463,7 @@ export namespace compute_alpha { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -115139,6 +120487,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -115147,7 +120496,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setIamPolicy({ + * const res = await compute.instances.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])?))', @@ -115160,9 +120509,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "permissions": [] * // } * }, * }); @@ -115170,10 +120517,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -115189,53 +120533,57 @@ export namespace compute_alpha { * @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$Instances$Setiampolicy, + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Instances$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Instances$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instances$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Instances$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instances$Setiampolicy - | BodyResponseCallback + | Params$Resource$Instances$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setiampolicy; + {}) as Params$Resource$Instances$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setiampolicy; + params = {} as Params$Resource$Instances$Testiampermissions; options = {}; } @@ -115250,7 +120598,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -115263,18 +120611,20 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets labels on an instance. To learn more about labels, read theLabeling - * Resources documentation. + * Updates an instance only if the necessary resources are available. This + * method can update only a specific set of instance properties. See + * Updating a running instance for a list of updatable instance + * properties. * @example * ```js * // Before running the sample: @@ -115306,9 +120656,27 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setLabels({ - * // Name of the instance scoping this request. + * const res = await compute.instances.update({ + * // Whether to clear secure tags from the instance. + * // + * // This property if set to true will clear secure tags regardless of theresource.secure_tags. + * clearSecureTag: 'placeholder-value', + * // Whether to discard local SSDs from the instance during restart + * // default value is false. + * discardLocalSsd: 'placeholder-value', + * // Name of the instance resource to update. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Specifies the action to take when updating an instance even if the + * // updated properties do not require it. If not specified, then + * // Compute Engine acts based on the minimum action that the updated + * // properties require. + * minimalAction: 'placeholder-value', + * // Specifies the most disruptive action that can be taken on the instance + * // as part of the update. Compute Engine returns an error if the + * // instance properties require a more disruptive action as part of the + * // instance update. Valid options from lowest to highest are + * // NO_EFFECT, REFRESH, and RESTART. + * mostDisruptiveAllowedAction: '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])?))', @@ -115333,8 +120701,65 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { + * // "advancedMachineFeatures": {}, + * // "canIpForward": false, + * // "confidentialInstanceConfig": {}, + * // "cpuPlatform": "my_cpuPlatform", + * // "creationTimestamp": "my_creationTimestamp", + * // "deletionProtection": false, + * // "description": "my_description", + * // "disks": [], + * // "displayDevice": {}, + * // "eraseWindowsVssSignature": false, + * // "fingerprint": "my_fingerprint", + * // "guestAccelerators": [], + * // "hostname": "my_hostname", + * // "id": "my_id", + * // "identity": "my_identity", + * // "identityCertificate": false, + * // "instanceEncryptionKey": {}, + * // "keyRevocationActionType": "my_keyRevocationActionType", + * // "kind": "my_kind", * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "labels": {}, + * // "lastStartTimestamp": "my_lastStartTimestamp", + * // "lastStopTimestamp": "my_lastStopTimestamp", + * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", + * // "machineType": "my_machineType", + * // "metadata": {}, + * // "minCpuPlatform": "my_minCpuPlatform", + * // "name": "my_name", + * // "networkInterfaces": [], + * // "networkPerformanceConfig": {}, + * // "params": {}, + * // "partnerMetadata": {}, + * // "postKeyRevocationActionType": "my_postKeyRevocationActionType", + * // "preservedStateSizeGb": "my_preservedStateSizeGb", + * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", + * // "reservationAffinity": {}, + * // "resourcePolicies": [], + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "scheduling": {}, + * // "secureTags": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serviceAccounts": [], + * // "serviceIntegrationSpecs": {}, + * // "shieldedInstanceConfig": {}, + * // "shieldedInstanceIntegrityPolicy": {}, + * // "shieldedVmConfig": {}, + * // "shieldedVmIntegrityPolicy": {}, + * // "sourceMachineImage": "my_sourceMachineImage", + * // "sourceMachineImageEncryptionKey": {}, + * // "startRestricted": false, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "tags": {}, + * // "upcomingMaintenance": {}, + * // "workloadIdentityConfig": {}, + * // "zone": "my_zone" * // } * }, * }); @@ -115385,32 +120810,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Instances$Setlabels, + update( + params: Params$Resource$Instances$Update, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Instances$Setlabels, + update( + params?: Params$Resource$Instances$Update, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Instances$Setlabels, + update( + params: Params$Resource$Instances$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Instances$Setlabels, + update( + params: Params$Resource$Instances$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Instances$Setlabels, + update( + params: Params$Resource$Instances$Update, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Instances$Setlabels + | Params$Resource$Instances$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115425,13 +120850,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setlabels; + let params = (paramsOrCallback || {}) as Params$Resource$Instances$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setlabels; + params = {} as Params$Resource$Instances$Update; options = {}; } @@ -115446,9 +120870,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setLabels' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PUT', apiVersion: '', }, options @@ -115469,8 +120893,10 @@ export namespace compute_alpha { } /** - * Changes the number and/or type of accelerator for a stopped instance to the - * values specified in the request. + * Updates the specified access config from an instance's network interface + * with the data included in the request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -115502,9 +120928,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMachineResources({ - * // Name of the instance scoping this request. + * const res = await compute.instances.updateAccessConfig({ + * // The instance name for this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface where the access config is attached. + * networkInterface: '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])?))', @@ -115529,7 +120957,18 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "guestAccelerators": [] + * // "externalIpv6": "my_externalIpv6", + * // "externalIpv6PrefixLength": 0, + * // "kind": "my_kind", + * // "name": "my_name", + * // "natIP": "my_natIP", + * // "networkTier": "my_networkTier", + * // "publicDnsName": "my_publicDnsName", + * // "publicPtrDomainName": "my_publicPtrDomainName", + * // "securityPolicy": "my_securityPolicy", + * // "setPublicDns": false, + * // "setPublicPtr": false, + * // "type": "my_type" * // } * }, * }); @@ -115580,32 +121019,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, options: StreamMethodOptions ): Promise>; - setMachineResources( - params?: Params$Resource$Instances$Setmachineresources, + updateAccessConfig( + params?: Params$Resource$Instances$Updateaccessconfig, options?: MethodOptions ): Promise>; - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineResources( - params: Params$Resource$Instances$Setmachineresources, + updateAccessConfig( + params: Params$Resource$Instances$Updateaccessconfig, callback: BodyResponseCallback ): void; - setMachineResources(callback: BodyResponseCallback): void; - setMachineResources( + updateAccessConfig(callback: BodyResponseCallback): void; + updateAccessConfig( paramsOrCallback?: - | Params$Resource$Instances$Setmachineresources + | Params$Resource$Instances$Updateaccessconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115621,12 +121060,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmachineresources; + {}) as Params$Resource$Instances$Updateaccessconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmachineresources; + params = {} as Params$Resource$Instances$Updateaccessconfig; options = {}; } @@ -115641,7 +121080,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -115649,7 +121088,7 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instance'], + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -115664,8 +121103,10 @@ export namespace compute_alpha { } /** - * Changes the machine type for a stopped instance to the machine - * type specified in the request. + * Updates the Display config for a VM instance. You can + * only use this method on a stopped VM instance. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -115697,9 +121138,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMachineType({ + * const res = await compute.instances.updateDisplayDevice({ * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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])?))', @@ -115724,7 +121165,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "machineType": "my_machineType" + * // "enableDisplay": false * // } * }, * }); @@ -115775,32 +121216,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMachineType( - params: Params$Resource$Instances$Setmachinetype, + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, options: StreamMethodOptions ): Promise>; - setMachineType( - params?: Params$Resource$Instances$Setmachinetype, + updateDisplayDevice( + params?: Params$Resource$Instances$Updatedisplaydevice, options?: MethodOptions ): Promise>; - setMachineType( - params: Params$Resource$Instances$Setmachinetype, + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineType( - params: Params$Resource$Instances$Setmachinetype, + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMachineType( - params: Params$Resource$Instances$Setmachinetype, + updateDisplayDevice( + params: Params$Resource$Instances$Updatedisplaydevice, callback: BodyResponseCallback ): void; - setMachineType(callback: BodyResponseCallback): void; - setMachineType( + updateDisplayDevice(callback: BodyResponseCallback): void; + updateDisplayDevice( paramsOrCallback?: - | Params$Resource$Instances$Setmachinetype + | Params$Resource$Instances$Updatedisplaydevice | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -115816,12 +121257,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmachinetype; + {}) as Params$Resource$Instances$Updatedisplaydevice; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmachinetype; + params = {} as Params$Resource$Instances$Updatedisplaydevice; options = {}; } @@ -115836,9 +121277,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMachineType' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -115859,8 +121300,12 @@ export namespace compute_alpha { } /** - * Sets metadata for the specified instance to the data included - * in the request. + * Updates an instance's network interface. This method can only update an + * interface's alias IP range and attached network. See Modifying + * alias IP ranges for an existing instance for instructions on + * changing alias IP ranges. See Migrating + * a VM between networks for instructions on migrating an interface. + * This method follows PATCH semantics. * @example * ```js * // Before running the sample: @@ -115892,9 +121337,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMetadata({ - * // Name of the instance scoping this request. + * const res = await compute.instances.updateNetworkInterface({ + * // The instance name for this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the network interface to update. + * networkInterface: '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])?))', @@ -115919,9 +121366,32 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { + * // "accessConfigs": [], + * // "aliasIpRanges": [], + * // "aliasIpv6Ranges": [], + * // "dns64Eligible": false, + * // "enableVpcScopedDns": false, * // "fingerprint": "my_fingerprint", - * // "items": [], - * // "kind": "my_kind" + * // "igmpQuery": "my_igmpQuery", + * // "internalIpv6PrefixLength": 0, + * // "ipv6AccessConfigs": [], + * // "ipv6AccessType": "my_ipv6AccessType", + * // "ipv6Address": "my_ipv6Address", + * // "kind": "my_kind", + * // "macAddress": "my_macAddress", + * // "name": "my_name", + * // "nat64Eligible": false, + * // "network": "my_network", + * // "networkAttachment": "my_networkAttachment", + * // "networkIP": "my_networkIP", + * // "nicType": "my_nicType", + * // "parentNicName": "my_parentNicName", + * // "queueCount": 0, + * // "serviceClassId": "my_serviceClassId", + * // "stackType": "my_stackType", + * // "subinterfaces": [], + * // "subnetwork": "my_subnetwork", + * // "vlan": 0 * // } * }, * }); @@ -115972,32 +121442,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMetadata( - params: Params$Resource$Instances$Setmetadata, + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, options: StreamMethodOptions ): Promise>; - setMetadata( - params?: Params$Resource$Instances$Setmetadata, + updateNetworkInterface( + params?: Params$Resource$Instances$Updatenetworkinterface, options?: MethodOptions ): Promise>; - setMetadata( - params: Params$Resource$Instances$Setmetadata, + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMetadata( - params: Params$Resource$Instances$Setmetadata, + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMetadata( - params: Params$Resource$Instances$Setmetadata, + updateNetworkInterface( + params: Params$Resource$Instances$Updatenetworkinterface, callback: BodyResponseCallback ): void; - setMetadata(callback: BodyResponseCallback): void; - setMetadata( + updateNetworkInterface( + callback: BodyResponseCallback + ): void; + updateNetworkInterface( paramsOrCallback?: - | Params$Resource$Instances$Setmetadata + | Params$Resource$Instances$Updatenetworkinterface | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -116013,12 +121485,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmetadata; + {}) as Params$Resource$Instances$Updatenetworkinterface; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmetadata; + params = {} as Params$Resource$Instances$Updatenetworkinterface; options = {}; } @@ -116033,15 +121505,15 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMetadata' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], + requiredParams: ['project', 'zone', 'instance', 'networkInterface'], pathParams: ['instance', 'project', 'zone'], context: this.context, }; @@ -116056,10 +121528,10 @@ export namespace compute_alpha { } /** - * Changes the minimum CPU platform that this instance should use. - * This method can only - * be called on a stopped instance. For more information, readSpecifying a - * Minimum CPU Platform. + * Updates the Shielded Instance config for an instance. You can + * only use this method on a stopped instance. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -116091,8 +121563,8 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setMinCpuPlatform({ - * // Name of the instance scoping this request. + * const res = await compute.instances.updateShieldedInstanceConfig({ + * // Name or id of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -116118,7 +121590,9 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "minCpuPlatform": "my_minCpuPlatform" + * // "enableIntegrityMonitoring": false, + * // "enableSecureBoot": false, + * // "enableVtpm": false * // } * }, * }); @@ -116169,32 +121643,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, options: StreamMethodOptions ): Promise>; - setMinCpuPlatform( - params?: Params$Resource$Instances$Setmincpuplatform, + updateShieldedInstanceConfig( + params?: Params$Resource$Instances$Updateshieldedinstanceconfig, options?: MethodOptions ): Promise>; - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setMinCpuPlatform( - params: Params$Resource$Instances$Setmincpuplatform, + updateShieldedInstanceConfig( + params: Params$Resource$Instances$Updateshieldedinstanceconfig, callback: BodyResponseCallback ): void; - setMinCpuPlatform(callback: BodyResponseCallback): void; - setMinCpuPlatform( + updateShieldedInstanceConfig( + callback: BodyResponseCallback + ): void; + updateShieldedInstanceConfig( paramsOrCallback?: - | Params$Resource$Instances$Setmincpuplatform + | Params$Resource$Instances$Updateshieldedinstanceconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -116210,12 +121686,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setmincpuplatform; + {}) as Params$Resource$Instances$Updateshieldedinstanceconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setmincpuplatform; + params = {} as Params$Resource$Instances$Updateshieldedinstanceconfig; options = {}; } @@ -116230,9 +121706,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -116253,7 +121729,10 @@ export namespace compute_alpha { } /** - * Sets name of an instance. + * Updates the Shielded VM config for a VM instance. You can + * only use this method on a stopped VM instance. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -116285,8 +121764,8 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.setName({ - * // The instance name for this request. + * const res = await compute.instances.updateShieldedVmConfig({ + * // Name of the instance scoping this request. * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Project ID for this request. * project: @@ -116312,8 +121791,9 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "currentName": "my_currentName", - * // "name": "my_name" + * // "enableIntegrityMonitoring": false, + * // "enableSecureBoot": false, + * // "enableVtpm": false * // } * }, * }); @@ -116364,32 +121844,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setName( - params: Params$Resource$Instances$Setname, + updateShieldedVmConfig( + params: Params$Resource$Instances$Updateshieldedvmconfig, options: StreamMethodOptions ): Promise>; - setName( - params?: Params$Resource$Instances$Setname, + updateShieldedVmConfig( + params?: Params$Resource$Instances$Updateshieldedvmconfig, options?: MethodOptions ): Promise>; - setName( - params: Params$Resource$Instances$Setname, + updateShieldedVmConfig( + params: Params$Resource$Instances$Updateshieldedvmconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setName( - params: Params$Resource$Instances$Setname, + updateShieldedVmConfig( + params: Params$Resource$Instances$Updateshieldedvmconfig, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setName( - params: Params$Resource$Instances$Setname, + updateShieldedVmConfig( + params: Params$Resource$Instances$Updateshieldedvmconfig, callback: BodyResponseCallback ): void; - setName(callback: BodyResponseCallback): void; - setName( + updateShieldedVmConfig( + callback: BodyResponseCallback + ): void; + updateShieldedVmConfig( paramsOrCallback?: - | Params$Resource$Instances$Setname + | Params$Resource$Instances$Updateshieldedvmconfig | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -116405,12 +121887,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setname; + {}) as Params$Resource$Instances$Updateshieldedvmconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setname; + params = {} as Params$Resource$Instances$Updateshieldedvmconfig; options = {}; } @@ -116425,9 +121907,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setName' + '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedVmConfig' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -116446,1803 +121928,2210 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Instances$Addaccessconfig extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface to add to this instance. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AccessConfig; + } + export interface Params$Resource$Instances$Addnetworkinterface extends StandardParameters { + /** + * The instance name for this request stored as resource_id. + * Name should conform to RFC1035 or be an unsigned long integer. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkInterface; + } + export interface Params$Resource$Instances$Addresourcepolicies extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesAddResourcePoliciesRequest; + } + export interface Params$Resource$Instances$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Instances$Attachdisk extends StandardParameters { + /** + * Whether to force attach the regional disk even if it's currently attached + * to another instance. If you try to force attach a zonal disk to an + * instance, you will receive an error. + */ + forceAttach?: boolean; + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AttachedDisk; + } + export interface Params$Resource$Instances$Bulkinsert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BulkInsertInstanceResource; + } + export interface Params$Resource$Instances$Delete extends StandardParameters { + /** + * Name of the instance resource to delete. + */ + instance?: string; + /** + * If set to true, Graceful Shutdown is skipped. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Deleteaccessconfig extends StandardParameters { + /** + * The name of the access config to delete. + */ + accessConfig?: string; + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Deletenetworkinterface extends StandardParameters { + /** + * The instance name for this request stored as resource_id. + * Name should conform to RFC1035 or be an unsigned long integer. + */ + instance?: string; + /** + * The name of the dynamic network interface to be deleted from the instance. + */ + networkInterfaceName?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Detachdisk extends StandardParameters { + /** + * The device name of the disk to detach. Make a get() request on + * the instance to view currently attached disks and device names. + */ + deviceName?: string; + /** + * Instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Get extends StandardParameters { + /** + * Name of the instance resource to return. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * View of the instance. + */ + view?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Geteffectivefirewalls extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * The name of the network interface to get the effective firewalls. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getguestattributes extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Specifies the guest attributes path to be queried. + */ + queryPath?: string; + /** + * Specifies the key for the guest attributes entry. + */ + variableKey?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getpartnermetadata extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Comma separated partner metadata namespaces. + */ + namespaces?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getscreenshot extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getserialportoutput extends StandardParameters { + /** + * Name of the instance for this request. + */ + instance?: string; + /** + * Specifies which COM or serial port to retrieve data from. + */ + port?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Specifies the starting byte position of the output to return. To start with + * the first byte of output to the specified port, omit this field or set it + * to `0`. + * + * If the output for that byte position is available, this field matches the + * `start` parameter sent with the request. If the amount of serial console + * output exceeds the size of the buffer (1 MB), the oldest output is + * discarded and is no longer available. If the requested start position + * refers to discarded output, the start position is adjusted to the oldest + * output still available, and the adjusted start position is returned as the + * `start` property value. + * + * You can also provide a negative start position, which translates to the + * most recent number of bytes written to the serial port. For example, -3 is + * interpreted as the most recent 3 bytes written to the serial console. Note + * that the negative start is bounded by the retained buffer size, and the + * returned serial console output will not exceed the max buffer size. + */ + start?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getshieldedinstanceidentity extends StandardParameters { + /** + * Name or id of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getshieldedvmidentity extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Getvmextensionstate extends StandardParameters { + /** + * The name of the extension to get the state for. + */ + extensionName?: string; + /** + * Name or id of the instance resource. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * Specifies instance template to create the instance. + * + * This field is optional. It can be a full or partial URL. For example, the + * following are all valid URLs to an instance template: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate + * - projects/project/global/instanceTemplates/instanceTemplate + * - global/instanceTemplates/instanceTemplate + */ + sourceInstanceTemplate?: string; + /** + * Specifies the machine image to use to create the instance. + * + * This field is optional. It can be a full or partial URL. For example, the + * following are all valid URLs to a machine image: + * + * + * - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage + * - projects/project/global/global/machineImages/machineImage + * - global/machineImages/machineImage + */ + sourceMachineImage?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Sets an instance's scheduling options. You can only call this method on astopped instance, - * that is, a VM instance that is in a `TERMINATED` state. SeeInstance Life - * Cycle for more information on the possible instance states. - * For more information about setting scheduling options for a VM, seeSet - * VM host maintenance 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Instances$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * View of the instance. + */ + view?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Listreferrers extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * 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', - * ], - * }); + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Do the magic - * const res = await compute.instances.setScheduling({ - * // Instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "automaticRestart": false, - * // "availabilityDomain": 0, - * // "currentCpus": 0, - * // "currentMemoryMb": "my_currentMemoryMb", - * // "gracefulShutdown": {}, - * // "hostErrorTimeoutSeconds": 0, - * // "instanceTerminationAction": "my_instanceTerminationAction", - * // "latencyTolerant": false, - * // "localSsdRecoveryTimeout": {}, - * // "locationHint": "my_locationHint", - * // "maintenanceFreezeDurationHours": 0, - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maxRunDuration": {}, - * // "minNodeCpus": 0, - * // "nodeAffinities": [], - * // "onHostMaintenance": "my_onHostMaintenance", - * // "onInstanceStopAction": {}, - * // "preemptible": false, - * // "preemptionNoticeDuration": {}, - * // "provisioningModel": "my_provisioningModel", - * // "shutdownTimeout": {}, - * // "skipGuestOsShutdown": false, - * // "terminationTime": "my_terminationTime", - * // "windowsLicenseOptimizationMode": "my_windowsLicenseOptimizationMode" - * // } - * }, - * }); - * console.log(res.data); + * 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 onresource labels. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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) + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * ``` + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * @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. + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - setScheduling( - params: Params$Resource$Instances$Setscheduling, - options: StreamMethodOptions - ): Promise>; - setScheduling( - params?: Params$Resource$Instances$Setscheduling, - options?: MethodOptions - ): Promise>; - setScheduling( - params: Params$Resource$Instances$Setscheduling, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setScheduling( - params: Params$Resource$Instances$Setscheduling, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setScheduling( - params: Params$Resource$Instances$Setscheduling, - callback: BodyResponseCallback - ): void; - setScheduling(callback: BodyResponseCallback): void; - setScheduling( - paramsOrCallback?: - | Params$Resource$Instances$Setscheduling - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setscheduling; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setscheduling; - 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}/zones/{zone}/instances/{instance}/setScheduling' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + filter?: string; /** - * Sets the Google Cloud Armor security policy for the specified instance. - * For more information, seeGoogle - * Cloud Armor Overview - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Name of the target instance scoping this request, or '-' if the + * request should span over all instances in the container. + */ + instance?: 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * 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. * - * 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', - * ], - * }); + * 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Listvmextensionstates extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * // Do the magic - * const res = await compute.instances.setSecurityPolicy({ - * // Name of the Instance resource to which the security policy should be - * // set. The name should conform to RFC1035. - * instance: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * // Name of the zone scoping this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "networkInterfaces": [], - * // "securityPolicy": "my_securityPolicy" - * // } - * }, - * }); - * console.log(res.data); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * 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 onresource 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) * ``` * - * @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. + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, - options: StreamMethodOptions - ): Promise>; - setSecurityPolicy( - params?: Params$Resource$Instances$Setsecuritypolicy, - options?: MethodOptions - ): Promise>; - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setSecurityPolicy( - params: Params$Resource$Instances$Setsecuritypolicy, - callback: BodyResponseCallback - ): void; - setSecurityPolicy(callback: BodyResponseCallback): void; - setSecurityPolicy( - paramsOrCallback?: - | Params$Resource$Instances$Setsecuritypolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setsecuritypolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setsecuritypolicy; - 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}/zones/{zone}/instances/{instance}/setSecurityPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + filter?: string; /** - * Sets the service account on the instance. For more information, - * readChanging - * the service account and access scopes for an instance. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Name of the target instance scoping this request. + */ + instance?: 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * 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. * - * 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', - * ], - * }); + * 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * Required. Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Patchpartnermetadata extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.instances.setServiceAccount({ - * // Name of the instance resource to start. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * 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. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "email": "my_email", - * // "scopes": [] - * // } - * }, - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$PartnerMetadata; + } + export interface Params$Resource$Instances$Performmaintenance extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Removeresourcepolicies extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, - options: StreamMethodOptions - ): Promise>; - setServiceAccount( - params?: Params$Resource$Instances$Setserviceaccount, - options?: MethodOptions - ): Promise>; - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setServiceAccount( - params: Params$Resource$Instances$Setserviceaccount, - callback: BodyResponseCallback - ): void; - setServiceAccount(callback: BodyResponseCallback): void; - setServiceAccount( - paramsOrCallback?: - | Params$Resource$Instances$Setserviceaccount - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setserviceaccount; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setserviceaccount; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + /** + * Request body metadata + */ + requestBody?: Schema$InstancesRemoveResourcePoliciesRequest; + } + export interface Params$Resource$Instances$Reporthostasfaulty extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Sets the Shielded Instance integrity policy for an instance. You can - * only use this method on a running instance. This method - * supports PATCH semantics and uses the 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Request body metadata + */ + requestBody?: Schema$InstancesReportHostAsFaultyRequest; + } + export interface Params$Resource$Instances$Reset extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Resume extends StandardParameters { + /** + * Name of the instance resource to resume. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesResumeRequest; + } + export interface Params$Resource$Instances$Senddiagnosticinterrupt extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Setdeletionprotection extends StandardParameters { + /** + * Whether the resource should be protected against deletion. + */ + deletionProtection?: boolean; + /** + * Project ID for this request. + */ + project?: 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Setdiskautodelete extends StandardParameters { + /** + * Whether to auto-delete the disk when the instance is deleted. + */ + autoDelete?: boolean; + /** + * The device name of the disk to modify. Make a get() request + * on the instance to view currently attached disks and device names. + */ + deviceName?: string; + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.instances.setShieldedInstanceIntegrityPolicy({ - * // Name or id of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * 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. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "updateAutoLearnPolicy": false - * // } - * }, - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetPolicyRequest; + } + export interface Params$Resource$Instances$Setlabels extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetLabelsRequest; + } + export interface Params$Resource$Instances$Setmachineresources extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, - options: StreamMethodOptions - ): Promise>; - setShieldedInstanceIntegrityPolicy( - params?: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, - options?: MethodOptions - ): Promise>; - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setShieldedInstanceIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedinstanceintegritypolicy, - callback: BodyResponseCallback - ): void; - setShieldedInstanceIntegrityPolicy( - callback: BodyResponseCallback - ): void; - setShieldedInstanceIntegrityPolicy( - paramsOrCallback?: - | Params$Resource$Instances$Setshieldedinstanceintegritypolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Instances$Setshieldedinstanceintegritypolicy; - 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}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Sets the Shielded VM integrity policy for a VM instance. You can - * only use this method on a running VM instance. This method - * supports PATCH semantics and uses the 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * Request body metadata + */ + requestBody?: Schema$InstancesSetMachineResourcesRequest; + } + export interface Params$Resource$Instances$Setmachinetype extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetMachineTypeRequest; + } + export interface Params$Resource$Instances$Setmetadata extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.instances.setShieldedVmIntegrityPolicy({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * 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. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "updateAutoLearnPolicy": false - * // } - * }, - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Metadata; + } + export interface Params$Resource$Instances$Setmincpuplatform extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetMinCpuPlatformRequest; + } + export interface Params$Resource$Instances$Setname extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - setShieldedVmIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedvmintegritypolicy, - options: StreamMethodOptions - ): Promise>; - setShieldedVmIntegrityPolicy( - params?: Params$Resource$Instances$Setshieldedvmintegritypolicy, - options?: MethodOptions - ): Promise>; - setShieldedVmIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedvmintegritypolicy, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setShieldedVmIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedvmintegritypolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setShieldedVmIntegrityPolicy( - params: Params$Resource$Instances$Setshieldedvmintegritypolicy, - callback: BodyResponseCallback - ): void; - setShieldedVmIntegrityPolicy( - callback: BodyResponseCallback - ): void; - setShieldedVmIntegrityPolicy( - paramsOrCallback?: - | Params$Resource$Instances$Setshieldedvmintegritypolicy - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Setshieldedvmintegritypolicy; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Setshieldedvmintegritypolicy; - 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}/zones/{zone}/instances/{instance}/setShieldedVmIntegrityPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Sets network tags - * for the specified instance to the data 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * Request body metadata + */ + requestBody?: Schema$InstancesSetNameRequest; + } + export interface Params$Resource$Instances$Setscheduling extends StandardParameters { + /** + * Instance name for this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Scheduling; + } + export interface Params$Resource$Instances$Setsecuritypolicy extends StandardParameters { + /** + * Name of the Instance resource to which the security policy should be + * set. The name should conform to RFC1035. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.instances.setTags({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * 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. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "fingerprint": "my_fingerprint", - * // "items": [] - * // } - * }, - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the zone scoping this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetSecurityPolicyRequest; + } + export interface Params$Resource$Instances$Setserviceaccount extends StandardParameters { + /** + * Name of the instance resource to start. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstancesSetServiceAccountRequest; + } + export interface Params$Resource$Instances$Setshieldedinstanceintegritypolicy extends StandardParameters { + /** + * Name or id of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - setTags( - params: Params$Resource$Instances$Settags, - options: StreamMethodOptions - ): Promise>; - setTags( - params?: Params$Resource$Instances$Settags, - options?: MethodOptions - ): Promise>; - setTags( - params: Params$Resource$Instances$Settags, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setTags( - params: Params$Resource$Instances$Settags, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setTags( - params: Params$Resource$Instances$Settags, - callback: BodyResponseCallback - ): void; - setTags(callback: BodyResponseCallback): void; - setTags( - paramsOrCallback?: - | Params$Resource$Instances$Settags - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Settags; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Settags; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/setTags' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + /** + * Request body metadata + */ + requestBody?: Schema$ShieldedInstanceIntegrityPolicy; + } + export interface Params$Resource$Instances$Setshieldedvmintegritypolicy extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Simulates a host maintenance event on a VM. For more information, see - * Simulate a host maintenance event. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * Request body metadata + */ + requestBody?: Schema$ShieldedVmIntegrityPolicy; + } + export interface Params$Resource$Instances$Settags extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * 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. * - * 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', - * ], - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$Tags; + } + export interface Params$Resource$Instances$Simulatemaintenanceevent extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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. * - * // Do the magic - * const res = await compute.instances.simulateMaintenanceEvent({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // Determines whether the customers receive notifications before migration. - * // Only applicable to SF vms. - * withExtendedNotifications: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Determines whether the customers receive notifications before migration. + * Only applicable to SF vms. + */ + withExtendedNotifications?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Start extends StandardParameters { + /** + * Name of the instance resource to start. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Startwithencryptionkey extends StandardParameters { + /** + * Name of the instance resource to start. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, - options: StreamMethodOptions - ): Promise>; - simulateMaintenanceEvent( - params?: Params$Resource$Instances$Simulatemaintenanceevent, - options?: MethodOptions - ): Promise>; - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - simulateMaintenanceEvent( - params: Params$Resource$Instances$Simulatemaintenanceevent, - callback: BodyResponseCallback - ): void; - simulateMaintenanceEvent( - callback: BodyResponseCallback - ): void; - simulateMaintenanceEvent( - paramsOrCallback?: - | Params$Resource$Instances$Simulatemaintenanceevent - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Simulatemaintenanceevent; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Simulatemaintenanceevent; - 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}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Starts an instance that was stopped using theinstances().stop - * method. For more information, seeRestart an - * instance. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * Request body metadata + */ + requestBody?: Schema$InstancesStartWithEncryptionKeyRequest; + } + export interface Params$Resource$Instances$Stop extends StandardParameters { + /** + * This property is required if the instance has any attached Local SSD disks. + * If false, Local SSD data will be preserved when the instance is suspended. + * If true, the contents of any attached Local SSD disks will be discarded. + */ + discardLocalSsd?: boolean; + /** + * Name of the instance resource to stop. + */ + instance?: string; + /** + * If set to true, Graceful Shutdown is skipped. + */ + noGracefulShutdown?: boolean; + /** + * Project ID for this request. + */ + project?: 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Suspend extends StandardParameters { + /** + * This property is required if the instance has any attached Local SSD disks. + * If false, Local SSD data will be preserved when the instance is suspended. + * If true, the contents of any attached Local SSD disks will be discarded. + */ + discardLocalSsd?: boolean; + /** + * Name of the instance resource to suspend. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.instances.start({ - * // Name of the instance resource to start. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * }); - * console.log(res.data); + * 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instances$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Instances$Update extends StandardParameters { + /** + * Whether to clear secure tags from the instance. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * This property if set to true will clear secure tags regardless of theresource.secure_tags. + */ + clearSecureTag?: boolean; + /** + * Whether to discard local SSDs from the instance during restart + * default value is false. + */ + discardLocalSsd?: boolean; + /** + * Name of the instance resource to update. + */ + instance?: string; + /** + * Specifies the action to take when updating an instance even if the + * updated properties do not require it. If not specified, then + * Compute Engine acts based on the minimum action that the updated + * properties require. + */ + minimalAction?: string; + /** + * Specifies the most disruptive action that can be taken on the instance + * as part of the update. Compute Engine returns an error if the + * instance properties require a more disruptive action as part of the + * instance update. Valid options from lowest to highest are + * NO_EFFECT, REFRESH, and RESTART. + */ + mostDisruptiveAllowedAction?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - start( - params: Params$Resource$Instances$Start, - options: StreamMethodOptions - ): Promise>; - start( - params?: Params$Resource$Instances$Start, - options?: MethodOptions - ): Promise>; - start( - params: Params$Resource$Instances$Start, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - start( - params: Params$Resource$Instances$Start, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - start( - params: Params$Resource$Instances$Start, - callback: BodyResponseCallback - ): void; - start(callback: BodyResponseCallback): void; - start( - paramsOrCallback?: - | Params$Resource$Instances$Start - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Start; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Start; - 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}/zones/{zone}/instances/{instance}/start' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** - * Starts an instance that was stopped using theinstances().stop - * method. For more information, seeRestart an - * instance. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * Request body metadata + */ + requestBody?: Schema$Instance; + } + export interface Params$Resource$Instances$Updateaccessconfig extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface where the access config is attached. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AccessConfig; + } + export interface Params$Resource$Instances$Updatedisplaydevice extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Do the magic - * const res = await compute.instances.startWithEncryptionKey({ - * // Name of the instance resource to start. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * 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. * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "disks": [], - * // "instanceEncryptionKey": {} - * // } - * }, - * }); - * console.log(res.data); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DisplayDevice; + } + export interface Params$Resource$Instances$Updatenetworkinterface extends StandardParameters { + /** + * The instance name for this request. + */ + instance?: string; + /** + * The name of the network interface to update. + */ + networkInterface?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkInterface; + } + export interface Params$Resource$Instances$Updateshieldedinstanceconfig extends StandardParameters { + /** + * Name or id of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - options: StreamMethodOptions - ): Promise>; - startWithEncryptionKey( - params?: Params$Resource$Instances$Startwithencryptionkey, - options?: MethodOptions - ): Promise>; - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - params: Params$Resource$Instances$Startwithencryptionkey, - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - callback: BodyResponseCallback - ): void; - startWithEncryptionKey( - paramsOrCallback?: - | Params$Resource$Instances$Startwithencryptionkey - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Startwithencryptionkey; - let options = (optionsOrCallback || {}) as MethodOptions; + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Startwithencryptionkey; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$ShieldedInstanceConfig; + } + export interface Params$Resource$Instances$Updateshieldedvmconfig extends StandardParameters { + /** + * Name of the instance scoping this request. + */ + instance?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$ShieldedVmConfig; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Instancesettings { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Stops a running instance, shutting it down cleanly, and allows - * you to restart the instance at a later time. Stopped instances do not incur - * VM usage charges while they are stopped. However, resources that the VM is - * using, such as persistent disks and static IP addresses, will continue to - * be charged until they are deleted. For more information, seeStopping - * an instance. + * Get Instance settings. * @example * ```js * // Before running the sample: @@ -118266,6 +124155,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -118274,66 +124164,21 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.stop({ - * // This property is required if the instance has any attached Local SSD disks. - * // If false, Local SSD data will be preserved when the instance is suspended. - * // If true, the contents of any attached Local SSD disks will be discarded. - * discardLocalSsd: 'placeholder-value', - * // Name of the instance resource to stop. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // If set to true, Graceful Shutdown is skipped. - * noGracefulShutdown: 'placeholder-value', + * const res = await compute.instanceSettings.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. + * // Name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "email": "my_email", + * // "fingerprint": "my_fingerprint", * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], + * // "metadata": {}, * // "zone": "my_zone" * // } * } @@ -118350,52 +124195,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - stop( - params: Params$Resource$Instances$Stop, + get( + params: Params$Resource$Instancesettings$Get, options: StreamMethodOptions ): Promise>; - stop( - params?: Params$Resource$Instances$Stop, + get( + params?: Params$Resource$Instancesettings$Get, options?: MethodOptions - ): Promise>; - stop( - params: Params$Resource$Instances$Stop, + ): Promise>; + get( + params: Params$Resource$Instancesettings$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Instances$Stop, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancesettings$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - stop( - params: Params$Resource$Instances$Stop, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancesettings$Get, + callback: BodyResponseCallback ): void; - stop(callback: BodyResponseCallback): void; - stop( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instances$Stop - | BodyResponseCallback + | Params$Resource$Instancesettings$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Stop; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancesettings$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Stop; + params = {} as Params$Resource$Instancesettings$Get; options = {}; } @@ -118410,37 +124256,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/stop' + '/compute/alpha/projects/{project}/zones/{zone}/instanceSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * This method suspends a running instance, saving its state to persistent - * storage, and allows you to resume the instance at a later time. Suspended - * instances have no compute costs (cores or RAM), and incur only storage - * charges for the saved VM memory and localSSD data. Any charged resources - * the virtual machine was using, such as persistent disks and static IP - * addresses, will continue to be charged while the instance is suspended. - * For more information, see - * Suspending and resuming an instance. + * Patch Instance settings * @example * ```js * // Before running the sample: @@ -118472,13 +124311,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.suspend({ - * // This property is required if the instance has any attached Local SSD disks. - * // If false, Local SSD data will be preserved when the instance is suspended. - * // If true, the contents of any attached Local SSD disks will be discarded. - * discardLocalSsd: 'placeholder-value', - * // Name of the instance resource to suspend. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceSettings.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])?))', @@ -118496,8 +124329,22 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * // The zone scoping this request. It should conform to RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "email": "my_email", + * // "fingerprint": "my_fingerprint", + * // "kind": "my_kind", + * // "metadata": {}, + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * @@ -118546,32 +124393,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, options: StreamMethodOptions ): Promise>; - suspend( - params?: Params$Resource$Instances$Suspend, + patch( + params?: Params$Resource$Instancesettings$Patch, options?: MethodOptions ): Promise>; - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - suspend( - params: Params$Resource$Instances$Suspend, + patch( + params: Params$Resource$Instancesettings$Patch, callback: BodyResponseCallback ): void; - suspend(callback: BodyResponseCallback): void; - suspend( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instances$Suspend + | Params$Resource$Instancesettings$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -118587,12 +124434,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Suspend; + {}) as Params$Resource$Instancesettings$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Suspend; + params = {} as Params$Resource$Instancesettings$Patch; options = {}; } @@ -118607,16 +124454,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/suspend' + '/compute/alpha/projects/{project}/zones/{zone}/instanceSettings' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -118628,9 +124475,66 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Instancesettings$Get extends StandardParameters { /** - * Returns permissions that a caller has on the specified resource. + * Project ID for this request. + */ + project?: string; + /** + * Name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instancesettings$Patch extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + /** + * The zone scoping this request. It should conform to RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InstanceSettings; + } + + export class Resource$Instancetemplates { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all InstanceTemplates resources, regional and global, + * available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -118663,28 +124567,120 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.testIamPermissions({ - * // Project ID for this request. + * const res = await compute.instanceTemplates.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -118700,57 +124696,57 @@ export namespace compute_alpha { * @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$Instances$Testiampermissions, + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Instances$Testiampermissions, + aggregatedList( + params?: Params$Resource$Instancetemplates$Aggregatedlist, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, + ): Promise>; + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Instances$Testiampermissions, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Instancetemplates$Aggregatedlist, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - testIamPermissions( + aggregatedList( paramsOrCallback?: - | Params$Resource$Instances$Testiampermissions - | BodyResponseCallback + | Params$Resource$Instancetemplates$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Testiampermissions; + {}) as Params$Resource$Instancetemplates$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Testiampermissions; + params = {} as Params$Resource$Instancetemplates$Aggregatedlist; options = {}; } @@ -118765,33 +124761,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/aggregated/instanceTemplates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Updates an instance only if the necessary resources are available. This - * method can update only a specific set of instance properties. See - * Updating a running instance for a list of updatable instance - * properties. + * Deletes the specified instance template. Deleting an instance template is + * permanent and cannot be undone. It is not possible to delete templates + * that are already in use by a managed instance group. * @example * ```js * // Before running the sample: @@ -118823,27 +124820,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.update({ - * // Whether to clear secure tags from the instance. - * // - * // This property if set to true will clear secure tags regardless of theresource.secure_tags. - * clearSecureTag: 'placeholder-value', - * // Whether to discard local SSDs from the instance during restart - * // default value is false. - * discardLocalSsd: 'placeholder-value', - * // Name of the instance resource to update. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Specifies the action to take when updating an instance even if the - * // updated properties do not require it. If not specified, then - * // Compute Engine acts based on the minimum action that the updated - * // properties require. - * minimalAction: 'placeholder-value', - * // Specifies the most disruptive action that can be taken on the instance - * // as part of the update. Compute Engine returns an error if the - * // instance properties require a more disruptive action as part of the - * // instance update. Valid options from lowest to highest are - * // NO_EFFECT, REFRESH, and RESTART. - * mostDisruptiveAllowedAction: 'placeholder-value', + * const res = await compute.instanceTemplates.delete({ + * // The name of the instance template to delete. + * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -118861,74 +124840,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "advancedMachineFeatures": {}, - * // "canIpForward": false, - * // "confidentialInstanceConfig": {}, - * // "cpuPlatform": "my_cpuPlatform", - * // "creationTimestamp": "my_creationTimestamp", - * // "deletionProtection": false, - * // "description": "my_description", - * // "disks": [], - * // "displayDevice": {}, - * // "eraseWindowsVssSignature": false, - * // "fingerprint": "my_fingerprint", - * // "guestAccelerators": [], - * // "hostname": "my_hostname", - * // "id": "my_id", - * // "identity": "my_identity", - * // "identityCertificate": false, - * // "instanceEncryptionKey": {}, - * // "keyRevocationActionType": "my_keyRevocationActionType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "lastStartTimestamp": "my_lastStartTimestamp", - * // "lastStopTimestamp": "my_lastStopTimestamp", - * // "lastSuspendedTimestamp": "my_lastSuspendedTimestamp", - * // "machineType": "my_machineType", - * // "metadata": {}, - * // "minCpuPlatform": "my_minCpuPlatform", - * // "name": "my_name", - * // "networkInterfaces": [], - * // "networkPerformanceConfig": {}, - * // "params": {}, - * // "partnerMetadata": {}, - * // "postKeyRevocationActionType": "my_postKeyRevocationActionType", - * // "preservedStateSizeGb": "my_preservedStateSizeGb", - * // "privateIpv6GoogleAccess": "my_privateIpv6GoogleAccess", - * // "reservationAffinity": {}, - * // "resourcePolicies": [], - * // "resourceStatus": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "scheduling": {}, - * // "secureTags": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serviceAccounts": [], - * // "serviceIntegrationSpecs": {}, - * // "shieldedInstanceConfig": {}, - * // "shieldedInstanceIntegrityPolicy": {}, - * // "shieldedVmConfig": {}, - * // "shieldedVmIntegrityPolicy": {}, - * // "sourceMachineImage": "my_sourceMachineImage", - * // "sourceMachineImageEncryptionKey": {}, - * // "startRestricted": false, - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "tags": {}, - * // "upcomingMaintenance": {}, - * // "workloadIdentityConfig": {}, - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -118977,32 +124888,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Instances$Update, + delete( + params?: Params$Resource$Instancetemplates$Delete, options?: MethodOptions ): Promise>; - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Instances$Update, + delete( + params: Params$Resource$Instancetemplates$Delete, callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Instances$Update + | Params$Resource$Instancetemplates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -119017,12 +124928,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Instances$Update; + let params = (paramsOrCallback || + {}) as Params$Resource$Instancetemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Update; + params = {} as Params$Resource$Instancetemplates$Delete; options = {}; } @@ -119037,16 +124949,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}' + '/compute/alpha/projects/{project}/global/instanceTemplates/{instanceTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PUT', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'instanceTemplate'], + pathParams: ['instanceTemplate', 'project'], context: this.context, }; if (callback) { @@ -119060,10 +124972,7 @@ export namespace compute_alpha { } /** - * Updates the specified access config from an instance's network interface - * with the data included in the request. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Returns the specified instance template. * @example * ```js * // Before running the sample: @@ -119087,6 +124996,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -119095,82 +125005,30 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateAccessConfig({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface where the access config is attached. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceTemplates.get({ + * // The name of the instance template. + * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "externalIpv6": "my_externalIpv6", - * // "externalIpv6PrefixLength": 0, - * // "kind": "my_kind", - * // "name": "my_name", - * // "natIP": "my_natIP", - * // "networkTier": "my_networkTier", - * // "publicDnsName": "my_publicDnsName", - * // "publicPtrDomainName": "my_publicPtrDomainName", - * // "securityPolicy": "my_securityPolicy", - * // "setPublicDns": false, - * // "setPublicPtr": false, - * // "type": "my_type" - * // } - * }, + * // View of the instance template. + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, + * // "properties": {}, * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceParams": {} * // } * } * @@ -119186,53 +125044,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, + get( + params: Params$Resource$Instancetemplates$Get, options: StreamMethodOptions ): Promise>; - updateAccessConfig( - params?: Params$Resource$Instances$Updateaccessconfig, + get( + params?: Params$Resource$Instancetemplates$Get, options?: MethodOptions - ): Promise>; - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, + ): Promise>; + get( + params: Params$Resource$Instancetemplates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancetemplates$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateAccessConfig( - params: Params$Resource$Instances$Updateaccessconfig, - callback: BodyResponseCallback + get( + params: Params$Resource$Instancetemplates$Get, + callback: BodyResponseCallback ): void; - updateAccessConfig(callback: BodyResponseCallback): void; - updateAccessConfig( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Instances$Updateaccessconfig - | BodyResponseCallback + | Params$Resource$Instancetemplates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updateaccessconfig; + {}) as Params$Resource$Instancetemplates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updateaccessconfig; + params = {} as Params$Resource$Instancetemplates$Get; options = {}; } @@ -119247,33 +125105,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig' + '/compute/alpha/projects/{project}/global/instanceTemplates/{instanceTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'instanceTemplate'], + pathParams: ['instanceTemplate', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the Display config for a VM instance. You can - * only use this method on a stopped VM instance. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -119297,6 +125153,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -119305,69 +125162,23 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateDisplayDevice({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.instanceTemplates.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "enableDisplay": false - * // } - * }, + * // 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 * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -119383,53 +125194,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, options: StreamMethodOptions ): Promise>; - updateDisplayDevice( - params?: Params$Resource$Instances$Updatedisplaydevice, + getIamPolicy( + params?: Params$Resource$Instancetemplates$Getiampolicy, options?: MethodOptions - ): Promise>; - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, + ): Promise>; + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateDisplayDevice( - params: Params$Resource$Instances$Updatedisplaydevice, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Instancetemplates$Getiampolicy, + callback: BodyResponseCallback ): void; - updateDisplayDevice(callback: BodyResponseCallback): void; - updateDisplayDevice( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Instances$Updatedisplaydevice - | BodyResponseCallback + | Params$Resource$Instancetemplates$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updatedisplaydevice; + {}) as Params$Resource$Instancetemplates$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updatedisplaydevice; + params = {} as Params$Resource$Instancetemplates$Getiampolicy; options = {}; } @@ -119444,35 +125255,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice' + '/compute/alpha/projects/{project}/global/instanceTemplates/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an instance's network interface. This method can only update an - * interface's alias IP range and attached network. See Modifying - * alias IP ranges for an existing instance for instructions on - * changing alias IP ranges. See Migrating - * a VM between networks for instructions on migrating an interface. - * This method follows PATCH semantics. + * Creates an instance template in the specified project using the + * data that is included in the request. If you are creating a new template to + * update an existing instance group, your new instance template must use the + * same network or, if applicable, the same subnetwork as the original + * template. * @example * ```js * // Before running the sample: @@ -119504,11 +125314,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateNetworkInterface({ - * // The instance name for this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the network interface to update. - * networkInterface: 'placeholder-value', + * const res = await compute.instanceTemplates.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])?))', @@ -119526,39 +125332,22 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "accessConfigs": [], - * // "aliasIpRanges": [], - * // "aliasIpv6Ranges": [], - * // "dns64Eligible": false, - * // "enableVpcScopedDns": false, - * // "fingerprint": "my_fingerprint", - * // "igmpQuery": "my_igmpQuery", - * // "internalIpv6PrefixLength": 0, - * // "ipv6AccessConfigs": [], - * // "ipv6AccessType": "my_ipv6AccessType", - * // "ipv6Address": "my_ipv6Address", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", * // "kind": "my_kind", - * // "macAddress": "my_macAddress", * // "name": "my_name", - * // "nat64Eligible": false, - * // "network": "my_network", - * // "networkAttachment": "my_networkAttachment", - * // "networkIP": "my_networkIP", - * // "nicType": "my_nicType", - * // "parentNicName": "my_parentNicName", - * // "queueCount": 0, - * // "serviceClassId": "my_serviceClassId", - * // "stackType": "my_stackType", - * // "subinterfaces": [], - * // "subnetwork": "my_subnetwork", - * // "vlan": 0 + * // "properties": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceParams": {} * // } * }, * }); @@ -119609,34 +125398,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, + insert( + params: Params$Resource$Instancetemplates$Insert, options: StreamMethodOptions ): Promise>; - updateNetworkInterface( - params?: Params$Resource$Instances$Updatenetworkinterface, + insert( + params?: Params$Resource$Instancetemplates$Insert, options?: MethodOptions ): Promise>; - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, + insert( + params: Params$Resource$Instancetemplates$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, + insert( + params: Params$Resource$Instancetemplates$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateNetworkInterface( - params: Params$Resource$Instances$Updatenetworkinterface, - callback: BodyResponseCallback - ): void; - updateNetworkInterface( + insert( + params: Params$Resource$Instancetemplates$Insert, callback: BodyResponseCallback ): void; - updateNetworkInterface( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Instances$Updatenetworkinterface + | Params$Resource$Instancetemplates$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -119652,12 +125439,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updatenetworkinterface; + {}) as Params$Resource$Instancetemplates$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updatenetworkinterface; + params = {} as Params$Resource$Instancetemplates$Insert; options = {}; } @@ -119672,16 +125459,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface' + '/compute/alpha/projects/{project}/global/instanceTemplates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance', 'networkInterface'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -119695,10 +125482,8 @@ export namespace compute_alpha { } /** - * Updates the Shielded Instance config for an instance. You can - * only use this method on a stopped instance. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Retrieves a list of instance templates that are contained within + * the specified project. * @example * ```js * // Before running the sample: @@ -119722,6 +125507,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -119730,71 +125516,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateShieldedInstanceConfig({ - * // Name or id of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceTemplates.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "enableIntegrityMonitoring": false, - * // "enableSecureBoot": false, - * // "enableVtpm": false - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // View of the instance template. + * view: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -119810,55 +125636,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, + list( + params: Params$Resource$Instancetemplates$List, options: StreamMethodOptions ): Promise>; - updateShieldedInstanceConfig( - params?: Params$Resource$Instances$Updateshieldedinstanceconfig, + list( + params?: Params$Resource$Instancetemplates$List, options?: MethodOptions - ): Promise>; - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, + ): Promise>; + list( + params: Params$Resource$Instancetemplates$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - updateShieldedInstanceConfig( - params: Params$Resource$Instances$Updateshieldedinstanceconfig, - callback: BodyResponseCallback - ): void; - updateShieldedInstanceConfig( - callback: BodyResponseCallback + list( + params: Params$Resource$Instancetemplates$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updateShieldedInstanceConfig( + list( + params: Params$Resource$Instancetemplates$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Instances$Updateshieldedinstanceconfig - | BodyResponseCallback + | Params$Resource$Instancetemplates$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updateshieldedinstanceconfig; + {}) as Params$Resource$Instancetemplates$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updateshieldedinstanceconfig; + params = {} as Params$Resource$Instancetemplates$List; options = {}; } @@ -119873,33 +125699,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig' + '/compute/alpha/projects/{project}/global/instanceTemplates' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the Shielded VM config for a VM instance. You can - * only use this method on a stopped VM instance. This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -119931,36 +125755,20 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instances.updateShieldedVmConfig({ - * // Name of the instance scoping this request. - * instance: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instanceTemplates.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[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 * // { - * // "enableIntegrityMonitoring": false, - * // "enableSecureBoot": false, - * // "enableVtpm": false + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -119968,1051 +125776,266 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "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. - */ - updateShieldedVmConfig( - params: Params$Resource$Instances$Updateshieldedvmconfig, - options: StreamMethodOptions - ): Promise>; - updateShieldedVmConfig( - params?: Params$Resource$Instances$Updateshieldedvmconfig, - options?: MethodOptions - ): Promise>; - updateShieldedVmConfig( - params: Params$Resource$Instances$Updateshieldedvmconfig, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - updateShieldedVmConfig( - params: Params$Resource$Instances$Updateshieldedvmconfig, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - updateShieldedVmConfig( - params: Params$Resource$Instances$Updateshieldedvmconfig, - callback: BodyResponseCallback - ): void; - updateShieldedVmConfig( - callback: BodyResponseCallback - ): void; - updateShieldedVmConfig( - paramsOrCallback?: - | Params$Resource$Instances$Updateshieldedvmconfig - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Instances$Updateshieldedvmconfig; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Instances$Updateshieldedvmconfig; - 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}/zones/{zone}/instances/{instance}/updateShieldedVmConfig' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'instance'], - pathParams: ['instance', 'project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Instances$Addaccessconfig extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface to add to this instance. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AccessConfig; - } - export interface Params$Resource$Instances$Addnetworkinterface extends StandardParameters { - /** - * The instance name for this request stored as resource_id. - * Name should conform to RFC1035 or be an unsigned long integer. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkInterface; - } - export interface Params$Resource$Instances$Addresourcepolicies extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesAddResourcePoliciesRequest; - } - export interface Params$Resource$Instances$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Instances$Attachdisk extends StandardParameters { - /** - * Whether to force attach the regional disk even if it's currently attached - * to another instance. If you try to force attach a zonal disk to an - * instance, you will receive an error. - */ - forceAttach?: boolean; - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AttachedDisk; - } - export interface Params$Resource$Instances$Bulkinsert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BulkInsertInstanceResource; - } - export interface Params$Resource$Instances$Delete extends StandardParameters { - /** - * Name of the instance resource to delete. - */ - instance?: string; - /** - * If set to true, Graceful Shutdown is skipped. - */ - noGracefulShutdown?: boolean; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Deleteaccessconfig extends StandardParameters { - /** - * The name of the access config to delete. - */ - accessConfig?: string; - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Deletenetworkinterface extends StandardParameters { - /** - * The instance name for this request stored as resource_id. - * Name should conform to RFC1035 or be an unsigned long integer. - */ - instance?: string; - /** - * The name of the dynamic network interface to be deleted from the instance. - */ - networkInterfaceName?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Detachdisk extends StandardParameters { - /** - * The device name of the disk to detach. Make a get() request on - * the instance to view currently attached disks and device names. - */ - deviceName?: string; - /** - * Instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Get extends StandardParameters { - /** - * Name of the instance resource to return. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * View of the instance. - */ - view?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Geteffectivefirewalls extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * The name of the network interface to get the effective firewalls. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getguestattributes extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Specifies the guest attributes path to be queried. - */ - queryPath?: string; - /** - * Specifies the key for the guest attributes entry. - */ - variableKey?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getpartnermetadata extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Comma separated partner metadata namespaces. - */ - namespaces?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getscreenshot extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getserialportoutput extends StandardParameters { - /** - * Name of the instance for this request. - */ - instance?: string; - /** - * Specifies which COM or serial port to retrieve data from. - */ - port?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Specifies the starting byte position of the output to return. To start with - * the first byte of output to the specified port, omit this field or set it - * to `0`. - * - * If the output for that byte position is available, this field matches the - * `start` parameter sent with the request. If the amount of serial console - * output exceeds the size of the buffer (1 MB), the oldest output is - * discarded and is no longer available. If the requested start position - * refers to discarded output, the start position is adjusted to the oldest - * output still available, and the adjusted start position is returned as the - * `start` property value. - * - * You can also provide a negative start position, which translates to the - * most recent number of bytes written to the serial port. For example, -3 is - * interpreted as the most recent 3 bytes written to the serial console. Note - * that the negative start is bounded by the retained buffer size, and the - * returned serial console output will not exceed the max buffer size. - */ - start?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getshieldedinstanceidentity extends StandardParameters { - /** - * Name or id of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getshieldedvmidentity extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Getvmextensionstate extends StandardParameters { - /** - * The name of the extension to get the state for. - */ - extensionName?: string; - /** - * Name or id of the instance resource. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Specifies instance template to create the instance. - * - * This field is optional. It can be a full or partial URL. For example, the - * following are all valid URLs to an instance template: - * - * - * - https://www.googleapis.com/compute/v1/projects/project/global/instanceTemplates/instanceTemplate - * - projects/project/global/instanceTemplates/instanceTemplate - * - global/instanceTemplates/instanceTemplate - */ - sourceInstanceTemplate?: string; - /** - * Specifies the machine image to use to create the instance. - * - * This field is optional. It can be a full or partial URL. For example, the - * following are all valid URLs to a machine image: - * - * - * - https://www.googleapis.com/compute/v1/projects/project/global/global/machineImages/machineImage - * - projects/project/global/global/machineImages/machineImage - * - global/machineImages/machineImage - */ - sourceMachineImage?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Instance; - } - export interface Params$Resource$Instances$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * View of the instance. - */ - view?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Listreferrers extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * * ``` * - * 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 onresource labels. + * @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$Instancetemplates$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Instancetemplates$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instancetemplates$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Instancetemplates$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancetemplates$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancetemplates$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/alpha/projects/{project}/global/instanceTemplates/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', '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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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) - * ``` + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * 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', + * ], + * }); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Do the magic + * const res = await compute.instanceTemplates.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])?))', + * // 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}', * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - filter?: string; - /** - * Name of the target instance scoping this request, or '-' if the - * request should span over all instances in the container. - */ - instance?: 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. + * // Example response + * // { + * // "permissions": [] + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of the zone for this request. + * @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. */ - zone?: string; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Instancetemplates$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Instancetemplates$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Instancetemplates$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instancetemplates$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instancetemplates$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/alpha/projects/{project}/global/instanceTemplates/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } } - export interface Params$Resource$Instances$Listvmextensionstates extends StandardParameters { + + export interface Params$Resource$Instancetemplates$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -121075,752 +126098,67 @@ export namespace compute_alpha { */ filter?: string; /** - * Name of the target instance scoping this request. - */ - instance?: 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * Required. Name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Patchpartnermetadata extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$PartnerMetadata; - } - export interface Params$Resource$Instances$Performmaintenance extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Removeresourcepolicies extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesRemoveResourcePoliciesRequest; - } - export interface Params$Resource$Instances$Reporthostasfaulty extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesReportHostAsFaultyRequest; - } - export interface Params$Resource$Instances$Reset extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Resume extends StandardParameters { - /** - * Name of the instance resource to resume. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesResumeRequest; - } - export interface Params$Resource$Instances$Senddiagnosticinterrupt extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Setdeletionprotection extends StandardParameters { - /** - * Whether the resource should be protected against deletion. - */ - deletionProtection?: boolean; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Setdiskautodelete extends StandardParameters { - /** - * Whether to auto-delete the disk when the instance is deleted. - */ - autoDelete?: boolean; - /** - * The device name of the disk to modify. Make a get() request - * on the instance to view currently attached disks and device names. - */ - deviceName?: string; - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Instances$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ZoneSetPolicyRequest; - } - export interface Params$Resource$Instances$Setlabels extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetLabelsRequest; - } - export interface Params$Resource$Instances$Setmachineresources extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetMachineResourcesRequest; - } - export interface Params$Resource$Instances$Setmachinetype extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetMachineTypeRequest; - } - export interface Params$Resource$Instances$Setmetadata extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Metadata; - } - export interface Params$Resource$Instances$Setmincpuplatform extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetMinCpuPlatformRequest; - } - export interface Params$Resource$Instances$Setname extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetNameRequest; - } - export interface Params$Resource$Instances$Setscheduling extends StandardParameters { - /** - * Instance name for this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Scheduling; - } - export interface Params$Resource$Instances$Setsecuritypolicy extends StandardParameters { - /** - * Name of the Instance resource to which the security policy should be - * set. The name should conform to RFC1035. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Name of the zone scoping this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetSecurityPolicyRequest; - } - export interface Params$Resource$Instances$Setserviceaccount extends StandardParameters { - /** - * Name of the instance resource to start. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InstancesSetServiceAccountRequest; - } - export interface Params$Resource$Instances$Setshieldedinstanceintegritypolicy extends StandardParameters { - /** - * Name or id of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). + * 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. */ - requestId?: string; + includeAllScopes?: boolean; /** - * The name of the zone for this request. + * 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`) */ - zone?: string; - + maxResults?: number; /** - * Request body metadata + * 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. */ - requestBody?: Schema$ShieldedInstanceIntegrityPolicy; - } - export interface Params$Resource$Instances$Setshieldedvmintegritypolicy extends StandardParameters { + orderBy?: string; /** - * Name of the instance scoping this request. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - instance?: string; + pageToken?: string; /** - * Project ID for this request. + * Name of the project scoping this request. */ project?: 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. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - zone?: string; - + returnPartialSuccess?: boolean; /** - * Request body metadata + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. */ - requestBody?: Schema$ShieldedVmIntegrityPolicy; + serviceProjectNumber?: string; } - export interface Params$Resource$Instances$Settags extends StandardParameters { + export interface Params$Resource$Instancetemplates$Delete extends StandardParameters { /** - * Name of the instance scoping this request. + * The name of the instance template to delete. */ - instance?: string; + instanceTemplate?: string; /** * Project ID for this request. */ @@ -121841,86 +126179,36 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$Tags; } - export interface Params$Resource$Instances$Simulatemaintenanceevent extends StandardParameters { + export interface Params$Resource$Instancetemplates$Get extends StandardParameters { /** - * Name of the instance scoping this request. + * The name of the instance template. */ - instance?: string; + instanceTemplate?: string; /** * Project ID for this request. */ project?: 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). - */ - requestId?: string; - /** - * Determines whether the customers receive notifications before migration. - * Only applicable to SF vms. - */ - withExtendedNotifications?: boolean; - /** - * The name of the zone for this request. + * View of the instance template. */ - zone?: string; + view?: string; } - export interface Params$Resource$Instances$Start extends StandardParameters { + export interface Params$Resource$Instancetemplates$Getiampolicy extends StandardParameters { /** - * Name of the instance resource to start. + * Requested IAM Policy version. */ - instance?: string; + optionsRequestedPolicyVersion?: number; /** * Project ID for this request. */ project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; } - export interface Params$Resource$Instances$Startwithencryptionkey extends StandardParameters { - /** - * Name of the instance resource to start. - */ - instance?: string; + export interface Params$Resource$Instancetemplates$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -121941,93 +126229,136 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstancesStartWithEncryptionKeyRequest; + requestBody?: Schema$InstanceTemplate; } - export interface Params$Resource$Instances$Stop extends StandardParameters { + export interface Params$Resource$Instancetemplates$List extends StandardParameters { /** - * This property is required if the instance has any attached Local SSD disks. - * If false, Local SSD data will be preserved when the instance is suspended. - * If true, the contents of any attached Local SSD disks will be discarded. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - discardLocalSsd?: boolean; + filter?: string; /** - * Name of the instance resource to stop. + * 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`) */ - instance?: string; + maxResults?: number; /** - * If set to true, Graceful Shutdown is skipped. + * 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. */ - noGracefulShutdown?: boolean; + 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; /** - * 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. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestId?: string; + returnPartialSuccess?: boolean; /** - * The name of the zone for this request. + * View of the instance template. */ - zone?: string; + view?: string; } - export interface Params$Resource$Instances$Suspend extends StandardParameters { - /** - * This property is required if the instance has any attached Local SSD disks. - * If false, Local SSD data will be preserved when the instance is suspended. - * If true, the contents of any attached Local SSD disks will be discarded. - */ - discardLocalSsd?: boolean; - /** - * Name of the instance resource to suspend. - */ - instance?: string; + export interface Params$Resource$Instancetemplates$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: 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). + * Name or id of the resource for this request. */ - requestId?: string; + resource?: string; + /** - * The name of the zone for this request. + * Request body metadata */ - zone?: string; + requestBody?: Schema$GlobalSetPolicyRequest; } - export interface Params$Resource$Instances$Testiampermissions extends StandardParameters { + export interface Params$Resource$Instancetemplates$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -122036,269 +126367,968 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ requestBody?: Schema$TestPermissionsRequest; } - export interface Params$Resource$Instances$Update extends StandardParameters { + + export class Resource$Instantsnapshotgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + /** - * Whether to clear secure tags from the instance. + * deletes a Zonal InstantSnapshotGroup 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * This property if set to true will clear secure tags regardless of theresource.secure_tags. - */ - clearSecureTag?: boolean; - /** - * Whether to discard local SSDs from the instance during restart - * default value is false. - */ - discardLocalSsd?: boolean; - /** - * Name of the instance resource to update. - */ - instance?: string; - /** - * Specifies the action to take when updating an instance even if the - * updated properties do not require it. If not specified, then - * Compute Engine acts based on the minimum action that the updated - * properties require. - */ - minimalAction?: string; - /** - * Specifies the most disruptive action that can be taken on the instance - * as part of the update. Compute Engine returns an error if the - * instance properties require a more disruptive action as part of the - * instance update. Valid options from lowest to highest are - * NO_EFFECT, REFRESH, and RESTART. + * 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.instantSnapshotGroups.delete({ + * // Name of the InstantSnapshot resource to delete. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. */ - mostDisruptiveAllowedAction?: string; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Instantsnapshotgroups$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Instantsnapshotgroups$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$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/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * Project ID for this request. + * returns the specified InstantSnapshotGroup resource in the specified zone. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.instantSnapshotGroups.get({ + * // Name of the InstantSnapshotGroup resource to return. + * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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 zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", + * // "status": "my_status", + * // "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. */ - project?: string; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Instantsnapshotgroups$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Instantsnapshotgroups$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$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/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'instantSnapshotGroup'], + pathParams: ['instantSnapshotGroup', 'project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * 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. + * 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * 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.instantSnapshotGroups.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])?))', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * 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. */ - requestId?: string; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$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/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * The name of the zone for this request. + * inserts a Zonal InstantSnapshotGroup 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instantSnapshotGroups.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])?))', + * // 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). + * requestId: 'placeholder-value', + * // begin_interface: MixerMutationRequestBuilder + * sourceConsistencyGroup: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "resourceStatus": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. */ - zone?: string; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Instantsnapshotgroups$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Instantsnapshotgroups$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$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/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$Instance; - } - export interface Params$Resource$Instances$Updateaccessconfig extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface where the access config is attached. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: 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. + * retrieves the list of InstantSnapshotGroup resources contained within + * the specified zone. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AccessConfig; - } - export interface Params$Resource$Instances$Updatedisplaydevice extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DisplayDevice; - } - export interface Params$Resource$Instances$Updatenetworkinterface extends StandardParameters { - /** - * The instance name for this request. - */ - instance?: string; - /** - * The name of the network interface to update. - */ - networkInterface?: string; - /** - * Project ID for this request. - */ - project?: 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. + * // Do the magic + * const res = await compute.instantSnapshotGroups.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkInterface; - } - export interface Params$Resource$Instances$Updateshieldedinstanceconfig extends StandardParameters { - /** - * Name or id of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). - */ - requestId?: string; - /** - * The name of the zone for this request. + * @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. */ - zone?: string; + list( + params: Params$Resource$Instantsnapshotgroups$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Instantsnapshotgroups$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Instantsnapshotgroups$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Instantsnapshotgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Instantsnapshotgroups$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Instantsnapshotgroups$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshotgroups$List; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$ShieldedInstanceConfig; - } - export interface Params$Resource$Instances$Updateshieldedvmconfig extends StandardParameters { - /** - * Name of the instance scoping this request. - */ - instance?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshotgroups$List; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$ShieldedVmConfig; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Instancesettings { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Get Instance settings. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -122322,7 +127352,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -122331,22 +127360,33 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceSettings.get({ + * const res = await compute.instantSnapshotGroups.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])?))', - * // Name of the zone for this request. + * // 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}', + * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "email": "my_email", - * // "fingerprint": "my_fingerprint", - * // "kind": "my_kind", - * // "metadata": {}, - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -122362,53 +127402,53 @@ export namespace compute_alpha { * @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$Instancesettings$Get, + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Instancesettings$Get, + setIamPolicy( + params?: Params$Resource$Instantsnapshotgroups$Setiampolicy, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Instancesettings$Get, + ): Promise>; + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancesettings$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Instancesettings$Get, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Instancesettings$Get - | BodyResponseCallback + | Params$Resource$Instantsnapshotgroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancesettings$Get; + {}) as Params$Resource$Instantsnapshotgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancesettings$Get; + params = {} as Params$Resource$Instantsnapshotgroups$Setiampolicy; options = {}; } @@ -122423,30 +127463,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceSettings' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patch Instance settings + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -122470,6 +127510,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -122478,38 +127519,20 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceSettings.patch({ + * const res = await compute.instantSnapshotGroups.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', - * // The zone scoping this request. It should conform to RFC1035. - * zone: 'placeholder-value', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "email": "my_email", - * // "fingerprint": "my_fingerprint", - * // "kind": "my_kind", - * // "metadata": {}, - * // "zone": "my_zone" + * // "permissions": [] * // } * }, * }); @@ -122517,34 +127540,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -122560,53 +127556,57 @@ export namespace compute_alpha { * @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$Instancesettings$Patch, + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Instancesettings$Patch, + testIamPermissions( + params?: Params$Resource$Instantsnapshotgroups$Testiampermissions, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Instancesettings$Patch, + ): Promise>; + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancesettings$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Instancesettings$Patch, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancesettings$Patch - | BodyResponseCallback + | Params$Resource$Instantsnapshotgroups$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancesettings$Patch; + {}) as Params$Resource$Instantsnapshotgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancesettings$Patch; + params = {} as Params$Resource$Instantsnapshotgroups$Testiampermissions; options = {}; } @@ -122621,40 +127621,92 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instanceSettings' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Instancesettings$Get extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Delete extends StandardParameters { + /** + * Name of the InstantSnapshot resource to delete. + */ + instantSnapshotGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name of the zone for this request. + * 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). + */ + requestId?: string; + /** + * The name of the zone for this request. */ zone?: string; } - export interface Params$Resource$Instancesettings$Patch extends StandardParameters { + export interface Params$Resource$Instantsnapshotgroups$Get extends StandardParameters { + /** + * Name of the InstantSnapshotGroup resource to return. + */ + instantSnapshotGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instantsnapshotgroups$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Instantsnapshotgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -122676,29 +127728,174 @@ export namespace compute_alpha { */ requestId?: string; /** - * update_mask indicates fields to be updated as part of this request. + * begin_interface: MixerMutationRequestBuilder */ - updateMask?: string; + sourceConsistencyGroup?: string; /** - * The zone scoping this request. It should conform to RFC1035. + * Name of the zone for this request. */ zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceSettings; + requestBody?: Schema$InstantSnapshotGroup; + } + export interface Params$Resource$Instantsnapshotgroups$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; } + export interface Params$Resource$Instantsnapshotgroups$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - export class Resource$Instancetemplates { + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetPolicyRequest; + } + export interface Params$Resource$Instantsnapshotgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Instantsnapshots { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves the list of all InstanceTemplates resources, regional and global, - * available to the specified project. + * Retrieves an aggregated list of instantSnapshots. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -122734,7 +127931,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.aggregatedList({ + * const res = await compute.instantSnapshots.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -122824,7 +128021,7 @@ export namespace compute_alpha { * // `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 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])?))', * // Opt-in for partial success behavior which provides partial results in case @@ -122847,6 +128044,7 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -122864,56 +128062,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Instancetemplates$Aggregatedlist, + params?: Params$Resource$Instantsnapshots$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise>; aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, + params: Params$Resource$Instantsnapshots$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instancetemplates$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Instancetemplates$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Aggregatedlist; + {}) as Params$Resource$Instantsnapshots$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Aggregatedlist; + params = {} as Params$Resource$Instantsnapshots$Aggregatedlist; options = {}; } @@ -122928,7 +128126,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/instanceTemplates' + '/compute/alpha/projects/{project}/aggregated/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -122941,21 +128139,26 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified instance template. Deleting an instance template is - * permanent and cannot be undone. It is not possible to delete templates - * that are already in use by a managed instance group. + * Deletes the specified InstantSnapshot resource. Keep in mind that deleting + * a single instantSnapshot might not necessarily delete all the data on that + * instantSnapshot. If any data on the instantSnapshot that is marked for + * deletion is needed for subsequent instantSnapshots, the data will be moved + * to the next corresponding instantSnapshot. + * + * For more information, seeDeleting + * instantSnapshots. * @example * ```js * // Before running the sample: @@ -122987,9 +128190,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.delete({ - * // The name of the instance template to delete. - * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.delete({ + * // Name of the InstantSnapshot resource to delete. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -123007,6 +128210,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -123056,31 +128261,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instancetemplates$Delete, + params?: Params$Resource$Instantsnapshots$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instancetemplates$Delete, + params: Params$Resource$Instantsnapshots$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instancetemplates$Delete + | Params$Resource$Instantsnapshots$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -123096,12 +128301,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Delete; + {}) as Params$Resource$Instantsnapshots$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Delete; + params = {} as Params$Resource$Instantsnapshots$Delete; options = {}; } @@ -123116,7 +128321,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates/{instanceTemplate}' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -123124,8 +128329,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'instanceTemplate'], - pathParams: ['instanceTemplate', 'project'], + requiredParams: ['project', 'zone', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'zone'], context: this.context, }; if (callback) { @@ -123139,7 +128344,7 @@ export namespace compute_alpha { } /** - * Returns the specified instance template. + * Returns the specified InstantSnapshot resource in the specified zone. * @example * ```js * // Before running the sample: @@ -123172,30 +128377,42 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.get({ - * // The name of the instance template. - * instanceTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.instantSnapshots.get({ + * // Name of the InstantSnapshot resource to return. + * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // View of the instance template. - * view: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "guestFlush": false, * // "id": "my_id", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, * // "name": "my_name", - * // "properties": {}, + * // "params": {}, * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceParams": {} + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" * // } * } * @@ -123212,52 +128429,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instancetemplates$Get, + params: Params$Resource$Instantsnapshots$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instancetemplates$Get, + params?: Params$Resource$Instantsnapshots$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instancetemplates$Get, + params: Params$Resource$Instantsnapshots$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancetemplates$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instancetemplates$Get, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instancetemplates$Get - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Get; + {}) as Params$Resource$Instantsnapshots$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Get; + params = {} as Params$Resource$Instantsnapshots$Get; options = {}; } @@ -123272,7 +128489,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates/{instanceTemplate}' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -123280,17 +128497,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'instanceTemplate'], - pathParams: ['instanceTemplate', 'project'], + requiredParams: ['project', 'zone', 'instantSnapshot'], + pathParams: ['instantSnapshot', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -123329,14 +128546,16 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.getIamPolicy({ + * const res = await compute.instantSnapshots.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])?))', * // 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}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -123362,31 +128581,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Instancetemplates$Getiampolicy, + params?: Params$Resource$Instantsnapshots$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instancetemplates$Getiampolicy, + params: Params$Resource$Instantsnapshots$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Instancetemplates$Getiampolicy + | Params$Resource$Instantsnapshots$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -123402,12 +128621,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Getiampolicy; + {}) as Params$Resource$Instantsnapshots$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Getiampolicy; + params = {} as Params$Resource$Instantsnapshots$Getiampolicy; options = {}; } @@ -123422,7 +128641,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -123430,8 +128649,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -123445,11 +128664,7 @@ export namespace compute_alpha { } /** - * Creates an instance template in the specified project using the - * data that is included in the request. If you are creating a new template to - * update an existing instance group, your new instance template must use the - * same network or, if applicable, the same subnetwork as the original - * template. + * Creates an instant snapshot in the specified zone. * @example * ```js * // Before running the sample: @@ -123481,7 +128696,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.insert({ + * const res = await compute.instantSnapshots.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])?))', @@ -123499,22 +128714,36 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "architecture": "my_architecture", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "diskSizeGb": "my_diskSizeGb", + * // "guestFlush": false, * // "id": "my_id", * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, * // "name": "my_name", - * // "properties": {}, + * // "params": {}, * // "region": "my_region", + * // "resourceStatus": {}, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceParams": {} + * // "sourceDisk": "my_sourceDisk", + * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", + * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -123566,31 +128795,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instancetemplates$Insert, + params?: Params$Resource$Instantsnapshots$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instancetemplates$Insert, + params: Params$Resource$Instantsnapshots$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instancetemplates$Insert + | Params$Resource$Instantsnapshots$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -123606,12 +128835,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Insert; + {}) as Params$Resource$Instantsnapshots$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Insert; + params = {} as Params$Resource$Instantsnapshots$Insert; options = {}; } @@ -123626,7 +128855,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -123634,8 +128863,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { @@ -123649,8 +128878,8 @@ export namespace compute_alpha { } /** - * Retrieves a list of instance templates that are contained within - * the specified project. + * Retrieves the list of InstantSnapshot resources contained within + * the specified zone. * @example * ```js * // Before running the sample: @@ -123683,7 +128912,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.list({ + * const res = await compute.instantSnapshots.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -123775,8 +129004,8 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // View of the instance template. - * view: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -123804,54 +129033,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instancetemplates$List, + params: Params$Resource$Instantsnapshots$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instancetemplates$List, + params?: Params$Resource$Instantsnapshots$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Instancetemplates$List, + params: Params$Resource$Instantsnapshots$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancetemplates$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instancetemplates$List, - callback: BodyResponseCallback + params: Params$Resource$Instantsnapshots$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Instancetemplates$List - | BodyResponseCallback + | Params$Resource$Instantsnapshots$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$List; + {}) as Params$Resource$Instantsnapshots$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$List; + params = {} as Params$Resource$Instantsnapshots$List; options = {}; } @@ -123866,7 +129093,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -123874,17 +129101,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -123922,12 +129149,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.setIamPolicy({ + * const res = await compute.instantSnapshots.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])?))', * // 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}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -123962,53 +129191,250 @@ export namespace compute_alpha { * @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$Instancetemplates$Setiampolicy, + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Instantsnapshots$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Instantsnapshots$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Instantsnapshots$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Instantsnapshots$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Instantsnapshots$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/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the labels on a instantSnapshot in the given zone. To learn more about + * labels, read the Labeling + * Resources documentation. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.instantSnapshots.setLabels({ + * // 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])?))', + * // 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). + * requestId: 'placeholder-value', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Instancetemplates$Setiampolicy, + setLabels( + params?: Params$Resource$Instantsnapshots$Setlabels, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, + ): Promise>; + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Instancetemplates$Setiampolicy, - callback: BodyResponseCallback + setLabels( + params: Params$Resource$Instantsnapshots$Setlabels, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + setLabels(callback: BodyResponseCallback): void; + setLabels( paramsOrCallback?: - | Params$Resource$Instancetemplates$Setiampolicy - | BodyResponseCallback + | Params$Resource$Instantsnapshots$Setlabels + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Setiampolicy; + {}) as Params$Resource$Instantsnapshots$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Setiampolicy; + params = {} as Params$Resource$Instantsnapshots$Setlabels; options = {}; } @@ -124023,7 +129449,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -124031,17 +129457,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -124079,12 +129505,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instanceTemplates.testIamPermissions({ + * const res = await compute.instantSnapshots.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])?))', * // 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}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -124115,27 +129543,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Instancetemplates$Testiampermissions, + params?: Params$Resource$Instantsnapshots$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instancetemplates$Testiampermissions, + params: Params$Resource$Instantsnapshots$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -124143,7 +129571,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Instancetemplates$Testiampermissions + | Params$Resource$Instantsnapshots$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -124159,12 +129587,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instancetemplates$Testiampermissions; + {}) as Params$Resource$Instantsnapshots$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instancetemplates$Testiampermissions; + params = {} as Params$Resource$Instantsnapshots$Testiampermissions; options = {}; } @@ -124179,7 +129607,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/instanceTemplates/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -124187,8 +129615,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { @@ -124202,7 +129630,7 @@ export namespace compute_alpha { } } - export interface Params$Resource$Instancetemplates$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -124303,7 +129731,7 @@ export namespace compute_alpha { */ pageToken?: string; /** - * Name of the project scoping this request. + * Project ID for this request. */ project?: string; /** @@ -124321,11 +129749,11 @@ export namespace compute_alpha { */ serviceProjectNumber?: string; } - export interface Params$Resource$Instancetemplates$Delete extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Delete extends StandardParameters { /** - * The name of the instance template to delete. + * Name of the InstantSnapshot resource to delete. */ - instanceTemplate?: string; + instantSnapshot?: string; /** * Project ID for this request. */ @@ -124346,22 +129774,26 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Instancetemplates$Get extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Get extends StandardParameters { /** - * The name of the instance template. + * Name of the InstantSnapshot resource to return. */ - instanceTemplate?: string; + instantSnapshot?: string; /** * Project ID for this request. */ project?: string; /** - * View of the instance template. + * The name of the zone for this request. */ - view?: string; + zone?: string; } - export interface Params$Resource$Instancetemplates$Getiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -124374,8 +129806,12 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Instancetemplates$Insert extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -124396,13 +129832,17 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstanceTemplate; + requestBody?: Schema$InstantSnapshot; } - export interface Params$Resource$Instancetemplates$List extends StandardParameters { + export interface Params$Resource$Instantsnapshots$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -124506,11 +129946,11 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * View of the instance template. + * The name of the zone for this request. */ - view?: string; + zone?: string; } - export interface Params$Resource$Instancetemplates$Setiampolicy extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -124519,13 +129959,52 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$GlobalSetPolicyRequest; + requestBody?: Schema$ZoneSetPolicyRequest; } - export interface Params$Resource$Instancetemplates$Testiampermissions extends StandardParameters { + export interface Params$Resource$Instantsnapshots$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ZoneSetLabelsRequest; + } + export interface Params$Resource$Instantsnapshots$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -124534,6 +130013,10 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata @@ -124541,14 +130024,15 @@ export namespace compute_alpha { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Instantsnapshotgroups { + export class Resource$Interconnectattachmentgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * deletes a Zonal InstantSnapshotGroup resource + * Create Interconnect Attachments with redundancy by creating them in a + * specified interconnect attachment group. * @example * ```js * // Before running the sample: @@ -124580,9 +130064,190 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.delete({ - * // Name of the InstantSnapshot resource to delete. - * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachmentGroups.createMembers({ + * // Name of the group resource to create members for. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "request": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + createMembers( + params: Params$Resource$Interconnectattachmentgroups$Createmembers, + options: StreamMethodOptions + ): Promise>; + createMembers( + params?: Params$Resource$Interconnectattachmentgroups$Createmembers, + options?: MethodOptions + ): Promise>; + createMembers( + params: Params$Resource$Interconnectattachmentgroups$Createmembers, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createMembers( + params: Params$Resource$Interconnectattachmentgroups$Createmembers, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + createMembers( + params: Params$Resource$Interconnectattachmentgroups$Createmembers, + callback: BodyResponseCallback + ): void; + createMembers(callback: BodyResponseCallback): void; + createMembers( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Createmembers + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Createmembers; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Interconnectattachmentgroups$Createmembers; + 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}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/createMembers' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified InterconnectAttachmentGroup 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.interconnectAttachmentGroups.delete({ + * // Name of the InterconnectAttachmentGroup resource to delete. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -124599,9 +130264,8 @@ export namespace compute_alpha { * // 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 name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -124651,31 +130315,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instantsnapshotgroups$Delete, + params?: Params$Resource$Interconnectattachmentgroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshotgroups$Delete, + params: Params$Resource$Interconnectattachmentgroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Delete + | Params$Resource$Interconnectattachmentgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -124691,12 +130355,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Delete; + {}) as Params$Resource$Interconnectattachmentgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Delete; + params = {} as Params$Resource$Interconnectattachmentgroups$Delete; options = {}; } @@ -124711,7 +130375,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -124719,8 +130383,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshotGroup'], - pathParams: ['instantSnapshotGroup', 'project', 'zone'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { @@ -124734,7 +130398,8 @@ export namespace compute_alpha { } /** - * returns the specified InstantSnapshotGroup resource in the specified zone. + * Returns the specified InterconnectAttachmentGroup resource in the given + * scope. * @example * ```js * // Before running the sample: @@ -124767,31 +130432,30 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.get({ - * // Name of the InstantSnapshotGroup resource to return. - * instantSnapshotGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachmentGroups.get({ + * // Name of the InterconnectAttachmentGroup resource to return. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "etag": "my_etag", * // "id": "my_id", + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", + * // "logicalStructure": {}, * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", - * // "status": "my_status", - * // "zone": "my_zone" + * // "selfLink": "my_selfLink" * // } * } * @@ -124808,54 +130472,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instantsnapshotgroups$Get, + params: Params$Resource$Interconnectattachmentgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instantsnapshotgroups$Get, + params?: Params$Resource$Interconnectattachmentgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instantsnapshotgroups$Get, + params: Params$Resource$Interconnectattachmentgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshotgroups$Get, + params: Params$Resource$Interconnectattachmentgroups$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshotgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachmentgroups$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Get - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Get; + {}) as Params$Resource$Interconnectattachmentgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Get; + params = {} as Params$Resource$Interconnectattachmentgroups$Get; options = {}; } @@ -124870,7 +130536,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{instantSnapshotGroup}' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -124878,17 +130544,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshotGroup'], - pathParams: ['instantSnapshotGroup', 'project', 'zone'], + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -124927,16 +130593,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.getIamPolicy({ + * const res = await compute.interconnectAttachmentGroups.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])?))', * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -124962,31 +130626,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params?: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Getiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Getiampolicy + | Params$Resource$Interconnectattachmentgroups$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -125002,12 +130666,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Getiampolicy; + {}) as Params$Resource$Interconnectattachmentgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Getiampolicy; + params = + {} as Params$Resource$Interconnectattachmentgroups$Getiampolicy; options = {}; } @@ -125022,7 +130687,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -125030,8 +130695,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -125045,7 +130710,8 @@ export namespace compute_alpha { } /** - * inserts a Zonal InstantSnapshotGroup resource + * Returns the InterconnectAttachmentStatuses for the specified + * InterconnectAttachmentGroup resource. * @example * ```js * // Before running the sample: @@ -125069,6 +130735,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -125077,7 +130744,164 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.insert({ + * const res = await compute.interconnectAttachmentGroups.getOperationalStatus({ + * // Name of the interconnectAttachmentGroup resource to query. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "result": {} + * // } + * } + * + * 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. + */ + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options: StreamMethodOptions + ): Promise>; + getOperationalStatus( + params?: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getOperationalStatus( + params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + callback: BodyResponseCallback + ): void; + getOperationalStatus( + callback: BodyResponseCallback + ): void; + getOperationalStatus( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Getoperationalstatus + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + 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}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/getOperationalStatus' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Creates a InterconnectAttachmentGroup 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.interconnectAttachmentGroups.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])?))', @@ -125094,28 +130918,25 @@ export namespace compute_alpha { * // 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', - * // begin_interface: MixerMutationRequestBuilder - * sourceConsistencyGroup: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "attachments": {}, + * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "etag": "my_etag", * // "id": "my_id", + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", * // "kind": "my_kind", + * // "logicalStructure": {}, * // "name": "my_name", - * // "region": "my_region", - * // "resourceStatus": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceConsistencyGroup": "my_sourceConsistencyGroup", - * // "status": "my_status", - * // "zone": "my_zone" + * // "selfLink": "my_selfLink" * // } * }, * }); @@ -125167,31 +130988,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instantsnapshotgroups$Insert, + params?: Params$Resource$Interconnectattachmentgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshotgroups$Insert, + params: Params$Resource$Interconnectattachmentgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Insert + | Params$Resource$Interconnectattachmentgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -125207,12 +131028,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Insert; + {}) as Params$Resource$Interconnectattachmentgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Insert; + params = {} as Params$Resource$Interconnectattachmentgroups$Insert; options = {}; } @@ -125227,7 +131048,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -125235,8 +131056,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -125250,8 +131071,7 @@ export namespace compute_alpha { } /** - * retrieves the list of InstantSnapshotGroup resources contained within - * the specified zone. + * Lists the InterconnectAttachmentGroups for a project in the given scope. * @example * ```js * // Before running the sample: @@ -125284,7 +131104,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.list({ + * const res = await compute.interconnectAttachmentGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -125376,8 +131196,6 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -125407,56 +131225,60 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Instantsnapshotgroups$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Instantsnapshotgroups$List, + params?: Params$Resource$Interconnectattachmentgroups$List, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; list( - params: Params$Resource$Instantsnapshotgroups$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshotgroups$List, + params: Params$Resource$Interconnectattachmentgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Instantsnapshotgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachmentgroups$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$List - | BodyResponseCallback + | Params$Resource$Interconnectattachmentgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$List; + {}) as Params$Resource$Interconnectattachmentgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$List; + params = {} as Params$Resource$Interconnectattachmentgroups$List; options = {}; } @@ -125471,7 +131293,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -125479,17 +131301,229 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); + } + } + + /** + * Patches the specified InterconnectAttachmentGroup resource with the data + * included in the request. This method supports PATCH + * semantics and usesJSON 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.interconnectAttachmentGroups.patch({ + * // Name of the InterconnectAttachmentGroup resource to patch. + * interconnectAttachmentGroup: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * // 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 list of fields to update. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachments": {}, + * // "configured": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "intent": {}, + * // "interconnectGroup": "my_interconnectGroup", + * // "kind": "my_kind", + * // "logicalStructure": {}, + * // "name": "my_name", + * // "selfLink": "my_selfLink" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Interconnectattachmentgroups$Patch, + options: StreamMethodOptions + ): Promise>; + patch( + params?: Params$Resource$Interconnectattachmentgroups$Patch, + options?: MethodOptions + ): Promise>; + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Interconnectattachmentgroups$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Interconnectattachmentgroups$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachmentgroups$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectattachmentgroups$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/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'interconnectAttachmentGroup'], + pathParams: ['interconnectAttachmentGroup', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); } } @@ -125527,14 +131561,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.setIamPolicy({ + * const res = await compute.interconnectAttachmentGroups.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])?))', * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -125570,31 +131602,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params?: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshotgroups$Setiampolicy, + params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Setiampolicy + | Params$Resource$Interconnectattachmentgroups$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -125610,12 +131642,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Setiampolicy; + {}) as Params$Resource$Interconnectattachmentgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Setiampolicy; + params = + {} as Params$Resource$Interconnectattachmentgroups$Setiampolicy; options = {}; } @@ -125630,7 +131663,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -125638,8 +131671,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -125686,14 +131719,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshotGroups.testIamPermissions({ + * const res = await compute.interconnectAttachmentGroups.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])?))', * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -125724,27 +131755,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params?: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshotgroups$Testiampermissions, + params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -125752,7 +131783,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Instantsnapshotgroups$Testiampermissions + | Params$Resource$Interconnectattachmentgroups$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -125768,12 +131799,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshotgroups$Testiampermissions; + {}) as Params$Resource$Interconnectattachmentgroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshotgroups$Testiampermissions; + params = + {} as Params$Resource$Interconnectattachmentgroups$Testiampermissions; options = {}; } @@ -125788,7 +131820,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshotGroups/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -125796,8 +131828,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -125811,11 +131843,26 @@ export namespace compute_alpha { } } - export interface Params$Resource$Instantsnapshotgroups$Delete extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Createmembers extends StandardParameters { /** - * Name of the InstantSnapshot resource to delete. + * Name of the group resource to create members for. */ - instantSnapshotGroup?: string; + interconnectAttachmentGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InterconnectAttachmentGroupsCreateMembersRequest; + } + export interface Params$Resource$Interconnectattachmentgroups$Delete extends StandardParameters { + /** + * Name of the InterconnectAttachmentGroup resource to delete. + */ + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ @@ -125834,28 +131881,21 @@ export namespace compute_alpha { * 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 name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instantsnapshotgroups$Get extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Get extends StandardParameters { /** - * Name of the InstantSnapshotGroup resource to return. + * Name of the InterconnectAttachmentGroup resource to return. */ - instantSnapshotGroup?: string; + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instantsnapshotgroups$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -125868,12 +131908,18 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; + } + export interface Params$Resource$Interconnectattachmentgroups$Getoperationalstatus extends StandardParameters { /** - * The name of the zone for this request. + * Name of the interconnectAttachmentGroup resource to query. */ - zone?: string; + interconnectAttachmentGroup?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Instantsnapshotgroups$Insert extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -125892,23 +131938,16 @@ export namespace compute_alpha { * 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; - /** - * begin_interface: MixerMutationRequestBuilder - */ - sourceConsistencyGroup?: string; - /** - * Name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$InstantSnapshotGroup; + requestBody?: Schema$InterconnectAttachmentGroup; } - export interface Params$Resource$Instantsnapshotgroups$List extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -126011,31 +132050,44 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Interconnectattachmentgroups$Patch extends StandardParameters { /** - * The name of the zone for this request. + * Name of the InterconnectAttachmentGroup resource to patch. */ - zone?: string; - } - export interface Params$Resource$Instantsnapshotgroups$Setiampolicy extends StandardParameters { + interconnectAttachmentGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * 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 */ - resource?: string; + requestId?: string; /** - * The name of the zone for this request. + * The list of fields to update. */ - zone?: string; + updateMask?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetPolicyRequest; + requestBody?: Schema$InterconnectAttachmentGroup; } - export interface Params$Resource$Instantsnapshotgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Interconnectattachmentgroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -126044,10 +132096,21 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; + /** - * The name of the zone for this request. + * Request body metadata */ - zone?: string; + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Interconnectattachmentgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; /** * Request body metadata @@ -126055,14 +132118,14 @@ export namespace compute_alpha { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Instantsnapshots { + export class Resource$Interconnectattachments { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Retrieves an aggregated list of instantSnapshots. + * Retrieves an aggregated list of interconnect attachments. * * To prevent failure, Google recommends that you set the * `returnPartialSuccess` parameter to `true`. @@ -126098,7 +132161,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.aggregatedList({ + * const res = await compute.interconnectAttachments.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -126229,56 +132292,60 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: StreamMethodOptions ): Promise>; aggregatedList( - params?: Params$Resource$Instantsnapshots$Aggregatedlist, + params?: Params$Resource$Interconnectattachments$Aggregatedlist, options?: MethodOptions - ): Promise>; + ): Promise< + GaxiosResponseWithHTTP2 + >; aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, + params: Params$Resource$Interconnectattachments$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; aggregatedList( - params: Params$Resource$Instantsnapshots$Aggregatedlist, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Aggregatedlist, + callback: BodyResponseCallback ): void; aggregatedList( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; aggregatedList( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Aggregatedlist; + {}) as Params$Resource$Interconnectattachments$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Aggregatedlist; + params = {} as Params$Resource$Interconnectattachments$Aggregatedlist; options = {}; } @@ -126293,7 +132360,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/instantSnapshots' + '/compute/alpha/projects/{project}/aggregated/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -126306,26 +132373,19 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Deletes the specified InstantSnapshot resource. Keep in mind that deleting - * a single instantSnapshot might not necessarily delete all the data on that - * instantSnapshot. If any data on the instantSnapshot that is marked for - * deletion is needed for subsequent instantSnapshots, the data will be moved - * to the next corresponding instantSnapshot. - * - * For more information, seeDeleting - * instantSnapshots. + * Deletes the specified interconnect attachment. * @example * ```js * // Before running the sample: @@ -126357,12 +132417,15 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.delete({ - * // Name of the InstantSnapshot resource to delete. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.delete({ + * // Name of the interconnect attachment to delete. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 for 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. @@ -126377,8 +132440,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -126428,31 +132489,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Instantsnapshots$Delete, + params?: Params$Resource$Interconnectattachments$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Instantsnapshots$Delete, + params: Params$Resource$Interconnectattachments$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Delete + | Params$Resource$Interconnectattachments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -126468,12 +132529,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Delete; + {}) as Params$Resource$Interconnectattachments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Delete; + params = {} as Params$Resource$Interconnectattachments$Delete; options = {}; } @@ -126488,7 +132549,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -126496,8 +132557,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'zone'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { @@ -126511,7 +132572,7 @@ export namespace compute_alpha { } /** - * Returns the specified InstantSnapshot resource in the specified zone. + * Returns the specified interconnect attachment. * @example * ```js * // Before running the sample: @@ -126544,42 +132605,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.get({ - * // Name of the InstantSnapshot resource to return. - * instantSnapshot: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectAttachments.get({ + * // Name of the interconnect attachment to return. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "architecture": "my_architecture", + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "guestFlush": false, + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], * // "kind": "my_kind", + * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, + * // "mtu": 0, + * // "multicastEnabled": false, * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, * // "region": "my_region", - * // "resourceStatus": {}, - * // "satisfiesPzi": false, + * // "remoteService": "my_remoteService", + * // "router": "my_router", * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", - * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", - * // "status": "my_status", - * // "zone": "my_zone" + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * } * @@ -126596,52 +132684,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Instantsnapshots$Get, + params: Params$Resource$Interconnectattachments$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Instantsnapshots$Get, + params?: Params$Resource$Interconnectattachments$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Instantsnapshots$Get, + params: Params$Resource$Interconnectattachments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshots$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Instantsnapshots$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectattachments$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Get - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Get; + {}) as Params$Resource$Interconnectattachments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Get; + params = {} as Params$Resource$Interconnectattachments$Get; options = {}; } @@ -126656,7 +132746,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{instantSnapshot}' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -126664,17 +132754,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'instantSnapshot'], - pathParams: ['instantSnapshot', 'project', 'zone'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -126713,16 +132803,16 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.getIamPolicy({ + * const res = await compute.interconnectAttachments.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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -126748,31 +132838,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Interconnectattachments$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Instantsnapshots$Getiampolicy, + params?: Params$Resource$Interconnectattachments$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Interconnectattachments$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Interconnectattachments$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Instantsnapshots$Getiampolicy, + params: Params$Resource$Interconnectattachments$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Getiampolicy + | Params$Resource$Interconnectattachments$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -126788,12 +132878,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Getiampolicy; + {}) as Params$Resource$Interconnectattachments$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Getiampolicy; + params = {} as Params$Resource$Interconnectattachments$Getiampolicy; options = {}; } @@ -126808,7 +132898,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -126816,8 +132906,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -126831,7 +132921,8 @@ export namespace compute_alpha { } /** - * Creates an instant snapshot in the specified zone. + * Creates an InterconnectAttachment in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -126863,10 +132954,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.insert({ + * const res = await compute.interconnectAttachments.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 for 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. @@ -126881,36 +132974,62 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "architecture": "my_architecture", + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, * // "description": "my_description", - * // "diskSizeGb": "my_diskSizeGb", - * // "guestFlush": false, + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], * // "kind": "my_kind", + * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, + * // "mtu": 0, + * // "multicastEnabled": false, * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, * // "region": "my_region", - * // "resourceStatus": {}, - * // "satisfiesPzi": false, + * // "remoteService": "my_remoteService", + * // "router": "my_router", * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDisk": "my_sourceDisk", - * // "sourceDiskId": "my_sourceDiskId", - * // "sourceInstantSnapshotGroup": "my_sourceInstantSnapshotGroup", - * // "sourceInstantSnapshotGroupId": "my_sourceInstantSnapshotGroupId", - * // "status": "my_status", - * // "zone": "my_zone" + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 * // } * }, * }); @@ -126962,31 +133081,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Instantsnapshots$Insert, + params?: Params$Resource$Interconnectattachments$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Instantsnapshots$Insert, + params: Params$Resource$Interconnectattachments$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Insert + | Params$Resource$Interconnectattachments$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -127002,12 +133121,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Insert; + {}) as Params$Resource$Interconnectattachments$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Insert; + params = {} as Params$Resource$Interconnectattachments$Insert; options = {}; } @@ -127022,7 +133141,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -127030,8 +133149,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -127045,8 +133164,252 @@ export namespace compute_alpha { } /** - * Retrieves the list of InstantSnapshot resources contained within - * the specified zone. + * Retrieves the list of interconnect attachments contained within + * the specified region. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.interconnectAttachments.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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 for 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. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * 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$Interconnectattachments$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Interconnectattachments$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Interconnectattachments$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Interconnectattachments$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Interconnectattachments$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Interconnectattachments$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectattachments$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectattachments$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/alpha/projects/{project}/regions/{region}/interconnectAttachments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Updates the specified interconnect attachment with the data included in the + * request. This method supportsPATCH + * semantics and uses theJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -127070,7 +133433,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -127079,111 +133441,118 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.interconnectAttachments.patch({ + * // Name of the interconnect attachment to patch. + * interconnectAttachment: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // Name of the region scoping 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adminEnabled": false, + * // "attachmentGroup": "my_attachmentGroup", + * // "bandwidth": "my_bandwidth", + * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", + * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", + * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", + * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", + * // "candidateIpv6Subnets": [], + * // "candidateSubnets": [], + * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", + * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", + * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", + * // "configurationConstraints": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "customerRouterIpAddress": "my_customerRouterIpAddress", + * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", + * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", + * // "dataplaneVersion": 0, + * // "description": "my_description", + * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", + * // "encryption": "my_encryption", + * // "googleReferenceId": "my_googleReferenceId", + * // "id": "my_id", + * // "interconnect": "my_interconnect", + * // "ipsecInternalAddresses": [], + * // "kind": "my_kind", + * // "l2Forwarding": {}, + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "mtu": 0, + * // "multicastEnabled": false, + * // "name": "my_name", + * // "operationalStatus": "my_operationalStatus", + * // "pairingKey": "my_pairingKey", + * // "params": {}, + * // "partnerAsn": "my_partnerAsn", + * // "partnerMetadata": {}, + * // "privateInterconnectInfo": {}, + * // "region": "my_region", + * // "remoteService": "my_remoteService", + * // "router": "my_router", + * // "satisfiesPzs": false, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "stackType": "my_stackType", + * // "state": "my_state", + * // "subnetLength": 0, + * // "type": "my_type", + * // "vlanTag8021q": 0 + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -127199,53 +133568,53 @@ export namespace compute_alpha { * @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$Instantsnapshots$List, + patch( + params: Params$Resource$Interconnectattachments$Patch, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Instantsnapshots$List, + patch( + params?: Params$Resource$Interconnectattachments$Patch, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Instantsnapshots$List, + ): Promise>; + patch( + params: Params$Resource$Interconnectattachments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instantsnapshots$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Interconnectattachments$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Instantsnapshots$List, - callback: BodyResponseCallback + patch( + params: Params$Resource$Interconnectattachments$Patch, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Instantsnapshots$List - | BodyResponseCallback + | Params$Resource$Interconnectattachments$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$List; + {}) as Params$Resource$Interconnectattachments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$List; + params = {} as Params$Resource$Interconnectattachments$Patch; options = {}; } @@ -127260,25 +133629,25 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'region', 'interconnectAttachment'], + pathParams: ['interconnectAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -127316,14 +133685,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.setIamPolicy({ + * const res = await compute.interconnectAttachments.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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -127359,31 +133728,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Interconnectattachments$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Instantsnapshots$Setiampolicy, + params?: Params$Resource$Interconnectattachments$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Interconnectattachments$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Interconnectattachments$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Instantsnapshots$Setiampolicy, + params: Params$Resource$Interconnectattachments$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Setiampolicy + | Params$Resource$Interconnectattachments$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -127399,12 +133768,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Setiampolicy; + {}) as Params$Resource$Interconnectattachments$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Setiampolicy; + params = {} as Params$Resource$Interconnectattachments$Setiampolicy; options = {}; } @@ -127419,7 +133788,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -127427,8 +133796,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -127442,8 +133811,8 @@ export namespace compute_alpha { } /** - * Sets the labels on a instantSnapshot in the given zone. To learn more about - * labels, read the Labeling + * Sets the labels on an InterconnectAttachment. To learn more about labels, + * read the Labeling * Resources documentation. * @example * ```js @@ -127476,10 +133845,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.setLabels({ + * const res = await compute.interconnectAttachments.setLabels({ * // 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 for 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. @@ -127496,8 +133867,6 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -127556,31 +133925,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, options: StreamMethodOptions ): Promise>; setLabels( - params?: Params$Resource$Instantsnapshots$Setlabels, + params?: Params$Resource$Interconnectattachments$Setlabels, options?: MethodOptions ): Promise>; setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Instantsnapshots$Setlabels, + params: Params$Resource$Interconnectattachments$Setlabels, callback: BodyResponseCallback ): void; setLabels(callback: BodyResponseCallback): void; setLabels( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Setlabels + | Params$Resource$Interconnectattachments$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -127596,12 +133965,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Setlabels; + {}) as Params$Resource$Interconnectattachments$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Setlabels; + params = {} as Params$Resource$Interconnectattachments$Setlabels; options = {}; } @@ -127616,7 +133985,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/setLabels' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -127624,8 +133993,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -127672,14 +134041,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.instantSnapshots.testIamPermissions({ + * const res = await compute.interconnectAttachments.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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { @@ -127710,27 +134079,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Interconnectattachments$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Instantsnapshots$Testiampermissions, + params?: Params$Resource$Interconnectattachments$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Interconnectattachments$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Interconnectattachments$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Instantsnapshots$Testiampermissions, + params: Params$Resource$Interconnectattachments$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -127738,7 +134107,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Instantsnapshots$Testiampermissions + | Params$Resource$Interconnectattachments$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -127754,12 +134123,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Instantsnapshots$Testiampermissions; + {}) as Params$Resource$Interconnectattachments$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Instantsnapshots$Testiampermissions; + params = + {} as Params$Resource$Interconnectattachments$Testiampermissions; options = {}; } @@ -127774,7 +134144,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/instantSnapshots/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -127782,8 +134152,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -127797,7 +134167,7 @@ export namespace compute_alpha { } } - export interface Params$Resource$Instantsnapshots$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -127916,15 +134286,19 @@ export namespace compute_alpha { */ serviceProjectNumber?: string; } - export interface Params$Resource$Instantsnapshots$Delete extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Delete extends StandardParameters { /** - * Name of the InstantSnapshot resource to delete. + * Name of the interconnect attachment to delete. */ - instantSnapshot?: string; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region for 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 @@ -127941,26 +134315,22 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Instantsnapshots$Get extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Get extends StandardParameters { /** - * Name of the InstantSnapshot resource to return. + * Name of the interconnect attachment to return. */ - instantSnapshot?: string; + interconnectAttachment?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the zone for this request. + * Name of the region for this request. */ - zone?: string; + region?: string; } - export interface Params$Resource$Instantsnapshots$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -127970,19 +134340,23 @@ export namespace compute_alpha { */ project?: string; /** - * Name or id of the resource for this request. + * The name of the region for this request. */ - resource?: string; + region?: string; /** - * The name of the zone for this request. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; } - export interface Params$Resource$Instantsnapshots$Insert extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Insert extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * Name of the region for 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 @@ -128000,16 +134374,16 @@ export namespace compute_alpha { */ requestId?: string; /** - * Name of the zone for this request. + * If true, the request will not be committed. */ - zone?: string; + validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$InstantSnapshot; + requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Instantsnapshots$List extends StandardParameters { + export interface Params$Resource$Interconnectattachments$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -128103,6 +134477,10 @@ export namespace compute_alpha { * Project ID for this request. */ project?: string; + /** + * Name of the region for this request. + */ + region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -128112,35 +134490,70 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Interconnectattachments$Patch extends StandardParameters { /** - * The name of the zone for this request. + * Name of the interconnect attachment to patch. */ - zone?: string; + interconnectAttachment?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InterconnectAttachment; } - export interface Params$Resource$Instantsnapshots$Setiampolicy extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * The name of the region for this request. */ - resource?: string; + region?: string; /** - * The name of the zone for this request. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetPolicyRequest; + requestBody?: Schema$RegionSetPolicyRequest; } - export interface Params$Resource$Instantsnapshots$Setlabels extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Setlabels extends StandardParameters { /** * Project ID for this request. */ project?: string; + /** + * The region for 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 @@ -128161,29 +134574,25 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$ZoneSetLabelsRequest; + requestBody?: Schema$RegionSetLabelsRequest; } - export interface Params$Resource$Instantsnapshots$Testiampermissions extends StandardParameters { + export interface Params$Resource$Interconnectattachments$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ project?: string; /** - * Name or id of the resource for this request. + * The name of the region for this request. */ - resource?: string; + region?: string; /** - * The name of the zone for this request. + * Name or id of the resource for this request. */ - zone?: string; + resource?: string; /** * Request body metadata @@ -128191,15 +134600,15 @@ export namespace compute_alpha { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Interconnectattachmentgroups { + export class Resource$Interconnectgroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Create Interconnect Attachments with redundancy by creating them in a - * specified interconnect attachment group. + * Create Interconnects with redundancy by creating them in a specified + * interconnect group. * @example * ```js * // Before running the sample: @@ -128231,10 +134640,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.createMembers({ + * const res = await compute.interconnectGroups.createMembers({ * // Name of the group resource to create members for. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -128295,31 +134703,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ createMembers( - params: Params$Resource$Interconnectattachmentgroups$Createmembers, + params: Params$Resource$Interconnectgroups$Createmembers, options: StreamMethodOptions ): Promise>; createMembers( - params?: Params$Resource$Interconnectattachmentgroups$Createmembers, + params?: Params$Resource$Interconnectgroups$Createmembers, options?: MethodOptions ): Promise>; createMembers( - params: Params$Resource$Interconnectattachmentgroups$Createmembers, + params: Params$Resource$Interconnectgroups$Createmembers, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; createMembers( - params: Params$Resource$Interconnectattachmentgroups$Createmembers, + params: Params$Resource$Interconnectgroups$Createmembers, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; createMembers( - params: Params$Resource$Interconnectattachmentgroups$Createmembers, + params: Params$Resource$Interconnectgroups$Createmembers, callback: BodyResponseCallback ): void; createMembers(callback: BodyResponseCallback): void; createMembers( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Createmembers + | Params$Resource$Interconnectgroups$Createmembers | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -128335,13 +134743,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Createmembers; + {}) as Params$Resource$Interconnectgroups$Createmembers; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Createmembers; + params = {} as Params$Resource$Interconnectgroups$Createmembers; options = {}; } @@ -128356,7 +134763,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/createMembers' + '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}/createMembers' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -128364,8 +134771,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { @@ -128379,7 +134786,7 @@ export namespace compute_alpha { } /** - * Deletes the specified InterconnectAttachmentGroup in the given scope + * Deletes the specified InterconnectGroup in the given scope * @example * ```js * // Before running the sample: @@ -128411,10 +134818,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.delete({ - * // Name of the InterconnectAttachmentGroup resource to delete. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.delete({ + * // Name of the InterconnectGroup resource to delete. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -128482,31 +134888,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnectattachmentgroups$Delete, + params?: Params$Resource$Interconnectgroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectattachmentgroups$Delete, + params: Params$Resource$Interconnectgroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Delete + | Params$Resource$Interconnectgroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -128522,12 +134928,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Delete; + {}) as Params$Resource$Interconnectgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Delete; + params = {} as Params$Resource$Interconnectgroups$Delete; options = {}; } @@ -128542,7 +134948,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -128550,8 +134956,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { @@ -128565,8 +134971,7 @@ export namespace compute_alpha { } /** - * Returns the specified InterconnectAttachmentGroup resource in the given - * scope. + * Returns the specified InterconnectGroup resource in the given scope. * @example * ```js * // Before running the sample: @@ -128599,10 +135004,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.get({ - * // Name of the InterconnectAttachmentGroup resource to return. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.get({ + * // Name of the InterconnectGroup resource to return. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -128611,17 +135015,16 @@ export namespace compute_alpha { * * // Example response * // { - * // "attachments": {}, * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "interconnects": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", + * // "physicalStructure": {}, * // "selfLink": "my_selfLink" * // } * } @@ -128639,56 +135042,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectattachmentgroups$Get, + params: Params$Resource$Interconnectgroups$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectattachmentgroups$Get, + params?: Params$Resource$Interconnectgroups$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectattachmentgroups$Get, + params: Params$Resource$Interconnectgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectattachmentgroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Interconnectattachmentgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Get, + callback: BodyResponseCallback ): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Get - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Get; + {}) as Params$Resource$Interconnectgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Get; + params = {} as Params$Resource$Interconnectgroups$Get; options = {}; } @@ -128703,7 +135102,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -128711,17 +135110,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -128760,7 +135159,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.getIamPolicy({ + * const res = await compute.interconnectGroups.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -128793,31 +135192,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params?: Params$Resource$Interconnectgroups$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Getiampolicy, + params: Params$Resource$Interconnectgroups$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Getiampolicy + | Params$Resource$Interconnectgroups$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -128833,13 +135232,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + {}) as Params$Resource$Interconnectgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Getiampolicy; + params = {} as Params$Resource$Interconnectgroups$Getiampolicy; options = {}; } @@ -128854,7 +135252,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -128877,8 +135275,8 @@ export namespace compute_alpha { } /** - * Returns the InterconnectAttachmentStatuses for the specified - * InterconnectAttachmentGroup resource. + * Returns the interconnectStatuses for the specified + * InterconnectGroup. * @example * ```js * // Before running the sample: @@ -128911,10 +135309,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.getOperationalStatus({ - * // Name of the interconnectAttachmentGroup resource to query. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.getOperationalStatus({ + * // Name of the interconnectGroup resource to query. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -128941,61 +135338,60 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: StreamMethodOptions ): Promise>; getOperationalStatus( - params?: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params?: Params$Resource$Interconnectgroups$Getoperationalstatus, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, + params: Params$Resource$Interconnectgroups$Getoperationalstatus, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; getOperationalStatus( - params: Params$Resource$Interconnectattachmentgroups$Getoperationalstatus, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$Getoperationalstatus, + callback: BodyResponseCallback ): void; getOperationalStatus( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; getOperationalStatus( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Getoperationalstatus - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Getoperationalstatus + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + {}) as Params$Resource$Interconnectgroups$Getoperationalstatus; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Getoperationalstatus; + params = {} as Params$Resource$Interconnectgroups$Getoperationalstatus; options = {}; } @@ -129010,7 +135406,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}/getOperationalStatus' + '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}/getOperationalStatus' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -129018,25 +135414,25 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Creates a InterconnectAttachmentGroup in the specified project in the given - * scope using the parameters that are included in the request. + * Creates a InterconnectGroup in the specified project in the given scope + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -129068,7 +135464,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.insert({ + * const res = await compute.interconnectGroups.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])?))', @@ -129092,17 +135488,16 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "attachments": {}, * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "interconnects": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", + * // "physicalStructure": {}, * // "selfLink": "my_selfLink" * // } * }, @@ -129155,31 +135550,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectattachmentgroups$Insert, + params?: Params$Resource$Interconnectgroups$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachmentgroups$Insert, + params: Params$Resource$Interconnectgroups$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Insert + | Params$Resource$Interconnectgroups$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -129195,12 +135590,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Insert; + {}) as Params$Resource$Interconnectgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Insert; + params = {} as Params$Resource$Interconnectgroups$Insert; options = {}; } @@ -129215,7 +135610,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups' + '/compute/alpha/projects/{project}/global/interconnectGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -129238,7 +135633,7 @@ export namespace compute_alpha { } /** - * Lists the InterconnectAttachmentGroups for a project in the given scope. + * Lists the InterconnectGroups for a project in the given scope. * @example * ```js * // Before running the sample: @@ -129271,7 +135666,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.list({ + * const res = await compute.interconnectGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -129392,60 +135787,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Interconnectgroups$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectattachmentgroups$List, + params?: Params$Resource$Interconnectgroups$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; + ): Promise>; list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Interconnectgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachmentgroups$List, + params: Params$Resource$Interconnectgroups$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachmentgroups$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnectgroups$List, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + callback: BodyResponseCallback ): void; list( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$List - | BodyResponseCallback + | Params$Resource$Interconnectgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$List; + {}) as Params$Resource$Interconnectgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$List; + params = {} as Params$Resource$Interconnectgroups$List; options = {}; } @@ -129460,7 +135851,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups' + '/compute/alpha/projects/{project}/global/interconnectGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -129473,20 +135864,20 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Patches the specified InterconnectAttachmentGroup resource with the data - * included in the request. This method supports PATCH + * Patches the specified InterconnectGroup resource with the data included in + * the request. This method supports PATCH * semantics and usesJSON merge * patch format and processing rules. * @example @@ -129520,10 +135911,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.patch({ - * // Name of the InterconnectAttachmentGroup resource to patch. - * interconnectAttachmentGroup: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnectGroups.patch({ + * // Name of the InterconnectGroup resource to patch. + * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -129549,17 +135939,16 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "attachments": {}, * // "configured": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", * // "etag": "my_etag", * // "id": "my_id", * // "intent": {}, - * // "interconnectGroup": "my_interconnectGroup", + * // "interconnects": {}, * // "kind": "my_kind", - * // "logicalStructure": {}, * // "name": "my_name", + * // "physicalStructure": {}, * // "selfLink": "my_selfLink" * // } * }, @@ -129612,31 +136001,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Interconnectattachmentgroups$Patch, + params?: Params$Resource$Interconnectgroups$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachmentgroups$Patch, + params: Params$Resource$Interconnectgroups$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Patch + | Params$Resource$Interconnectgroups$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -129652,12 +136041,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Patch; + {}) as Params$Resource$Interconnectgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachmentgroups$Patch; + params = {} as Params$Resource$Interconnectgroups$Patch; options = {}; } @@ -129672,7 +136061,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{interconnectAttachmentGroup}' + '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -129680,8 +136069,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnectAttachmentGroup'], - pathParams: ['interconnectAttachmentGroup', 'project'], + requiredParams: ['project', 'interconnectGroup'], + pathParams: ['interconnectGroup', 'project'], context: this.context, }; if (callback) { @@ -129728,7 +136117,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.setIamPolicy({ + * const res = await compute.interconnectGroups.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])?))', @@ -129769,31 +136158,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params?: Params$Resource$Interconnectgroups$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnectattachmentgroups$Setiampolicy, + params: Params$Resource$Interconnectgroups$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Setiampolicy + | Params$Resource$Interconnectgroups$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -129809,13 +136198,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Setiampolicy; + {}) as Params$Resource$Interconnectgroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Setiampolicy; + params = {} as Params$Resource$Interconnectgroups$Setiampolicy; options = {}; } @@ -129830,7 +136218,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -129886,7 +136274,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachmentGroups.testIamPermissions({ + * const res = await compute.interconnectGroups.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])?))', @@ -129922,27 +136310,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params?: Params$Resource$Interconnectgroups$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachmentgroups$Testiampermissions, + params: Params$Resource$Interconnectgroups$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -129950,29 +136338,715 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectattachmentgroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Interconnectgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectgroups$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/alpha/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Interconnectgroups$Createmembers extends StandardParameters { + /** + * Name of the group resource to create members for. + */ + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InterconnectGroupsCreateMembersRequest; + } + export interface Params$Resource$Interconnectgroups$Delete extends StandardParameters { + /** + * Name of the InterconnectGroup resource to delete. + */ + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: 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; + } + export interface Params$Resource$Interconnectgroups$Get extends StandardParameters { + /** + * Name of the InterconnectGroup resource to return. + */ + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Interconnectgroups$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Interconnectgroups$Getoperationalstatus extends StandardParameters { + /** + * Name of the interconnectGroup resource to query. + */ + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Interconnectgroups$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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$InterconnectGroup; + } + export interface Params$Resource$Interconnectgroups$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Interconnectgroups$Patch extends StandardParameters { + /** + * Name of the InterconnectGroup resource to patch. + */ + interconnectGroup?: string; + /** + * Project ID for this request. + */ + project?: 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 list of fields to update. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$InterconnectGroup; + } + export interface Params$Resource$Interconnectgroups$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Interconnectgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Interconnectlocations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Returns the details for the specified interconnect location. Gets a list of + * available interconnect locations by making a list() 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.interconnectLocations.get({ + * // Name of the interconnect location to return. + * interconnectLocation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "address": "my_address", + * // "availabilityZone": "my_availabilityZone", + * // "availableFeatures": [], + * // "availableLinkTypes": [], + * // "city": "my_city", + * // "continent": "my_continent", + * // "creationTimestamp": "my_creationTimestamp", + * // "crossSiteInterconnectInfos": [], + * // "description": "my_description", + * // "facilityProvider": "my_facilityProvider", + * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "peeringdbFacilityId": "my_peeringdbFacilityId", + * // "regionInfos": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "singleRegionProductionCriticalPeerLocations": [], + * // "status": "my_status", + * // "supportsPzs": false + * // } + * } + * + * 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$Interconnectlocations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Interconnectlocations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Interconnectlocations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Interconnectlocations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Interconnectlocations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Interconnectlocations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectlocations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectlocations$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/alpha/projects/{project}/global/interconnectLocations/{interconnectLocation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'interconnectLocation'], + pathParams: ['interconnectLocation', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Retrieves the list of interconnect locations 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.interconnectLocations.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * 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$Interconnectlocations$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Interconnectlocations$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Interconnectlocations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Interconnectlocations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Interconnectlocations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Interconnectlocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + {}) as Params$Resource$Interconnectlocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachmentgroups$Testiampermissions; + params = {} as Params$Resource$Interconnectlocations$List; options = {}; } @@ -129987,134 +137061,40 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectAttachmentGroups/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/interconnectLocations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Interconnectattachmentgroups$Createmembers extends StandardParameters { - /** - * Name of the group resource to create members for. - */ - interconnectAttachmentGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectAttachmentGroupsCreateMembersRequest; - } - export interface Params$Resource$Interconnectattachmentgroups$Delete extends StandardParameters { - /** - * Name of the InterconnectAttachmentGroup resource to delete. - */ - interconnectAttachmentGroup?: string; - /** - * Project ID for this request. - */ - project?: 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; - } - export interface Params$Resource$Interconnectattachmentgroups$Get extends StandardParameters { - /** - * Name of the InterconnectAttachmentGroup resource to return. - */ - interconnectAttachmentGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectattachmentgroups$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Interconnectattachmentgroups$Getoperationalstatus extends StandardParameters { - /** - * Name of the interconnectAttachmentGroup resource to query. - */ - interconnectAttachmentGroup?: string; + export interface Params$Resource$Interconnectlocations$Get extends StandardParameters { /** - * Project ID for this request. + * Name of the interconnect location to return. */ - project?: string; - } - export interface Params$Resource$Interconnectattachmentgroups$Insert extends StandardParameters { + interconnectLocation?: string; /** * Project ID for this request. */ project?: 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$InterconnectAttachmentGroup; } - export interface Params$Resource$Interconnectattachmentgroups$List extends StandardParameters { + export interface Params$Resource$Interconnectlocations$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -130218,84 +137198,187 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } - export interface Params$Resource$Interconnectattachmentgroups$Patch extends StandardParameters { - /** - * Name of the InterconnectAttachmentGroup resource to patch. - */ - interconnectAttachmentGroup?: string; - /** - * Project ID for this request. - */ - project?: string; + + export class Resource$Interconnectremotelocations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + /** - * 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. + * Returns the details for the specified interconnect remote location. Gets a + * list of available interconnect remote locations by making alist() 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * 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 list of fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectAttachmentGroup; - } - export interface Params$Resource$Interconnectattachmentgroups$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. + * 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.interconnectRemoteLocations.get({ + * // Name of the interconnect remote location to return. + * interconnectRemoteLocation: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "address": "my_address", + * // "attachmentConfigurationConstraints": {}, + * // "city": "my_city", + * // "constraints": {}, + * // "continent": "my_continent", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "facilityProvider": "my_facilityProvider", + * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", + * // "id": "my_id", + * // "kind": "my_kind", + * // "lacp": "my_lacp", + * // "maxLagSize100Gbps": 0, + * // "maxLagSize10Gbps": 0, + * // "maxLagSize400Gbps": 0, + * // "name": "my_name", + * // "peeringdbFacilityId": "my_peeringdbFacilityId", + * // "permittedConnections": [], + * // "remoteService": "my_remoteService", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "status": "my_status" + * // } + * } + * + * 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. */ - resource?: string; + get( + params: Params$Resource$Interconnectremotelocations$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Interconnectremotelocations$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Interconnectremotelocations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Interconnectremotelocations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Interconnectremotelocations$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback + ): void; + get( + paramsOrCallback?: + | Params$Resource$Interconnectremotelocations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnectremotelocations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Interconnectattachmentgroups$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnectremotelocations$Get; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Interconnectattachments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/interconnectRemoteLocations/{interconnectRemoteLocation}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'interconnectRemoteLocation'], + pathParams: ['interconnectRemoteLocation', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves an aggregated list of interconnect attachments. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Retrieves the list of interconnect remote locations available to the + * specified project. * @example * ```js * // Before running the sample: @@ -130328,7 +137411,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.aggregatedList({ + * const res = await compute.interconnectRemoteLocations.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -130388,14 +137471,6 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -130428,20 +137503,16 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -130458,61 +137529,57 @@ export namespace compute_alpha { * @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$Interconnectattachments$Aggregatedlist, + list( + params: Params$Resource$Interconnectremotelocations$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Interconnectattachments$Aggregatedlist, + list( + params?: Params$Resource$Interconnectremotelocations$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Interconnectremotelocations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, + list( + params: Params$Resource$Interconnectremotelocations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Interconnectattachments$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Interconnectremotelocations$List, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - aggregatedList( + list( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Interconnectremotelocations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Aggregatedlist; + {}) as Params$Resource$Interconnectremotelocations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Aggregatedlist; + params = {} as Params$Resource$Interconnectremotelocations$List; options = {}; } @@ -130527,7 +137594,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/interconnectAttachments' + '/compute/alpha/projects/{project}/global/interconnectRemoteLocations' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -130540,19 +137607,141 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } + } + export interface Params$Resource$Interconnectremotelocations$Get extends StandardParameters { /** - * Deletes the specified interconnect attachment. + * Name of the interconnect remote location to return. + */ + interconnectRemoteLocation?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Interconnectremotelocations$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Interconnects { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes the specified Interconnect. * @example * ```js * // Before running the sample: @@ -130584,15 +137773,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.delete({ - * // Name of the interconnect attachment to delete. - * interconnectAttachment: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.delete({ + * // Name of the interconnect to delete. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 for 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. @@ -130656,31 +137842,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnectattachments$Delete, + params: Params$Resource$Interconnects$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnectattachments$Delete, + params?: Params$Resource$Interconnects$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnectattachments$Delete, + params: Params$Resource$Interconnects$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectattachments$Delete, + params: Params$Resource$Interconnects$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnectattachments$Delete, + params: Params$Resource$Interconnects$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Delete + | Params$Resource$Interconnects$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -130696,12 +137882,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Delete; + {}) as Params$Resource$Interconnects$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Delete; + params = {} as Params$Resource$Interconnects$Delete; options = {}; } @@ -130716,7 +137902,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/alpha/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -130724,8 +137910,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { @@ -130739,7 +137925,8 @@ export namespace compute_alpha { } /** - * Returns the specified interconnect attachment. + * Returns the specified Interconnect. Get a list of available Interconnects + * by making a list() request. * @example * ```js * // Before running the sample: @@ -130772,69 +137959,55 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.get({ - * // Name of the interconnect attachment to return. - * interconnectAttachment: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.get({ + * // Name of the interconnect to return. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "aaiEnabled": false, * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, + * // "customerName": "my_customerName", * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", + * // "effectiveLocation": "my_effectiveLocation", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", - * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, - * // "mtu": 0, - * // "multicastEnabled": false, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", + * // "nocContactEmail": "my_nocContactEmail", * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "stackType": "my_stackType", * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * } * @@ -130851,54 +138024,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectattachments$Get, + params: Params$Resource$Interconnects$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectattachments$Get, + params?: Params$Resource$Interconnects$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectattachments$Get, + params: Params$Resource$Interconnects$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectattachments$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Interconnects$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectattachments$Get, - callback: BodyResponseCallback + params: Params$Resource$Interconnects$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Get - | BodyResponseCallback + | Params$Resource$Interconnects$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Get; + {}) as Params$Resource$Interconnects$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Get; + params = {} as Params$Resource$Interconnects$Get; options = {}; } @@ -130913,7 +138084,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/alpha/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -130921,23 +138092,336 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the interconnectDiagnostics for the specified + * Interconnect. + * + * In the event of a + * global outage, do not use this API to make decisions about where to + * redirect your network traffic. + * + * Unlike a VLAN attachment, which is regional, a Cloud Interconnect + * connection is a global resource. A global outage can prevent this + * API from functioning properly. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.interconnects.getDiagnostics({ + * // Name of the interconnect resource to query. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "result": {} + * // } + * } + * + * 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. + */ + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + options: StreamMethodOptions + ): Promise>; + getDiagnostics( + params?: Params$Resource$Interconnects$Getdiagnostics, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getDiagnostics( + params: Params$Resource$Interconnects$Getdiagnostics, + callback: BodyResponseCallback + ): void; + getDiagnostics( + callback: BodyResponseCallback + ): void; + getDiagnostics( + paramsOrCallback?: + | Params$Resource$Interconnects$Getdiagnostics + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Getdiagnostics; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnects$Getdiagnostics; + 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}/global/interconnects/{interconnect}/getDiagnostics' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.interconnects.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])?))', + * // 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", + * // "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$Interconnects$Getiampolicy, + options: StreamMethodOptions + ): Promise>; + getIamPolicy( + params?: Params$Resource$Interconnects$Getiampolicy, + options?: MethodOptions + ): Promise>; + getIamPolicy( + params: Params$Resource$Interconnects$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Interconnects$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Interconnects$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Interconnects$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Interconnects$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Interconnects$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/alpha/projects/{project}/global/interconnects/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Returns the interconnectMacsecConfig for the specified + * Interconnect. * @example * ```js * // Before running the sample: @@ -130970,25 +138454,19 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.interconnects.getMacsecConfig({ + * // Name of the interconnect resource to query. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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", - * // "version": 0 + * // "result": {} * // } * } * @@ -131004,53 +138482,61 @@ export namespace compute_alpha { * @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$Interconnectattachments$Getiampolicy, + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Interconnectattachments$Getiampolicy, + getMacsecConfig( + params?: Params$Resource$Interconnects$Getmacsecconfig, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Interconnectattachments$Getiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Interconnectattachments$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Interconnectattachments$Getiampolicy, - callback: BodyResponseCallback + getMacsecConfig( + params: Params$Resource$Interconnects$Getmacsecconfig, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + getMacsecConfig( + callback: BodyResponseCallback + ): void; + getMacsecConfig( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Getiampolicy - | BodyResponseCallback + | Params$Resource$Interconnects$Getmacsecconfig + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Getiampolicy; + {}) as Params$Resource$Interconnects$Getmacsecconfig; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Getiampolicy; + params = {} as Params$Resource$Interconnects$Getmacsecconfig; options = {}; } @@ -131065,7 +138551,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/interconnects/{interconnect}/getMacsecConfig' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -131073,23 +138559,25 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates an InterconnectAttachment in the specified project using the data - * included in the request. + * Creates an Interconnect in the specified project using + * the data included in the request. * @example * ```js * // Before running the sample: @@ -131121,12 +138609,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.insert({ + * const res = await compute.interconnects.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 for 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. @@ -131141,62 +138627,49 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "aaiEnabled": false, * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, + * // "customerName": "my_customerName", * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", + * // "effectiveLocation": "my_effectiveLocation", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", - * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, - * // "mtu": 0, - * // "multicastEnabled": false, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", + * // "nocContactEmail": "my_nocContactEmail", * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "stackType": "my_stackType", * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * }, * }); @@ -131248,31 +138721,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnects$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnectattachments$Insert, + params?: Params$Resource$Interconnects$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnects$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnects$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnectattachments$Insert, + params: Params$Resource$Interconnects$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Insert + | Params$Resource$Interconnects$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -131288,12 +138761,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Insert; + {}) as Params$Resource$Interconnects$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Insert; + params = {} as Params$Resource$Interconnects$Insert; options = {}; } @@ -131307,8 +138780,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments' + rootUrl + '/compute/alpha/projects/{project}/global/interconnects' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -131316,8 +138788,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -131331,8 +138803,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of interconnect attachments contained within - * the specified region. + * Retrieves the list of Interconnects available to the specified project. * @example * ```js * // Before running the sample: @@ -131365,7 +138836,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.list({ + * const res = await compute.interconnects.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -131450,8 +138921,6 @@ export namespace compute_alpha { * // 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 for 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. * // @@ -131486,56 +138955,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnects$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectattachments$List, + params?: Params$Resource$Interconnects$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Interconnectattachments$List, + params: Params$Resource$Interconnects$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectattachments$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectattachments$List, - callback: BodyResponseCallback + params: Params$Resource$Interconnects$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - callback: BodyResponseCallback + params: Params$Resource$Interconnects$List, + callback: BodyResponseCallback ): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Interconnectattachments$List - | BodyResponseCallback + | Params$Resource$Interconnects$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$List; + {}) as Params$Resource$Interconnects$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$List; + params = {} as Params$Resource$Interconnects$List; options = {}; } @@ -131549,8 +139014,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments' + rootUrl + '/compute/alpha/projects/{project}/global/interconnects' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -131558,23 +139022,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified interconnect attachment with the data included in the - * request. This method supportsPATCH + * Updates the specified Interconnect with the data included in the request. + * This method supportsPATCH * semantics and uses theJSON merge * patch format and processing rules. * @example @@ -131608,15 +139072,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.patch({ - * // Name of the interconnect attachment to patch. - * interconnectAttachment: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.interconnects.patch({ + * // Name of the interconnect to update. + * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 scoping 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. @@ -131636,55 +139097,44 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { + * // "aaiEnabled": false, * // "adminEnabled": false, - * // "attachmentGroup": "my_attachmentGroup", - * // "bandwidth": "my_bandwidth", - * // "candidateCloudRouterIpAddress": "my_candidateCloudRouterIpAddress", - * // "candidateCloudRouterIpv6Address": "my_candidateCloudRouterIpv6Address", - * // "candidateCustomerRouterIpAddress": "my_candidateCustomerRouterIpAddress", - * // "candidateCustomerRouterIpv6Address": "my_candidateCustomerRouterIpv6Address", - * // "candidateIpv6Subnets": [], - * // "candidateSubnets": [], - * // "cloudRouterIpAddress": "my_cloudRouterIpAddress", - * // "cloudRouterIpv6Address": "my_cloudRouterIpv6Address", - * // "cloudRouterIpv6InterfaceId": "my_cloudRouterIpv6InterfaceId", - * // "configurationConstraints": {}, + * // "applicationAwareInterconnect": {}, + * // "availableFeatures": [], + * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", - * // "customerRouterIpAddress": "my_customerRouterIpAddress", - * // "customerRouterIpv6Address": "my_customerRouterIpv6Address", - * // "customerRouterIpv6InterfaceId": "my_customerRouterIpv6InterfaceId", - * // "dataplaneVersion": 0, + * // "customerName": "my_customerName", * // "description": "my_description", - * // "edgeAvailabilityDomain": "my_edgeAvailabilityDomain", - * // "encryption": "my_encryption", + * // "effectiveLocation": "my_effectiveLocation", + * // "expectedOutages": [], + * // "googleIpAddress": "my_googleIpAddress", * // "googleReferenceId": "my_googleReferenceId", * // "id": "my_id", - * // "interconnect": "my_interconnect", - * // "ipsecInternalAddresses": [], + * // "interconnectAttachments": [], + * // "interconnectGroups": [], + * // "interconnectType": "my_interconnectType", * // "kind": "my_kind", - * // "l2Forwarding": {}, * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, - * // "mtu": 0, - * // "multicastEnabled": false, + * // "linkType": "my_linkType", + * // "location": "my_location", + * // "macsec": {}, + * // "macsecEnabled": false, * // "name": "my_name", + * // "nocContactEmail": "my_nocContactEmail", * // "operationalStatus": "my_operationalStatus", - * // "pairingKey": "my_pairingKey", * // "params": {}, - * // "partnerAsn": "my_partnerAsn", - * // "partnerMetadata": {}, - * // "privateInterconnectInfo": {}, - * // "region": "my_region", - * // "remoteService": "my_remoteService", - * // "router": "my_router", + * // "peerIpAddress": "my_peerIpAddress", + * // "provisionedLinkCount": 0, + * // "remoteLocation": "my_remoteLocation", + * // "requestedFeatures": [], + * // "requestedLinkCount": 0, * // "satisfiesPzs": false, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "stackType": "my_stackType", * // "state": "my_state", - * // "subnetLength": 0, - * // "type": "my_type", - * // "vlanTag8021q": 0 + * // "subzone": "my_subzone", + * // "wireGroups": [] * // } * }, * }); @@ -131736,31 +139186,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnects$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Interconnectattachments$Patch, + params?: Params$Resource$Interconnects$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnects$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnects$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Interconnectattachments$Patch, + params: Params$Resource$Interconnects$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Patch + | Params$Resource$Interconnects$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -131776,12 +139226,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Patch; + {}) as Params$Resource$Interconnects$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Patch; + params = {} as Params$Resource$Interconnects$Patch; options = {}; } @@ -131796,7 +139246,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}' + '/compute/alpha/projects/{project}/global/interconnects/{interconnect}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -131804,8 +139254,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'interconnectAttachment'], - pathParams: ['interconnectAttachment', 'project', 'region'], + requiredParams: ['project', 'interconnect'], + pathParams: ['interconnect', 'project'], context: this.context, }; if (callback) { @@ -131852,14 +139302,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.setIamPolicy({ + * const res = await compute.interconnects.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}', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -131895,31 +139343,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Interconnectattachments$Setiampolicy, + params: Params$Resource$Interconnects$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Interconnectattachments$Setiampolicy, + params?: Params$Resource$Interconnects$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Interconnectattachments$Setiampolicy, + params: Params$Resource$Interconnects$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnectattachments$Setiampolicy, + params: Params$Resource$Interconnects$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnectattachments$Setiampolicy, + params: Params$Resource$Interconnects$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Setiampolicy + | Params$Resource$Interconnects$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -131935,12 +139383,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Setiampolicy; + {}) as Params$Resource$Interconnects$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Setiampolicy; + params = {} as Params$Resource$Interconnects$Setiampolicy; options = {}; } @@ -131955,7 +139403,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/interconnects/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -131963,8 +139411,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -131978,7 +139426,7 @@ export namespace compute_alpha { } /** - * Sets the labels on an InterconnectAttachment. To learn more about labels, + * Sets the labels on an Interconnect. To learn more about labels, * read the Labeling * Resources documentation. * @example @@ -132012,28 +139460,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.setLabels({ + * const res = await compute.interconnects.setLabels({ * // 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 for 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). - * requestId: 'placeholder-value', * // 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}', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -132092,31 +139524,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + params: Params$Resource$Interconnects$Setlabels, options: StreamMethodOptions ): Promise>; setLabels( - params?: Params$Resource$Interconnectattachments$Setlabels, + params?: Params$Resource$Interconnects$Setlabels, options?: MethodOptions ): Promise>; setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + params: Params$Resource$Interconnects$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + params: Params$Resource$Interconnects$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Interconnectattachments$Setlabels, + params: Params$Resource$Interconnects$Setlabels, callback: BodyResponseCallback ): void; setLabels(callback: BodyResponseCallback): void; setLabels( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Setlabels + | Params$Resource$Interconnects$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -132132,12 +139564,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Setlabels; + {}) as Params$Resource$Interconnects$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectattachments$Setlabels; + params = {} as Params$Resource$Interconnects$Setlabels; options = {}; } @@ -132152,7 +139584,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/setLabels' + '/compute/alpha/projects/{project}/global/interconnects/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -132160,8 +139592,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -132208,14 +139640,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectAttachments.testIamPermissions({ + * const res = await compute.interconnects.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}', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -132246,27 +139676,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Interconnectattachments$Testiampermissions, + params: Params$Resource$Interconnects$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Interconnectattachments$Testiampermissions, + params?: Params$Resource$Interconnects$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Interconnectattachments$Testiampermissions, + params: Params$Resource$Interconnects$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachments$Testiampermissions, + params: Params$Resource$Interconnects$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnectattachments$Testiampermissions, + params: Params$Resource$Interconnects$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -132274,7 +139704,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectattachments$Testiampermissions + | Params$Resource$Interconnects$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -132290,13 +139720,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectattachments$Testiampermissions; + {}) as Params$Resource$Interconnects$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Interconnectattachments$Testiampermissions; + params = {} as Params$Resource$Interconnects$Testiampermissions; options = {}; } @@ -132311,7 +139740,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/interconnects/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -132319,8 +139748,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -132334,138 +139763,15 @@ export namespace compute_alpha { } } - export interface Params$Resource$Interconnectattachments$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Interconnectattachments$Delete extends StandardParameters { + export interface Params$Resource$Interconnects$Delete extends StandardParameters { /** - * Name of the interconnect attachment to delete. + * Name of the interconnect to delete. */ - interconnectAttachment?: string; + interconnect?: string; /** * Project ID for this request. */ project?: string; - /** - * Name of the region for 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 @@ -132483,21 +139789,27 @@ export namespace compute_alpha { */ requestId?: string; } - export interface Params$Resource$Interconnectattachments$Get extends StandardParameters { + export interface Params$Resource$Interconnects$Get extends StandardParameters { /** - * Name of the interconnect attachment to return. + * Name of the interconnect to return. */ - interconnectAttachment?: string; + interconnect?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Interconnects$Getdiagnostics extends StandardParameters { /** - * Name of the region for this request. + * Name of the interconnect resource to query. */ - region?: string; + interconnect?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Interconnectattachments$Getiampolicy extends StandardParameters { + export interface Params$Resource$Interconnects$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -132506,24 +139818,26 @@ export namespace compute_alpha { * 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$Interconnectattachments$Insert extends StandardParameters { + export interface Params$Resource$Interconnects$Getmacsecconfig extends StandardParameters { + /** + * Name of the interconnect resource to query. + */ + interconnect?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Interconnects$Insert extends StandardParameters { /** - * Name of the region for this request. + * Project ID for this request. */ - region?: string; + project?: 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 @@ -132540,17 +139854,13 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; /** * Request body metadata */ - requestBody?: Schema$InterconnectAttachment; + requestBody?: Schema$Interconnect; } - export interface Params$Resource$Interconnectattachments$List extends StandardParameters { + export interface Params$Resource$Interconnects$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -132613,532 +139923,136 @@ export namespace compute_alpha { */ 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 for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Interconnectattachments$Patch extends StandardParameters { - /** - * Name of the interconnect attachment to patch. - */ - interconnectAttachment?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectAttachment; - } - export interface Params$Resource$Interconnectattachments$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$Interconnectattachments$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The region for 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). - */ - requestId?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetLabelsRequest; - } - export interface Params$Resource$Interconnectattachments$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$Interconnectgroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Create Interconnects with redundancy by creating them in a specified - * interconnect group. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.interconnectGroups.createMembers({ - * // Name of the group resource to create members for. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "request": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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. - */ - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: StreamMethodOptions - ): Promise>; - createMembers( - params?: Params$Resource$Interconnectgroups$Createmembers, - options?: MethodOptions - ): Promise>; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - createMembers( - params: Params$Resource$Interconnectgroups$Createmembers, - callback: BodyResponseCallback - ): void; - createMembers(callback: BodyResponseCallback): void; - createMembers( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$Createmembers - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Createmembers; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Createmembers; - 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}/global/interconnectGroups/{interconnectGroup}/createMembers' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Deletes the specified InterconnectGroup 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.interconnectGroups.delete({ - * // Name of the InterconnectGroup resource to delete. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" - * // } - * } + * 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * @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. + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - delete( - params: Params$Resource$Interconnectgroups$Delete, - options: StreamMethodOptions - ): Promise>; - delete( - params?: Params$Resource$Interconnectgroups$Delete, - options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Interconnectgroups$Delete, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Interconnectgroups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - delete( - params: Params$Resource$Interconnectgroups$Delete, - callback: BodyResponseCallback - ): void; - delete(callback: BodyResponseCallback): void; - delete( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Interconnects$Patch extends StandardParameters { + /** + * Name of the interconnect to update. + */ + interconnect?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Delete; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$Interconnect; + } + export interface Params$Resource$Interconnects$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Interconnects$Setlabels extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetLabelsRequest; + } + export interface Params$Resource$Interconnects$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + + export class Resource$Licensecodes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Returns the specified InterconnectGroup resource in the given scope. + * Return a specified license code. License codes are mirrored across + * all projects that have permissions to read the License Code. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -133171,9 +140085,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.get({ - * // Name of the InterconnectGroup resource to return. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenseCodes.get({ + * // Number corresponding to the License code resource to return. + * licenseCode: '[0-9]{0,61}?', * // 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])?))', @@ -133182,17 +140096,25 @@ export namespace compute_alpha { * * // Example response * // { - * // "configured": {}, + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "etag": "my_etag", * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, + * // "incompatibleLicenses": [], * // "kind": "my_kind", + * // "licenseAlias": [], + * // "minimumRetention": {}, + * // "multiTenantOnly": false, * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "osLicense": false, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "selfLink": "my_selfLink", + * // "soleTenantOnly": false, + * // "state": "my_state", + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -133209,52 +140131,51 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnectgroups$Get, + params: Params$Resource$Licensecodes$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnectgroups$Get, + params?: Params$Resource$Licensecodes$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnectgroups$Get, + params: Params$Resource$Licensecodes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Licensecodes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnectgroups$Get, - callback: BodyResponseCallback + params: Params$Resource$Licensecodes$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Get - | BodyResponseCallback + | Params$Resource$Licensecodes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Licensecodes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Get; + params = {} as Params$Resource$Licensecodes$Get; options = {}; } @@ -133269,7 +140190,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/alpha/projects/{project}/global/licenseCodes/{licenseCode}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -133277,23 +140198,26 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'licenseCode'], + pathParams: ['licenseCode', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** * Gets the access control policy for a resource. May be empty if no such * policy or resource exists. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -133326,7 +140250,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.getIamPolicy({ + * const res = await compute.licenseCodes.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -133359,31 +140283,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, + params: Params$Resource$Licensecodes$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Interconnectgroups$Getiampolicy, + params?: Params$Resource$Licensecodes$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, + params: Params$Resource$Licensecodes$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, + params: Params$Resource$Licensecodes$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnectgroups$Getiampolicy, + params: Params$Resource$Licensecodes$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Getiampolicy + | Params$Resource$Licensecodes$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -133399,12 +140323,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Getiampolicy; + {}) as Params$Resource$Licensecodes$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Getiampolicy; + params = {} as Params$Resource$Licensecodes$Getiampolicy; options = {}; } @@ -133419,7 +140343,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/licenseCodes/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -133442,8 +140366,11 @@ export namespace compute_alpha { } /** - * Returns the interconnectStatuses for the specified - * InterconnectGroup. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -133467,7 +140394,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -133476,19 +140402,31 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.getOperationalStatus({ - * // Name of the interconnectGroup resource to query. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenseCodes.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])?))', + * // 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", - * // "result": {} + * // "version": 0 * // } * } * @@ -133504,61 +140442,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, options: StreamMethodOptions ): Promise>; - getOperationalStatus( - params?: Params$Resource$Interconnectgroups$Getoperationalstatus, + setIamPolicy( + params?: Params$Resource$Licensecodes$Setiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, + ): Promise>; + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getOperationalStatus( - params: Params$Resource$Interconnectgroups$Getoperationalstatus, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getOperationalStatus( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Licensecodes$Setiampolicy, + callback: BodyResponseCallback ): void; - getOperationalStatus( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Getoperationalstatus - | BodyResponseCallback + | Params$Resource$Licensecodes$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Getoperationalstatus; + {}) as Params$Resource$Licensecodes$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Getoperationalstatus; + params = {} as Params$Resource$Licensecodes$Setiampolicy; options = {}; } @@ -133573,33 +140503,33 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}/getOperationalStatus' + '/compute/alpha/projects/{project}/global/licenseCodes/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a InterconnectGroup in the specified project in the given scope - * using the parameters that are included in the request. + * Returns permissions that a caller has on the specified resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -133623,6 +140553,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -133631,41 +140562,18 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.insert({ + * const res = await compute.licenseCodes.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])?))', - * // 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 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 * // { - * // "configured": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "etag": "my_etag", - * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" + * // "permissions": [] * // } * }, * }); @@ -133673,34 +140581,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -133716,53 +140597,57 @@ export namespace compute_alpha { * @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$Interconnectgroups$Insert, + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Interconnectgroups$Insert, + testIamPermissions( + params?: Params$Resource$Licensecodes$Testiampermissions, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Interconnectgroups$Insert, + ): Promise>; + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Interconnectgroups$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Interconnectgroups$Insert, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licensecodes$Testiampermissions, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Insert - | BodyResponseCallback + | Params$Resource$Licensecodes$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Insert; + {}) as Params$Resource$Licensecodes$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Insert; + params = {} as Params$Resource$Licensecodes$Testiampermissions; options = {}; } @@ -133777,7 +140662,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups' + '/compute/alpha/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -133785,268 +140670,87 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Licensecodes$Get extends StandardParameters { /** - * Lists the InterconnectGroups 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.interconnectGroups.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "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. + * Number corresponding to the License code resource to return. */ - list( - params: Params$Resource$Interconnectgroups$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Interconnectgroups$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnectgroups$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectgroups$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Interconnectgroups$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$List; - let options = (optionsOrCallback || {}) as MethodOptions; + licenseCode?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Licensecodes$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Licensecodes$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$List; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + export class Resource$Licenses { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Patches the specified InterconnectGroup resource with the data included in - * the request. This method supports PATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Deletes the specified license. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -134078,9 +140782,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.patch({ - * // Name of the InterconnectGroup resource to patch. - * interconnectGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.delete({ + * // Name of the license resource to delete. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -134097,28 +140801,7 @@ export namespace compute_alpha { * // 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 list of fields to update. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "configured": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "etag": "my_etag", - * // "id": "my_id", - * // "intent": {}, - * // "interconnects": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "physicalStructure": {}, - * // "selfLink": "my_selfLink" - * // } - * }, * }); * console.log(res.data); * @@ -134167,32 +140850,32 @@ export namespace compute_alpha { * @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$Interconnectgroups$Patch, + delete( + params: Params$Resource$Licenses$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Interconnectgroups$Patch, + delete( + params?: Params$Resource$Licenses$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Interconnectgroups$Patch, + delete( + params: Params$Resource$Licenses$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnectgroups$Patch, + delete( + params: Params$Resource$Licenses$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnectgroups$Patch, + delete( + params: Params$Resource$Licenses$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Patch + | Params$Resource$Licenses$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -134207,13 +140890,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Patch; + params = {} as Params$Resource$Licenses$Delete; options = {}; } @@ -134228,16 +140910,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{interconnectGroup}' + '/compute/alpha/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectGroup'], - pathParams: ['interconnectGroup', 'project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { @@ -134251,8 +140933,10 @@ export namespace compute_alpha { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Returns the specified License resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -134276,6 +140960,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -134284,31 +140969,39 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.setIamPolicy({ + * const res = await compute.licenses.get({ + * // Name of the License resource to return. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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", - * // "version": 0 + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "incompatibleLicenses": [], + * // "kind": "my_kind", + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, + * // "name": "my_name", + * // "osLicense": false, + * // "params": {}, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -134324,53 +141017,52 @@ export namespace compute_alpha { * @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$Interconnectgroups$Setiampolicy, + get( + params: Params$Resource$Licenses$Get, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Interconnectgroups$Setiampolicy, + get( + params?: Params$Resource$Licenses$Get, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, + ): Promise>; + get( + params: Params$Resource$Licenses$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Licenses$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Interconnectgroups$Setiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Licenses$Get, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Licenses$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Setiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Setiampolicy; + params = {} as Params$Resource$Licenses$Get; options = {}; } @@ -134385,30 +141077,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -134441,26 +141137,23 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectGroups.testIamPermissions({ + * const res = await compute.licenses.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])?))', * // 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": [] + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -134476,57 +141169,53 @@ export namespace compute_alpha { * @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$Interconnectgroups$Testiampermissions, + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Interconnectgroups$Testiampermissions, + getIamPolicy( + params?: Params$Resource$Licenses$Getiampolicy, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, + ): Promise>; + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Interconnectgroups$Testiampermissions, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Licenses$Getiampolicy, + callback: BodyResponseCallback ): void; - testIamPermissions( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnectgroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Licenses$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectgroups$Testiampermissions; + {}) as Params$Resource$Licenses$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectgroups$Testiampermissions; + params = {} as Params$Resource$Licenses$Getiampolicy; options = {}; } @@ -134541,9 +141230,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectGroups/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/licenses/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -134554,300 +141243,20 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Interconnectgroups$Createmembers extends StandardParameters { - /** - * Name of the group resource to create members for. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectGroupsCreateMembersRequest; - } - export interface Params$Resource$Interconnectgroups$Delete extends StandardParameters { - /** - * Name of the InterconnectGroup resource to delete. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: 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; - } - export interface Params$Resource$Interconnectgroups$Get extends StandardParameters { - /** - * Name of the InterconnectGroup resource to return. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectgroups$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Interconnectgroups$Getoperationalstatus extends StandardParameters { - /** - * Name of the interconnectGroup resource to query. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectgroups$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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$InterconnectGroup; - } - export interface Params$Resource$Interconnectgroups$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Interconnectgroups$Patch extends StandardParameters { - /** - * Name of the InterconnectGroup resource to patch. - */ - interconnectGroup?: string; - /** - * Project ID for this request. - */ - project?: 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 list of fields to update. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$InterconnectGroup; - } - export interface Params$Resource$Interconnectgroups$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Interconnectgroups$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Interconnectlocations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Returns the details for the specified interconnect location. Gets a list of - * available interconnect locations by making a list() request. + * Create a License resource in the specified project. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -134871,7 +141280,9 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', + * 'https://www.googleapis.com/auth/devstorage.full_control', + * 'https://www.googleapis.com/auth/devstorage.read_only', + * 'https://www.googleapis.com/auth/devstorage.read_write', * ], * }); * @@ -134880,38 +141291,86 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectLocations.get({ - * // Name of the interconnect location to return. - * interconnectLocation: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.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])?))', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "incompatibleLicenses": [], + * // "kind": "my_kind", + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, + * // "name": "my_name", + * // "osLicense": false, + * // "params": {}, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "address": "my_address", - * // "availabilityZone": "my_availabilityZone", - * // "availableFeatures": [], - * // "availableLinkTypes": [], - * // "city": "my_city", - * // "continent": "my_continent", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "crossSiteInterconnectInfos": [], * // "description": "my_description", - * // "facilityProvider": "my_facilityProvider", - * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "peeringdbFacilityId": "my_peeringdbFacilityId", - * // "regionInfos": [], + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "singleRegionProductionCriticalPeerLocations": [], + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "supportsPzs": false + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -134927,55 +141386,52 @@ export namespace compute_alpha { * @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$Interconnectlocations$Get, + insert( + params: Params$Resource$Licenses$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnectlocations$Get, + insert( + params?: Params$Resource$Licenses$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnectlocations$Get, + ): Promise>; + insert( + params: Params$Resource$Licenses$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectlocations$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Licenses$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectlocations$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Licenses$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Interconnectlocations$Get - | BodyResponseCallback + | Params$Resource$Licenses$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectlocations$Get; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectlocations$Get; + params = {} as Params$Resource$Licenses$Insert; options = {}; } @@ -134989,32 +141445,38 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/interconnectLocations/{interconnectLocation}' + rootUrl + '/compute/alpha/projects/{project}/global/licenses' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectLocation'], - pathParams: ['interconnectLocation', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of interconnect locations available to the specified - * project. + * Retrieves the list of licenses + * available in the specified project. This method does not + * get any licenses that belong to other projects, including licenses attached + * to publicly-available images, like Debian 9. If you want to get a list of + * publicly-available licenses, use this method to make a request to the + * respective image project, such as debian-cloud orwindows-cloud. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -135047,7 +141509,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectLocations.list({ + * const res = await compute.licenses.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -135146,7 +141608,6 @@ export namespace compute_alpha { * // { * // "id": "my_id", * // "items": [], - * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", * // "warning": {} @@ -135166,54 +141627,53 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Interconnectlocations$List, + params: Params$Resource$Licenses$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Interconnectlocations$List, + params?: Params$Resource$Licenses$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Interconnectlocations$List, + params: Params$Resource$Licenses$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectlocations$List, + params: Params$Resource$Licenses$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Interconnectlocations$List, - callback: BodyResponseCallback + params: Params$Resource$Licenses$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Interconnectlocations$List - | BodyResponseCallback + | Params$Resource$Licenses$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectlocations$List; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectlocations$List; + params = {} as Params$Resource$Licenses$List; options = {}; } @@ -135227,8 +141687,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/interconnectLocations' + rootUrl + '/compute/alpha/projects/{project}/global/licenses' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -135241,140 +141700,180 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Interconnectlocations$Get extends StandardParameters { - /** - * Name of the interconnect location to return. - */ - interconnectLocation?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnectlocations$List extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource labels. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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) - * ``` + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * 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', + * ], + * }); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Do the magic + * const res = await compute.licenses.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])?))', + * // 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}', * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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. + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * @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. */ - returnPartialSuccess?: boolean; - } + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Licenses$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Licenses$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Licenses$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Licenses$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; - export class Resource$Interconnectremotelocations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Licenses$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/alpha/projects/{project}/global/licenses/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Returns the details for the specified interconnect remote location. Gets a - * list of available interconnect remote locations by making alist() request. + * Returns permissions that a caller has on the specified resource. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -135407,40 +141906,26 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectRemoteLocations.get({ - * // Name of the interconnect remote location to return. - * interconnectRemoteLocation: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.licenses.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])?))', + * // 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 * // { - * // "address": "my_address", - * // "attachmentConfigurationConstraints": {}, - * // "city": "my_city", - * // "constraints": {}, - * // "continent": "my_continent", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "facilityProvider": "my_facilityProvider", - * // "facilityProviderFacilityId": "my_facilityProviderFacilityId", - * // "id": "my_id", - * // "kind": "my_kind", - * // "lacp": "my_lacp", - * // "maxLagSize100Gbps": 0, - * // "maxLagSize10Gbps": 0, - * // "maxLagSize400Gbps": 0, - * // "name": "my_name", - * // "peeringdbFacilityId": "my_peeringdbFacilityId", - * // "permittedConnections": [], - * // "remoteService": "my_remoteService", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "status": "my_status" + * // "permissions": [] * // } * } * @@ -135456,57 +141941,57 @@ export namespace compute_alpha { * @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$Interconnectremotelocations$Get, + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Interconnectremotelocations$Get, + testIamPermissions( + params?: Params$Resource$Licenses$Testiampermissions, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Interconnectremotelocations$Get, + ): Promise>; + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectremotelocations$Get, + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Interconnectremotelocations$Get, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Licenses$Testiampermissions, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - get( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnectremotelocations$Get - | BodyResponseCallback + | Params$Resource$Licenses$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectremotelocations$Get; + {}) as Params$Resource$Licenses$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectremotelocations$Get; + params = {} as Params$Resource$Licenses$Testiampermissions; options = {}; } @@ -135521,31 +142006,33 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectRemoteLocations/{interconnectRemoteLocation}' + '/compute/alpha/projects/{project}/global/licenses/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnectRemoteLocation'], - pathParams: ['interconnectRemoteLocation', 'project'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of interconnect remote locations available to the - * specified project. + * Updates a License resource in the specified project. + * *Caution* This resource is intended + * for use only by third-party partners who are creatingCloud Marketplace + * images. * @example * ```js * // Before running the sample: @@ -135569,7 +142056,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -135578,109 +142064,90 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnectRemoteLocations.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.licenses.update({ + * // The license name for this request. + * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', + * // update_mask indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allowedReplacementLicenses": [], + * // "appendableToDisk": false, + * // "chargesUseFee": false, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "incompatibleLicenses": [], + * // "kind": "my_kind", + * // "licenseCode": "my_licenseCode", + * // "minimumRetention": {}, + * // "multiTenantOnly": false, + * // "name": "my_name", + * // "osLicense": false, + * // "params": {}, + * // "removableFromDisk": false, + * // "requiredCoattachedLicenses": [], + * // "resourceRequirements": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "soleTenantOnly": false, + * // "transferable": false, + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -135696,57 +142163,52 @@ export namespace compute_alpha { * @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$Interconnectremotelocations$List, + update( + params: Params$Resource$Licenses$Update, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Interconnectremotelocations$List, + update( + params?: Params$Resource$Licenses$Update, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnectremotelocations$List, + ): Promise>; + update( + params: Params$Resource$Licenses$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Interconnectremotelocations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnectremotelocations$List, - callback: BodyResponseCallback + update( + params: Params$Resource$Licenses$Update, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + update( + params: Params$Resource$Licenses$Update, + callback: BodyResponseCallback ): void; - list( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Interconnectremotelocations$List - | BodyResponseCallback + | Params$Resource$Licenses$Update + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnectremotelocations$List; + let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnectremotelocations$List; + params = {} as Params$Resource$Licenses$Update; options = {}; } @@ -135761,42 +142223,107 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnectRemoteLocations' + '/compute/alpha/projects/{project}/global/licenses/{license}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'license'], + pathParams: ['license', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Interconnectremotelocations$Get extends StandardParameters { + export interface Params$Resource$Licenses$Delete extends StandardParameters { /** - * Name of the interconnect remote location to return. + * Name of the license resource to delete. */ - interconnectRemoteLocation?: string; + license?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + } + export interface Params$Resource$Licenses$Get extends StandardParameters { + /** + * Name of the License resource to return. + */ + license?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnectremotelocations$List extends StandardParameters { + export interface Params$Resource$Licenses$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Licenses$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$License; + } + export interface Params$Resource$Licenses$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -135900,15 +142427,81 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; } + export interface Params$Resource$Licenses$Setiampolicy extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GlobalSetPolicyRequest; + } + export interface Params$Resource$Licenses$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; - export class Resource$Interconnects { + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Licenses$Update extends StandardParameters { + /** + * The license name for this request. + */ + license?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * update_mask indicates fields to be updated as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$License; + } + + export class Resource$Machineimages { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Deletes the specified Interconnect. + * Deletes the specified machine image. Deleting a machine image is permanent + * and cannot be undone. * @example * ```js * // Before running the sample: @@ -135940,9 +142533,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.delete({ - * // Name of the interconnect to delete. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineImages.delete({ + * // The name of the machine image to delete. + * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -136009,31 +142602,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Machineimages$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Interconnects$Delete, + params?: Params$Resource$Machineimages$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Machineimages$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Machineimages$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Interconnects$Delete, + params: Params$Resource$Machineimages$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Interconnects$Delete + | Params$Resource$Machineimages$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -136049,12 +142642,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Delete; + {}) as Params$Resource$Machineimages$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Delete; + params = {} as Params$Resource$Machineimages$Delete; options = {}; } @@ -136069,7 +142662,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{interconnect}' + '/compute/alpha/projects/{project}/global/machineImages/{machineImage}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -136077,8 +142670,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'machineImage'], + pathParams: ['machineImage', 'project'], context: this.context, }; if (callback) { @@ -136092,8 +142685,7 @@ export namespace compute_alpha { } /** - * Returns the specified Interconnect. Get a list of available Interconnects - * by making a list() request. + * Returns the specified machine image. * @example * ```js * // Before running the sample: @@ -136126,9 +142718,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.get({ - * // Name of the interconnect to return. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineImages.get({ + * // The name of the machine image. + * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -136137,44 +142729,28 @@ export namespace compute_alpha { * * // Example response * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", * // "description": "my_description", - * // "effectiveLocation": "my_effectiveLocation", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", + * // "guestFlush": false, * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", + * // "instanceProperties": {}, * // "kind": "my_kind", * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, + * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, + * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "savedDisks": [], * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "sourceDiskEncryptionKeys": [], + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceProperties": {}, + * // "status": "my_status", + * // "storageLocations": [], + * // "totalStorageBytes": "my_totalStorageBytes" * // } * } * @@ -136191,213 +142767,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Interconnects$Get, + params: Params$Resource$Machineimages$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Interconnects$Get, + params?: Params$Resource$Machineimages$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Interconnects$Get, + params: Params$Resource$Machineimages$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnects$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Interconnects$Get, - callback: BodyResponseCallback + params: Params$Resource$Machineimages$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Interconnects$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$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/alpha/projects/{project}/global/interconnects/{interconnect}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the interconnectDiagnostics for the specified - * Interconnect. - * - * In the event of a - * global outage, do not use this API to make decisions about where to - * redirect your network traffic. - * - * Unlike a VLAN attachment, which is regional, a Cloud Interconnect - * connection is a global resource. A global outage can prevent this - * API from functioning properly. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.interconnects.getDiagnostics({ - * // Name of the interconnect resource to query. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "result": {} - * // } - * } - * - * 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. - */ - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: StreamMethodOptions - ): Promise>; - getDiagnostics( - params?: Params$Resource$Interconnects$Getdiagnostics, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getDiagnostics( - params: Params$Resource$Interconnects$Getdiagnostics, - callback: BodyResponseCallback - ): void; - getDiagnostics( - callback: BodyResponseCallback - ): void; - getDiagnostics( - paramsOrCallback?: - | Params$Resource$Interconnects$Getdiagnostics - | BodyResponseCallback + | Params$Resource$Machineimages$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getdiagnostics; + {}) as Params$Resource$Machineimages$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getdiagnostics; + params = {} as Params$Resource$Machineimages$Get; options = {}; } @@ -136412,7 +142827,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{interconnect}/getDiagnostics' + '/compute/alpha/projects/{project}/global/machineImages/{machineImage}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -136420,19 +142835,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project', 'machineImage'], + pathParams: ['machineImage', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } @@ -136471,7 +142884,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.getIamPolicy({ + * const res = await compute.machineImages.getIamPolicy({ * // Requested IAM Policy version. * optionsRequestedPolicyVersion: 'placeholder-value', * // Project ID for this request. @@ -136504,31 +142917,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Interconnects$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Interconnects$Getiampolicy, + params?: Params$Resource$Machineimages$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Interconnects$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnects$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Interconnects$Getiampolicy, + params: Params$Resource$Machineimages$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnects$Getiampolicy + | Params$Resource$Machineimages$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -136544,12 +142957,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getiampolicy; + {}) as Params$Resource$Machineimages$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getiampolicy; + params = {} as Params$Resource$Machineimages$Getiampolicy; options = {}; } @@ -136564,7 +142977,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/machineImages/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -136587,164 +143000,11 @@ export namespace compute_alpha { } /** - * Returns the interconnectMacsecConfig for the specified - * Interconnect. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.interconnects.getMacsecConfig({ - * // Name of the interconnect resource to query. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "result": {} - * // } - * } - * - * 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. - */ - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - options: StreamMethodOptions - ): Promise>; - getMacsecConfig( - params?: Params$Resource$Interconnects$Getmacsecconfig, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getMacsecConfig( - params: Params$Resource$Interconnects$Getmacsecconfig, - callback: BodyResponseCallback - ): void; - getMacsecConfig( - callback: BodyResponseCallback - ): void; - getMacsecConfig( - paramsOrCallback?: - | Params$Resource$Interconnects$Getmacsecconfig - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Getmacsecconfig; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Getmacsecconfig; - 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}/global/interconnects/{interconnect}/getMacsecConfig' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } - - /** - * Creates an Interconnect in the specified project using - * the data included in the request. + * Creates a machine image in the specified project using the + * data that is included in the request. If you are creating a new machine + * image to update an existing instance, your new machine image should use the + * same network or, if applicable, the same subnetwork as the original + * instance. * @example * ```js * // Before running the sample: @@ -136776,7 +143036,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.insert({ + * const res = await compute.machineImages.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])?))', @@ -136794,49 +143054,35 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Required. Source instance that is used to create the machine image from. + * sourceInstance: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", * // "description": "my_description", - * // "effectiveLocation": "my_effectiveLocation", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", + * // "guestFlush": false, * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", + * // "instanceProperties": {}, * // "kind": "my_kind", * // "labelFingerprint": "my_labelFingerprint", * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, + * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, + * // "satisfiesPzi": false, * // "satisfiesPzs": false, + * // "savedDisks": [], * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] + * // "sourceDiskEncryptionKeys": [], + * // "sourceInstance": "my_sourceInstance", + * // "sourceInstanceProperties": {}, + * // "status": "my_status", + * // "storageLocations": [], + * // "totalStorageBytes": "my_totalStorageBytes" * // } * }, * }); @@ -136888,31 +143134,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Machineimages$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Interconnects$Insert, + params?: Params$Resource$Machineimages$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Machineimages$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Machineimages$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Interconnects$Insert, + params: Params$Resource$Machineimages$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Interconnects$Insert + | Params$Resource$Machineimages$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -136928,12 +143174,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Insert; + {}) as Params$Resource$Machineimages$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Insert; + params = {} as Params$Resource$Machineimages$Insert; options = {}; } @@ -136947,7 +143193,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/interconnects' + rootUrl + '/compute/alpha/projects/{project}/global/machineImages' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -136970,244 +143216,8 @@ export namespace compute_alpha { } /** - * Retrieves the list of Interconnects 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.interconnects.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * 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$Interconnects$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Interconnects$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Interconnects$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnects$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Interconnects$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Interconnects$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$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/alpha/projects/{project}/global/interconnects' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Updates the specified Interconnect with the data included in the request. - * This method supportsPATCH - * semantics and uses theJSON merge - * patch format and processing rules. + * Retrieves a list of machine images that are contained within + * the specified project. * @example * ```js * // Before running the sample: @@ -137231,6 +143241,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -137239,104 +143250,109 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.patch({ - * // Name of the interconnect to update. - * interconnect: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.machineImages.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "aaiEnabled": false, - * // "adminEnabled": false, - * // "applicationAwareInterconnect": {}, - * // "availableFeatures": [], - * // "circuitInfos": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "customerName": "my_customerName", - * // "description": "my_description", - * // "effectiveLocation": "my_effectiveLocation", - * // "expectedOutages": [], - * // "googleIpAddress": "my_googleIpAddress", - * // "googleReferenceId": "my_googleReferenceId", - * // "id": "my_id", - * // "interconnectAttachments": [], - * // "interconnectGroups": [], - * // "interconnectType": "my_interconnectType", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "linkType": "my_linkType", - * // "location": "my_location", - * // "macsec": {}, - * // "macsecEnabled": false, - * // "name": "my_name", - * // "nocContactEmail": "my_nocContactEmail", - * // "operationalStatus": "my_operationalStatus", - * // "params": {}, - * // "peerIpAddress": "my_peerIpAddress", - * // "provisionedLinkCount": 0, - * // "remoteLocation": "my_remoteLocation", - * // "requestedFeatures": [], - * // "requestedLinkCount": 0, - * // "satisfiesPzs": false, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "state": "my_state", - * // "subzone": "my_subzone", - * // "wireGroups": [] - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -137352,53 +143368,53 @@ export namespace compute_alpha { * @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$Interconnects$Patch, + list( + params: Params$Resource$Machineimages$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Interconnects$Patch, + list( + params?: Params$Resource$Machineimages$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Interconnects$Patch, + ): Promise>; + list( + params: Params$Resource$Machineimages$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnects$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Machineimages$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Interconnects$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Machineimages$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Interconnects$Patch - | BodyResponseCallback + | Params$Resource$Machineimages$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Patch; + {}) as Params$Resource$Machineimages$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Patch; + params = {} as Params$Resource$Machineimages$List; options = {}; } @@ -137412,26 +143428,25 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{interconnect}' + rootUrl + '/compute/alpha/projects/{project}/global/machineImages' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'interconnect'], - pathParams: ['interconnect', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } @@ -137469,7 +143484,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.setIamPolicy({ + * const res = await compute.machineImages.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])?))', @@ -137510,31 +143525,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setIamPolicy( - params: Params$Resource$Interconnects$Setiampolicy, + params: Params$Resource$Machineimages$Setiampolicy, options: StreamMethodOptions ): Promise>; setIamPolicy( - params?: Params$Resource$Interconnects$Setiampolicy, + params?: Params$Resource$Machineimages$Setiampolicy, options?: MethodOptions ): Promise>; setIamPolicy( - params: Params$Resource$Interconnects$Setiampolicy, + params: Params$Resource$Machineimages$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnects$Setiampolicy, + params: Params$Resource$Machineimages$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setIamPolicy( - params: Params$Resource$Interconnects$Setiampolicy, + params: Params$Resource$Machineimages$Setiampolicy, callback: BodyResponseCallback ): void; setIamPolicy(callback: BodyResponseCallback): void; setIamPolicy( paramsOrCallback?: - | Params$Resource$Interconnects$Setiampolicy + | Params$Resource$Machineimages$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -137550,12 +143565,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Setiampolicy; + {}) as Params$Resource$Machineimages$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Setiampolicy; + params = {} as Params$Resource$Machineimages$Setiampolicy; options = {}; } @@ -137570,7 +143585,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/machineImages/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -137593,8 +143608,7 @@ export namespace compute_alpha { } /** - * Sets the labels on an Interconnect. To learn more about labels, - * read the Labeling + * Sets the labels on a machine image. To learn more about labels, read theLabeling * Resources documentation. * @example * ```js @@ -137627,7 +143641,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.setLabels({ + * const res = await compute.machineImages.setLabels({ * // 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])?))', @@ -137691,31 +143705,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ setLabels( - params: Params$Resource$Interconnects$Setlabels, + params: Params$Resource$Machineimages$Setlabels, options: StreamMethodOptions ): Promise>; setLabels( - params?: Params$Resource$Interconnects$Setlabels, + params?: Params$Resource$Machineimages$Setlabels, options?: MethodOptions ): Promise>; setLabels( - params: Params$Resource$Interconnects$Setlabels, + params: Params$Resource$Machineimages$Setlabels, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Interconnects$Setlabels, + params: Params$Resource$Machineimages$Setlabels, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; setLabels( - params: Params$Resource$Interconnects$Setlabels, + params: Params$Resource$Machineimages$Setlabels, callback: BodyResponseCallback ): void; setLabels(callback: BodyResponseCallback): void; setLabels( paramsOrCallback?: - | Params$Resource$Interconnects$Setlabels + | Params$Resource$Machineimages$Setlabels | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -137731,12 +143745,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Setlabels; + {}) as Params$Resource$Machineimages$Setlabels; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Setlabels; + params = {} as Params$Resource$Machineimages$Setlabels; options = {}; } @@ -137751,7 +143765,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{resource}/setLabels' + '/compute/alpha/projects/{project}/global/machineImages/{resource}/setLabels' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -137807,7 +143821,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.interconnects.testIamPermissions({ + * const res = await compute.machineImages.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])?))', @@ -137843,27 +143857,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Interconnects$Testiampermissions, + params: Params$Resource$Machineimages$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Interconnects$Testiampermissions, + params?: Params$Resource$Machineimages$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Interconnects$Testiampermissions, + params: Params$Resource$Machineimages$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnects$Testiampermissions, + params: Params$Resource$Machineimages$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Interconnects$Testiampermissions, + params: Params$Resource$Machineimages$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -137871,7 +143885,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Interconnects$Testiampermissions + | Params$Resource$Machineimages$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -137887,12 +143901,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Interconnects$Testiampermissions; + {}) as Params$Resource$Machineimages$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Interconnects$Testiampermissions; + params = {} as Params$Resource$Machineimages$Testiampermissions; options = {}; } @@ -137907,7 +143921,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/interconnects/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/machineImages/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -137930,11 +143944,11 @@ export namespace compute_alpha { } } - export interface Params$Resource$Interconnects$Delete extends StandardParameters { + export interface Params$Resource$Machineimages$Delete extends StandardParameters { /** - * Name of the interconnect to delete. + * The name of the machine image to delete. */ - interconnect?: string; + machineImage?: string; /** * Project ID for this request. */ @@ -137956,27 +143970,17 @@ export namespace compute_alpha { */ requestId?: string; } - export interface Params$Resource$Interconnects$Get extends StandardParameters { - /** - * Name of the interconnect to return. - */ - interconnect?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnects$Getdiagnostics extends StandardParameters { + export interface Params$Resource$Machineimages$Get extends StandardParameters { /** - * Name of the interconnect resource to query. + * The name of the machine image. */ - interconnect?: string; + machineImage?: string; /** * Project ID for this request. */ project?: string; } - export interface Params$Resource$Interconnects$Getiampolicy extends StandardParameters { + export interface Params$Resource$Machineimages$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -137990,17 +143994,7 @@ export namespace compute_alpha { */ resource?: string; } - export interface Params$Resource$Interconnects$Getmacsecconfig extends StandardParameters { - /** - * Name of the interconnect resource to query. - */ - interconnect?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Interconnects$Insert extends StandardParameters { + export interface Params$Resource$Machineimages$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -138021,13 +144015,17 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * Required. Source instance that is used to create the machine image from. + */ + sourceInstance?: string; /** * Request body metadata */ - requestBody?: Schema$Interconnect; + requestBody?: Schema$MachineImage; } - export interface Params$Resource$Interconnects$List extends StandardParameters { + export interface Params$Resource$Machineimages$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -138118,51 +144116,20 @@ export namespace compute_alpha { */ pageToken?: string; /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Interconnects$Patch extends StandardParameters { - /** - * Name of the interconnect to update. - */ - interconnect?: string; - /** - * Project ID for this request. - */ - project?: 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). + * Project ID for this request. */ - requestId?: string; - + project?: string; /** - * Request body metadata + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestBody?: Schema$Interconnect; + returnPartialSuccess?: boolean; } - export interface Params$Resource$Interconnects$Setiampolicy extends StandardParameters { + export interface Params$Resource$Machineimages$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -138177,7 +144144,7 @@ export namespace compute_alpha { */ requestBody?: Schema$GlobalSetPolicyRequest; } - export interface Params$Resource$Interconnects$Setlabels extends StandardParameters { + export interface Params$Resource$Machineimages$Setlabels extends StandardParameters { /** * Project ID for this request. */ @@ -138192,7 +144159,7 @@ export namespace compute_alpha { */ requestBody?: Schema$GlobalSetLabelsRequest; } - export interface Params$Resource$Interconnects$Testiampermissions extends StandardParameters { + export interface Params$Resource$Machineimages$Testiampermissions extends StandardParameters { /** * Project ID for this request. */ @@ -138208,18 +144175,17 @@ export namespace compute_alpha { requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Licensecodes { + export class Resource$Machinetypes { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Return a specified license code. License codes are mirrored across - * all projects that have permissions to read the License Code. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves an aggregated list of machine types. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -138252,36 +144218,121 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.get({ - * // Number corresponding to the License code resource to return. - * licenseCode: '[0-9]{0,61}?', + * const res = await compute.machineTypes.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', * // 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", * // "id": "my_id", - * // "incompatibleLicenses": [], + * // "items": {}, * // "kind": "my_kind", - * // "licenseAlias": [], - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "soleTenantOnly": false, - * // "state": "my_state", - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -138297,52 +144348,57 @@ export namespace compute_alpha { * @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$Licensecodes$Get, + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Licensecodes$Get, + aggregatedList( + params?: Params$Resource$Machinetypes$Aggregatedlist, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Licensecodes$Get, + ): Promise>; + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Licensecodes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Licensecodes$Get, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Machinetypes$Aggregatedlist, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Licensecodes$Get - | BodyResponseCallback + | Params$Resource$Machinetypes$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licensecodes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Machinetypes$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Get; + params = {} as Params$Resource$Machinetypes$Aggregatedlist; options = {}; } @@ -138357,7 +144413,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenseCodes/{licenseCode}' + '/compute/alpha/projects/{project}/aggregated/machineTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -138365,26 +144421,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'licenseCode'], - pathParams: ['licenseCode', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the specified machine type. * @example * ```js * // Before running the sample: @@ -138417,23 +144469,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.machineTypes.get({ + * // Name of the machine type to return. + * machineType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "accelerators": [], + * // "architecture": "my_architecture", + * // "bundledLocalSsds": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "guestCpus": 0, + * // "id": "my_id", + * // "isSharedCpu": false, + * // "kind": "my_kind", + * // "maximumPersistentDisks": 0, + * // "maximumPersistentDisksSizeGb": "my_maximumPersistentDisksSizeGb", + * // "memoryMb": 0, + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "zone": "my_zone" * // } * } * @@ -138449,53 +144514,52 @@ export namespace compute_alpha { * @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$Licensecodes$Getiampolicy, + get( + params: Params$Resource$Machinetypes$Get, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Licensecodes$Getiampolicy, + get( + params?: Params$Resource$Machinetypes$Get, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, + ): Promise>; + get( + params: Params$Resource$Machinetypes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Machinetypes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Licensecodes$Getiampolicy, - callback: BodyResponseCallback + get( + params: Params$Resource$Machinetypes$Get, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Licensecodes$Getiampolicy - | BodyResponseCallback + | Params$Resource$Machinetypes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Getiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Machinetypes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Getiampolicy; + params = {} as Params$Resource$Machinetypes$Get; options = {}; } @@ -138510,7 +144574,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenseCodes/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/machineTypes/{machineType}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -138518,26 +144582,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'machineType'], + pathParams: ['machineType', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Retrieves a list of machine types available to the specified + * project. * @example * ```js * // Before running the sample: @@ -138561,6 +144622,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -138569,31 +144631,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.setIamPolicy({ + * const res = await compute.machineTypes.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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 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": {} - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -138609,53 +144751,53 @@ export namespace compute_alpha { * @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$Licensecodes$Setiampolicy, + list( + params: Params$Resource$Machinetypes$List, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Licensecodes$Setiampolicy, + list( + params?: Params$Resource$Machinetypes$List, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, + ): Promise>; + list( + params: Params$Resource$Machinetypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Machinetypes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licensecodes$Setiampolicy, - callback: BodyResponseCallback + list( + params: Params$Resource$Machinetypes$List, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Licensecodes$Setiampolicy - | BodyResponseCallback + | Params$Resource$Machinetypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Setiampolicy; + {}) as Params$Resource$Machinetypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Setiampolicy; + params = {} as Params$Resource$Machinetypes$List; options = {}; } @@ -138670,33 +144812,283 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenseCodes/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/machineTypes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Machinetypes$Aggregatedlist extends StandardParameters { /** - * Returns permissions that a caller has on the specified resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Machinetypes$Get extends StandardParameters { + /** + * Name of the machine type to return. + */ + machineType?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Machinetypes$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Networkattachments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all NetworkAttachment resources, + * regional and global, available to the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -138729,26 +145121,120 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenseCodes.testIamPermissions({ + * const res = await compute.networkAttachments.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', * // 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 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": [] - * // } - * }, + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} * // } * } * @@ -138764,57 +145250,57 @@ export namespace compute_alpha { * @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$Licensecodes$Testiampermissions, + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licensecodes$Testiampermissions, + aggregatedList( + params?: Params$Resource$Networkattachments$Aggregatedlist, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + ): Promise>; + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licensecodes$Testiampermissions, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Networkattachments$Aggregatedlist, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - testIamPermissions( + aggregatedList( paramsOrCallback?: - | Params$Resource$Licensecodes$Testiampermissions - | BodyResponseCallback + | Params$Resource$Networkattachments$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licensecodes$Testiampermissions; + {}) as Params$Resource$Networkattachments$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licensecodes$Testiampermissions; + params = {} as Params$Resource$Networkattachments$Aggregatedlist; options = {}; } @@ -138829,95 +145315,32 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenseCodes/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/aggregated/networkAttachments' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } - } - - export interface Params$Resource$Licensecodes$Get extends StandardParameters { - /** - * Number corresponding to the License code resource to return. - */ - licenseCode?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Licensecodes$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Licensecodes$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Licensecodes$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Licenses { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Deletes the specified license. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Deletes the specified NetworkAttachment in the given scope * @example * ```js * // Before running the sample: @@ -138949,12 +145372,14 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.delete({ - * // Name of the license resource to delete. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkAttachments.delete({ + * // Name of the NetworkAttachment resource to delete. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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. @@ -138968,6 +145393,7 @@ export namespace compute_alpha { * // 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', * }); * console.log(res.data); @@ -139018,31 +145444,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Licenses$Delete, + params: Params$Resource$Networkattachments$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Licenses$Delete, + params?: Params$Resource$Networkattachments$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Licenses$Delete, + params: Params$Resource$Networkattachments$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Licenses$Delete, + params: Params$Resource$Networkattachments$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Licenses$Delete, + params: Params$Resource$Networkattachments$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Licenses$Delete + | Params$Resource$Networkattachments$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -139057,12 +145483,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Delete; + params = {} as Params$Resource$Networkattachments$Delete; options = {}; } @@ -139077,16 +145504,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenses/{license}' + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', }, options ), - params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + params, + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], context: this.context, }; if (callback) { @@ -139100,10 +145527,7 @@ export namespace compute_alpha { } /** - * Returns the specified License resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns the specified NetworkAttachment resource in the given scope. * @example * ```js * // Before running the sample: @@ -139136,39 +145560,34 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.get({ - * // Name of the License resource to return. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkAttachments.get({ + * // Name of the NetworkAttachment resource to return. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?', * }); * console.log(res.data); * * // Example response * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "incompatibleLicenses": [], * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "subnetworks": [] * // } * } * @@ -139185,51 +145604,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Licenses$Get, + params: Params$Resource$Networkattachments$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Licenses$Get, + params?: Params$Resource$Networkattachments$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Licenses$Get, + params: Params$Resource$Networkattachments$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Licenses$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Licenses$Get, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Licenses$Get - | BodyResponseCallback + | Params$Resource$Networkattachments$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Get; + params = {} as Params$Resource$Networkattachments$Get; options = {}; } @@ -139244,7 +145664,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenses/{license}' + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -139252,26 +145672,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** * Gets the access control policy for a resource. May be empty if no such * policy or resource exists. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. * @example * ```js * // Before running the sample: @@ -139304,14 +145721,16 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.getIamPolicy({ + * const res = await compute.networkAttachments.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}', + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -139337,31 +145756,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, options: StreamMethodOptions ): Promise>; getIamPolicy( - params?: Params$Resource$Licenses$Getiampolicy, + params?: Params$Resource$Networkattachments$Getiampolicy, options?: MethodOptions ): Promise>; getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; getIamPolicy( - params: Params$Resource$Licenses$Getiampolicy, + params: Params$Resource$Networkattachments$Getiampolicy, callback: BodyResponseCallback ): void; getIamPolicy(callback: BodyResponseCallback): void; getIamPolicy( paramsOrCallback?: - | Params$Resource$Licenses$Getiampolicy + | Params$Resource$Networkattachments$Getiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -139377,12 +145796,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Getiampolicy; + {}) as Params$Resource$Networkattachments$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Getiampolicy; + params = {} as Params$Resource$Networkattachments$Getiampolicy; options = {}; } @@ -139397,7 +145816,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenses/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -139405,8 +145824,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -139420,10 +145839,8 @@ export namespace compute_alpha { } /** - * Create a License resource in the specified project. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Creates a NetworkAttachment in the specified project in the given scope + * using the parameters that are included in the request. * @example * ```js * // Before running the sample: @@ -139447,9 +145864,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/devstorage.full_control', - * 'https://www.googleapis.com/auth/devstorage.read_only', - * 'https://www.googleapis.com/auth/devstorage.read_write', * ], * }); * @@ -139458,10 +145872,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.insert({ + * const res = await compute.networkAttachments.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. @@ -139475,34 +145891,28 @@ export namespace compute_alpha { * // 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 * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "incompatibleLicenses": [], * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "subnetworks": [] * // } * }, * }); @@ -139554,31 +145964,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Licenses$Insert, + params: Params$Resource$Networkattachments$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Licenses$Insert, + params?: Params$Resource$Networkattachments$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Licenses$Insert, + params: Params$Resource$Networkattachments$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Licenses$Insert, + params: Params$Resource$Networkattachments$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Licenses$Insert, + params: Params$Resource$Networkattachments$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Licenses$Insert + | Params$Resource$Networkattachments$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -139593,12 +146003,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Insert; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Insert; + params = {} as Params$Resource$Networkattachments$Insert; options = {}; } @@ -139612,7 +146023,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/licenses' + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -139620,8 +146032,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -139635,15 +146047,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of licenses - * available in the specified project. This method does not - * get any licenses that belong to other projects, including licenses attached - * to publicly-available images, like Debian 9. If you want to get a list of - * publicly-available licenses, use this method to make a request to the - * respective image project, such as debian-cloud orwindows-cloud. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Lists the NetworkAttachments for a project in the given scope. * @example * ```js * // Before running the sample: @@ -139676,7 +146080,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.list({ + * const res = await compute.networkAttachments.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -139761,6 +146165,8 @@ export namespace compute_alpha { * // 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. * // @@ -139775,6 +146181,7 @@ export namespace compute_alpha { * // { * // "id": "my_id", * // "items": [], + * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", * // "warning": {} @@ -139794,53 +146201,54 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Licenses$List, + params: Params$Resource$Networkattachments$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Licenses$List, + params?: Params$Resource$Networkattachments$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Licenses$List, + params: Params$Resource$Networkattachments$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Licenses$List, + params: Params$Resource$Networkattachments$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Licenses$List, - callback: BodyResponseCallback + params: Params$Resource$Networkattachments$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Licenses$List - | BodyResponseCallback + | Params$Resource$Networkattachments$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$List; + params = {} as Params$Resource$Networkattachments$List; options = {}; } @@ -139854,7 +146262,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/licenses' + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -139862,26 +146271,25 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Patches the specified NetworkAttachment resource with the data included in + * the request. This method supports PATCH + * semantics and usesJSON merge + * patch format and processing rules. * @example * ```js * // Before running the sample: @@ -139913,20 +146321,49 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.setIamPolicy({ + * const res = await compute.networkAttachments.patch({ + * // Name of the NetworkAttachment resource to patch. + * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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}', + * // Name of the region for 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 * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "connectionEndpoints": [], + * // "connectionPreference": "my_connectionPreference", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "network": "my_network", + * // "producerAcceptLists": [], + * // "producerRejectLists": [], + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * }, * }); @@ -139934,10 +146371,34 @@ export namespace compute_alpha { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -139953,53 +146414,53 @@ export namespace compute_alpha { * @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$Licenses$Setiampolicy, + patch( + params: Params$Resource$Networkattachments$Patch, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Licenses$Setiampolicy, + patch( + params?: Params$Resource$Networkattachments$Patch, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, + ): Promise>; + patch( + params: Params$Resource$Networkattachments$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Networkattachments$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Licenses$Setiampolicy, - callback: BodyResponseCallback + patch( + params: Params$Resource$Networkattachments$Patch, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Licenses$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networkattachments$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Setiampolicy; + {}) as Params$Resource$Networkattachments$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Setiampolicy; + params = {} as Params$Resource$Networkattachments$Patch; options = {}; } @@ -140014,33 +146475,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenses/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'networkAttachment'], + pathParams: ['networkAttachment', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -140064,7 +146523,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -140073,18 +146531,22 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.testIamPermissions({ + * const res = await compute.networkAttachments.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}', + * 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": [] + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -140092,7 +146554,10 @@ export namespace compute_alpha { * * // Example response * // { - * // "permissions": [] + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -140108,57 +146573,53 @@ export namespace compute_alpha { * @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$Licenses$Testiampermissions, + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Licenses$Testiampermissions, + setIamPolicy( + params?: Params$Resource$Networkattachments$Setiampolicy, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, + ): Promise>; + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Licenses$Testiampermissions, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkattachments$Setiampolicy, + callback: BodyResponseCallback ): void; - testIamPermissions( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Licenses$Testiampermissions - | BodyResponseCallback + | Params$Resource$Networkattachments$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Licenses$Testiampermissions; + {}) as Params$Resource$Networkattachments$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Testiampermissions; + params = {} as Params$Resource$Networkattachments$Setiampolicy; options = {}; } @@ -140173,7 +146634,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenses/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -140181,25 +146642,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates a License resource in the specified project. - * *Caution* This resource is intended - * for use only by third-party partners who are creatingCloud Marketplace - * images. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -140223,6 +146681,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -140231,55 +146690,20 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.licenses.update({ - * // The license name for this request. - * license: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkAttachments.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // update_mask indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', + * // 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 * // { - * // "allowedReplacementLicenses": [], - * // "appendableToDisk": false, - * // "chargesUseFee": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "id": "my_id", - * // "incompatibleLicenses": [], - * // "kind": "my_kind", - * // "licenseCode": "my_licenseCode", - * // "minimumRetention": {}, - * // "multiTenantOnly": false, - * // "name": "my_name", - * // "osLicense": false, - * // "params": {}, - * // "removableFromDisk": false, - * // "requiredCoattachedLicenses": [], - * // "resourceRequirements": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "soleTenantOnly": false, - * // "transferable": false, - * // "updateTimestamp": "my_updateTimestamp" + * // "permissions": [] * // } * }, * }); @@ -140287,34 +146711,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -140330,52 +146727,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - update( - params: Params$Resource$Licenses$Update, + testIamPermissions( + params: Params$Resource$Networkattachments$Testiampermissions, options: StreamMethodOptions ): Promise>; - update( - params?: Params$Resource$Licenses$Update, + testIamPermissions( + params?: Params$Resource$Networkattachments$Testiampermissions, options?: MethodOptions - ): Promise>; - update( - params: Params$Resource$Licenses$Update, + ): Promise>; + testIamPermissions( + params: Params$Resource$Networkattachments$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Licenses$Update, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Networkattachments$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - update( - params: Params$Resource$Licenses$Update, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Networkattachments$Testiampermissions, + callback: BodyResponseCallback ): void; - update(callback: BodyResponseCallback): void; - update( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Licenses$Update - | BodyResponseCallback + | Params$Resource$Networkattachments$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Licenses$Update; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkattachments$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Licenses$Update; + params = {} as Params$Resource$Networkattachments$Testiampermissions; options = {}; } @@ -140390,38 +146792,161 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/licenses/{license}' + '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'license'], - pathParams: ['license', 'project'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Licenses$Delete extends StandardParameters { + export interface Params$Resource$Networkattachments$Aggregatedlist extends StandardParameters { /** - * Name of the license resource to delete. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - license?: string; + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Networkattachments$Delete extends StandardParameters { + /** + * Name of the NetworkAttachment resource to delete. + */ + networkAttachment?: string; /** * 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 @@ -140436,20 +146961,25 @@ export namespace compute_alpha { * 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; } - export interface Params$Resource$Licenses$Get extends StandardParameters { + export interface Params$Resource$Networkattachments$Get extends StandardParameters { /** - * Name of the License resource to return. + * Name of the NetworkAttachment resource to return. */ - license?: string; + networkAttachment?: string; /** * Project ID for this request. */ project?: string; + /** + * Name of the region of this request. + */ + region?: string; } - export interface Params$Resource$Licenses$Getiampolicy extends StandardParameters { + export interface Params$Resource$Networkattachments$Getiampolicy extends StandardParameters { /** * Requested IAM Policy version. */ @@ -140458,16 +146988,24 @@ export namespace compute_alpha { * 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$Licenses$Insert extends StandardParameters { + export interface Params$Resource$Networkattachments$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 @@ -140482,15 +147020,16 @@ export namespace compute_alpha { * 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$License; + requestBody?: Schema$NetworkAttachment; } - export interface Params$Resource$Licenses$List extends StandardParameters { + export interface Params$Resource$Networkattachments$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -140548,127 +147087,402 @@ export namespace compute_alpha { * For example, to filter for instances that do not end with name "instance", * you would use `name ne .*instance`. * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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 cannot combine constraints on multiple fields using regular + * expressions. + */ + 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. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Networkattachments$Patch extends StandardParameters { + /** + * Name of the NetworkAttachment resource to patch. + */ + networkAttachment?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region for 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$NetworkAttachment; + } + export interface Params$Resource$Networkattachments$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$Networkattachments$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$Networkedgesecurityservices { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all NetworkEdgeSecurityService resources available to + * the specified project. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.networkEdgeSecurityServices.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Licenses$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Licenses$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. + * @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. */ - resource?: string; + aggregatedList( + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Networkedgesecurityservices$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkedgesecurityservices$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - export interface Params$Resource$Licenses$Update extends StandardParameters { - /** - * The license name for this request. - */ - license?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * update_mask indicates fields to be updated as part of this request. - */ - updateMask?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Networkedgesecurityservices$Aggregatedlist; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$License; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Machineimages { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/aggregated/networkEdgeSecurityServices' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } } /** - * Deletes the specified machine image. Deleting a machine image is permanent - * and cannot be undone. + * Deletes the specified service. * @example * ```js * // Before running the sample: @@ -140700,12 +147514,15 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.delete({ - * // The name of the machine image to delete. - * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEdgeSecurityServices.delete({ + * // Name of the network edge security service to delete. + * networkEdgeSecurityService: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 scoping 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. @@ -140769,31 +147586,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkedgesecurityservices$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Machineimages$Delete, + params?: Params$Resource$Networkedgesecurityservices$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkedgesecurityservices$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkedgesecurityservices$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Machineimages$Delete, + params: Params$Resource$Networkedgesecurityservices$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Machineimages$Delete + | Params$Resource$Networkedgesecurityservices$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -140809,12 +147626,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Delete; + {}) as Params$Resource$Networkedgesecurityservices$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Delete; + params = {} as Params$Resource$Networkedgesecurityservices$Delete; options = {}; } @@ -140829,7 +147646,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/machineImages/{machineImage}' + '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -140837,8 +147654,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'machineImage'], - pathParams: ['machineImage', 'project'], + requiredParams: ['project', 'region', 'networkEdgeSecurityService'], + pathParams: ['networkEdgeSecurityService', 'project', 'region'], context: this.context, }; if (callback) { @@ -140852,7 +147669,7 @@ export namespace compute_alpha { } /** - * Returns the specified machine image. + * Gets a specified NetworkEdgeSecurityService. * @example * ```js * // Before running the sample: @@ -140885,12 +147702,15 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.get({ - * // The name of the machine image. - * machineImage: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEdgeSecurityServices.get({ + * // Name of the network edge security service to get. + * networkEdgeSecurityService: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 scoping this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -140898,26 +147718,14 @@ export namespace compute_alpha { * // { * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "guestFlush": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceProperties": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "savedDisks": [], + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDiskEncryptionKeys": [], - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceProperties": {}, - * // "status": "my_status", - * // "storageLocations": [], - * // "totalStorageBytes": "my_totalStorageBytes" + * // "selfLinkWithId": "my_selfLinkWithId" * // } * } * @@ -140934,52 +147742,56 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Machineimages$Get, + params: Params$Resource$Networkedgesecurityservices$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Machineimages$Get, + params?: Params$Resource$Networkedgesecurityservices$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Machineimages$Get, + params: Params$Resource$Networkedgesecurityservices$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machineimages$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networkedgesecurityservices$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Machineimages$Get, - callback: BodyResponseCallback + params: Params$Resource$Networkedgesecurityservices$Get, + callback: BodyResponseCallback + ): void; + get( + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Machineimages$Get - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Get; + {}) as Params$Resource$Networkedgesecurityservices$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Get; + params = {} as Params$Resource$Networkedgesecurityservices$Get; options = {}; } @@ -140994,7 +147806,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/machineImages/{machineImage}' + '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -141002,23 +147814,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'machineImage'], - pathParams: ['machineImage', 'project'], + requiredParams: ['project', 'region', 'networkEdgeSecurityService'], + pathParams: ['networkEdgeSecurityService', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Creates a new service in the specified project using the data included in + * the request. * @example * ```js * // Before running the sample: @@ -141042,7 +147854,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -141051,23 +147862,78 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.networkEdgeSecurityServices.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 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}', + * // Name of the region scoping 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). + * requestId: 'placeholder-value', + * // If true, the request will not be committed. + * validateOnly: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -141083,53 +147949,53 @@ export namespace compute_alpha { * @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$Machineimages$Getiampolicy, + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Machineimages$Getiampolicy, + insert( + params?: Params$Resource$Networkedgesecurityservices$Insert, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, + ): Promise>; + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Machineimages$Getiampolicy, - callback: BodyResponseCallback + insert( + params: Params$Resource$Networkedgesecurityservices$Insert, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Machineimages$Getiampolicy - | BodyResponseCallback + | Params$Resource$Networkedgesecurityservices$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Getiampolicy; + {}) as Params$Resource$Networkedgesecurityservices$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Getiampolicy; + params = {} as Params$Resource$Networkedgesecurityservices$Insert; options = {}; } @@ -141144,34 +148010,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/machineImages/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a machine image in the specified project using the - * data that is included in the request. If you are creating a new machine - * image to update an existing instance, your new machine image should use the - * same network or, if applicable, the same subnetwork as the original - * instance. + * Patches the specified policy with the data included in the request. * @example * ```js * // Before running the sample: @@ -141203,10 +148065,17 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.insert({ + * const res = await compute.networkEdgeSecurityServices.patch({ + * // Name of the network edge security service to update. + * networkEdgeSecurityService: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * paths: '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 scoping 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. @@ -141221,8 +148090,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Required. Source instance that is used to create the machine image from. - * sourceInstance: 'placeholder-value', + * // Indicates fields to be updated as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { @@ -141230,26 +148099,14 @@ export namespace compute_alpha { * // { * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "guestFlush": false, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "instanceProperties": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "machineImageEncryptionKey": {}, * // "name": "my_name", - * // "params": {}, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "savedDisks": [], + * // "region": "my_region", + * // "securityPolicy": "my_securityPolicy", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "sourceDiskEncryptionKeys": [], - * // "sourceInstance": "my_sourceInstance", - * // "sourceInstanceProperties": {}, - * // "status": "my_status", - * // "storageLocations": [], - * // "totalStorageBytes": "my_totalStorageBytes" + * // "selfLinkWithId": "my_selfLinkWithId" * // } * }, * }); @@ -141300,32 +148157,32 @@ export namespace compute_alpha { * @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$Machineimages$Insert, + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Machineimages$Insert, + patch( + params?: Params$Resource$Networkedgesecurityservices$Patch, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Machineimages$Insert, + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Machineimages$Insert, + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Machineimages$Insert, + patch( + params: Params$Resource$Networkedgesecurityservices$Patch, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Machineimages$Insert + | Params$Resource$Networkedgesecurityservices$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -141341,12 +148198,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Insert; + {}) as Params$Resource$Networkedgesecurityservices$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Insert; + params = {} as Params$Resource$Networkedgesecurityservices$Patch; options = {}; } @@ -141360,16 +148217,17 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/machineImages' + rootUrl + + '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'networkEdgeSecurityService'], + pathParams: ['networkEdgeSecurityService', 'project', 'region'], context: this.context, }; if (callback) { @@ -141381,10 +148239,261 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Networkedgesecurityservices$Aggregatedlist extends StandardParameters { /** - * Retrieves a list of machine images that are contained within - * the specified project. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Networkedgesecurityservices$Delete extends StandardParameters { + /** + * Name of the network edge security service to delete. + */ + networkEdgeSecurityService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; + } + export interface Params$Resource$Networkedgesecurityservices$Get extends StandardParameters { + /** + * Name of the network edge security service to get. + */ + networkEdgeSecurityService?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping this request. + */ + region?: string; + } + export interface Params$Resource$Networkedgesecurityservices$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; + /** + * If true, the request will not be committed. + */ + validateOnly?: boolean; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEdgeSecurityService; + } + export interface Params$Resource$Networkedgesecurityservices$Patch extends StandardParameters { + /** + * Name of the network edge security service to update. + */ + networkEdgeSecurityService?: string; + /** + * + */ + paths?: string[]; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region scoping 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). + */ + requestId?: string; + /** + * Indicates fields to be updated as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEdgeSecurityService; + } + + export class Resource$Networkendpointgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of network endpoint groups and sorts them by zone. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -141417,7 +148526,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.list({ + * const res = await compute.networkEndpointGroups.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -141477,6 +148586,14 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -141509,17 +148626,227 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "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$Networkendpointgroups$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Networkendpointgroups$Aggregatedlist, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Networkendpointgroups$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkendpointgroups$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Networkendpointgroups$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Networkendpointgroups$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkendpointgroups$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkendpointgroups$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/alpha/projects/{project}/aggregated/networkEndpointGroups' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Attach a list of network endpoints to the specified network endpoint group. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.networkEndpointGroups.attachNetworkEndpoints({ + * // The name of the network endpoint group where you are attaching network + * // endpoints to. It should comply with RFC1035. + * networkEndpointGroup: '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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "networkEndpoints": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -141535,53 +148862,56 @@ export namespace compute_alpha { * @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$Machineimages$List, + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Machineimages$List, + attachNetworkEndpoints( + params?: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Machineimages$List, + ): Promise>; + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Machineimages$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Machineimages$List, - callback: BodyResponseCallback + attachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + attachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + attachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Machineimages$List - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Attachnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$List; + {}) as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$List; + params = + {} as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; options = {}; } @@ -141595,31 +148925,34 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/machineImages' + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Deletes the specified network endpoint group. The network endpoints in the + * NEG and the VM instances they belong to are not terminated when the NEG is + * deleted. Note that the NEG cannot be deleted if there are backend services + * referencing it. * @example * ```js * // Before running the sample: @@ -141651,31 +148984,63 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.setIamPolicy({ + * const res = await compute.networkEndpointGroups.delete({ + * // The name of the network endpoint group to delete. It should comply with + * // RFC1035. + * networkEndpointGroup: '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 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": {} - * // } - * }, + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -141691,53 +149056,53 @@ export namespace compute_alpha { * @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$Machineimages$Setiampolicy, + delete( + params: Params$Resource$Networkendpointgroups$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Machineimages$Setiampolicy, + delete( + params?: Params$Resource$Networkendpointgroups$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Networkendpointgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networkendpointgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Machineimages$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networkendpointgroups$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Machineimages$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Setiampolicy; + {}) as Params$Resource$Networkendpointgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Setiampolicy; + params = {} as Params$Resource$Networkendpointgroups$Delete; options = {}; } @@ -141752,31 +149117,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/machineImages/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the labels on a machine image. To learn more about labels, read theLabeling - * Resources documentation. + * Detach a list of network endpoints from the specified network endpoint + * group. * @example * ```js * // Before running the sample: @@ -141808,19 +149173,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.setLabels({ + * const res = await compute.networkEndpointGroups.detachNetworkEndpoints({ + * // The name of the network endpoint group where you are removing network + * // endpoints. It should comply with RFC1035. + * networkEndpointGroup: '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 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}', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {} + * // "networkEndpoints": [] * // } * }, * }); @@ -141871,32 +149253,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setLabels( - params: Params$Resource$Machineimages$Setlabels, + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions ): Promise>; - setLabels( - params?: Params$Resource$Machineimages$Setlabels, + detachNetworkEndpoints( + params?: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options?: MethodOptions ): Promise>; - setLabels( - params: Params$Resource$Machineimages$Setlabels, + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Machineimages$Setlabels, + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setLabels( - params: Params$Resource$Machineimages$Setlabels, + detachNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, callback: BodyResponseCallback ): void; - setLabels(callback: BodyResponseCallback): void; - setLabels( + detachNetworkEndpoints( + callback: BodyResponseCallback + ): void; + detachNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Machineimages$Setlabels + | Params$Resource$Networkendpointgroups$Detachnetworkendpoints | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -141912,12 +149296,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Setlabels; + {}) as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Setlabels; + params = + {} as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; options = {}; } @@ -141932,7 +149317,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/machineImages/{resource}/setLabels' + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -141940,8 +149325,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -141955,7 +149340,7 @@ export namespace compute_alpha { } /** - * Returns permissions that a caller has on the specified resource. + * Returns the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -141988,26 +149373,43 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineImages.testIamPermissions({ + * const res = await compute.networkEndpointGroups.get({ + * // The name of the network endpoint group. It should comply with RFC1035. + * networkEndpointGroup: '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 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": [] - * // } - * }, + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "loadBalancer": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serverlessDeployment": {}, + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "type": "my_type", + * // "zone": "my_zone" * // } * } * @@ -142023,57 +149425,55 @@ export namespace compute_alpha { * @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$Machineimages$Testiampermissions, + get( + params: Params$Resource$Networkendpointgroups$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Machineimages$Testiampermissions, + get( + params?: Params$Resource$Networkendpointgroups$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Networkendpointgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, + get( + params: Params$Resource$Networkendpointgroups$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Machineimages$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Networkendpointgroups$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Machineimages$Testiampermissions - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machineimages$Testiampermissions; + {}) as Params$Resource$Networkendpointgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machineimages$Testiampermissions; + params = {} as Params$Resource$Networkendpointgroups$Get; options = {}; } @@ -142088,271 +149488,45 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/machineImages/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Machineimages$Delete extends StandardParameters { - /** - * The name of the machine image to delete. - */ - machineImage?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - } - export interface Params$Resource$Machineimages$Get extends StandardParameters { - /** - * The name of the machine image. - */ - machineImage?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Machineimages$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Machineimages$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * Required. Source instance that is used to create the machine image from. - */ - sourceInstance?: string; /** - * Request body metadata - */ - requestBody?: Schema$MachineImage; - } - export interface Params$Resource$Machineimages$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * Creates a network endpoint group in the specified project using the + * parameters that are included in the request. * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Machineimages$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Machineimages$Setlabels extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetLabelsRequest; - } - export interface Params$Resource$Machineimages$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Machinetypes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Retrieves an aggregated list of machine types. + * Note: Use the following APIs to manage network endpoint groups: * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * - + * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity + * NEGs): zonal + * API + * - + * To manage NEGs with regional scope (such as regional internet NEGs, + * serverless NEGs, Private Service Connect NEGs): regional + * API + * - + * To manage NEGs with global scope (such as global internet NEGs):global + * API * @example * ```js * // Before running the sample: @@ -142376,7 +149550,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -142385,121 +149558,91 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.networkEndpointGroups.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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone where + * // you want to create the network endpoint group. It should comply with + * // RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "annotations": {}, + * // "appEngine": {}, + * // "cloudFunction": {}, + * // "cloudRun": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "defaultPort": 0, + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "loadBalancer": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "networkEndpointType": "my_networkEndpointType", + * // "pscData": {}, + * // "pscTargetService": "my_pscTargetService", + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serverlessDeployment": {}, + * // "size": 0, + * // "subnetwork": "my_subnetwork", + * // "type": "my_type", + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": {}, + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -142515,57 +149658,53 @@ export namespace compute_alpha { * @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$Machinetypes$Aggregatedlist, + insert( + params: Params$Resource$Networkendpointgroups$Insert, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Machinetypes$Aggregatedlist, + insert( + params?: Params$Resource$Networkendpointgroups$Insert, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, + ): Promise>; + insert( + params: Params$Resource$Networkendpointgroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Machinetypes$Aggregatedlist, - callback: BodyResponseCallback + insert( + params: Params$Resource$Networkendpointgroups$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + insert( + params: Params$Resource$Networkendpointgroups$Insert, + callback: BodyResponseCallback ): void; - aggregatedList( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Machinetypes$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machinetypes$Aggregatedlist; + {}) as Params$Resource$Networkendpointgroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$Aggregatedlist; + params = {} as Params$Resource$Networkendpointgroups$Insert; options = {}; } @@ -142580,30 +149719,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/machineTypes' + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified machine type. + * Retrieves the list of network endpoint groups that are located in the + * specified project and zone. * @example * ```js * // Before running the sample: @@ -142636,36 +149776,112 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.get({ - * // Name of the machine type to return. - * machineType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkEndpointGroups.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // The name of the zone for this request. - * zone: '[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. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The name of thezone + * // where the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "accelerators": [], - * // "architecture": "my_architecture", - * // "bundledLocalSsds": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, - * // "description": "my_description", - * // "guestCpus": 0, * // "id": "my_id", - * // "isSharedCpu": false, + * // "items": [], * // "kind": "my_kind", - * // "maximumPersistentDisks": 0, - * // "maximumPersistentDisksSizeGb": "my_maximumPersistentDisksSizeGb", - * // "memoryMb": 0, - * // "name": "my_name", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -142681,52 +149897,55 @@ export namespace compute_alpha { * @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$Machinetypes$Get, + list( + params: Params$Resource$Networkendpointgroups$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Machinetypes$Get, + list( + params?: Params$Resource$Networkendpointgroups$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Machinetypes$Get, + ): Promise>; + list( + params: Params$Resource$Networkendpointgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Machinetypes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Networkendpointgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Machinetypes$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Networkendpointgroups$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Machinetypes$Get - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Machinetypes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Networkendpointgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$Get; + params = {} as Params$Resource$Networkendpointgroups$List; options = {}; } @@ -142741,7 +149960,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/machineTypes/{machineType}' + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -142749,23 +149968,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'machineType'], - pathParams: ['machineType', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of machine types available to the specified - * project. + * Lists the network endpoints in the specified network endpoint group. * @example * ```js * // Before running the sample: @@ -142798,7 +150016,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.machineTypes.list({ + * const res = await compute.networkEndpointGroups.listNetworkEndpoints({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -142864,6 +150082,9 @@ export namespace compute_alpha { * // the next page of results in subsequent list requests. Acceptable values are * // `0` to `500`, inclusive. (Default: `500`) * maxResults: 'placeholder-value', + * // The name of the network endpoint group from which you want to generate a + * // list of included network endpoints. It should comply with RFC1035. + * networkEndpointGroup: 'placeholder-value', * // Sorts list results by a certain order. By default, results * // are returned in alphanumerical order based on the resource name. * // @@ -142890,8 +150111,18 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone where + * // the network endpoint group is located. It should comply with RFC1035. + * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "endpointFilters": [], + * // "healthStatus": "my_healthStatus" + * // } + * }, * }); * console.log(res.data); * @@ -142901,7 +150132,6 @@ export namespace compute_alpha { * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", * // "warning": {} * // } * } @@ -142918,53 +150148,62 @@ export namespace compute_alpha { * @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$Machinetypes$List, + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Machinetypes$List, + listNetworkEndpoints( + params?: Params$Resource$Networkendpointgroups$Listnetworkendpoints, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Machinetypes$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Machinetypes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Machinetypes$List, - callback: BodyResponseCallback + listNetworkEndpoints( + params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + listNetworkEndpoints( + callback: BodyResponseCallback + ): void; + listNetworkEndpoints( paramsOrCallback?: - | Params$Resource$Machinetypes$List - | BodyResponseCallback + | Params$Resource$Networkendpointgroups$Listnetworkendpoints + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Machinetypes$List; + {}) as Params$Resource$Networkendpointgroups$Listnetworkendpoints; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Machinetypes$List; + params = + {} as Params$Resource$Networkendpointgroups$Listnetworkendpoints; options = {}; } @@ -142979,30 +150218,190 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/machineTypes' + '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'zone', 'networkEndpointGroup'], + pathParams: ['networkEndpointGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.networkEndpointGroups.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])?))', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // 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$Networkendpointgroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Networkendpointgroups$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Networkendpointgroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Networkendpointgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Networkendpointgroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Networkendpointgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkendpointgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkendpointgroups$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/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); } } } - export interface Params$Resource$Machinetypes$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -143121,21 +150520,161 @@ export namespace compute_alpha { */ serviceProjectNumber?: string; } - export interface Params$Resource$Machinetypes$Get extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Attachnetworkendpoints extends StandardParameters { /** - * Name of the machine type to return. + * The name of the network endpoint group where you are attaching network + * endpoints to. It should comply with RFC1035. */ - machineType?: string; + networkEndpointGroup?: string; /** * Project ID for this request. */ project?: string; /** - * The name of the zone for this request. + * 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). + */ + requestId?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. */ zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroupsAttachEndpointsRequest; } - export interface Params$Resource$Machinetypes$List extends StandardParameters { + export interface Params$Resource$Networkendpointgroups$Delete extends StandardParameters { + /** + * The name of the network endpoint group to delete. It should comply with + * RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Networkendpointgroups$Detachnetworkendpoints extends StandardParameters { + /** + * The name of the network endpoint group where you are removing network + * endpoints. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroupsDetachEndpointsRequest; + } + export interface Params$Resource$Networkendpointgroups$Get extends StandardParameters { + /** + * The name of the network endpoint group. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; + } + export interface Params$Resource$Networkendpointgroups$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + /** + * The name of the zone where + * you want to create the network endpoint group. It should comply with + * RFC1035. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroup; + } + export interface Params$Resource$Networkendpointgroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -143239,275 +150778,158 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * The name of the zone for this request. + * The name of thezone + * where the network endpoint group is located. It should comply with RFC1035. */ zone?: string; } - - export class Resource$Networkattachments { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - + export interface Params$Resource$Networkendpointgroups$Listnetworkendpoints extends StandardParameters { /** - * Retrieves the list of all NetworkAttachment resources, - * regional and global, available to the specified project. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * For example, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * 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', - * ], - * }); + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * 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 onresource labels. * - * // Do the magic - * const res = await compute.networkAttachments.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', - * }); - * console.log(res.data); + * 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) + * ``` * - * // Example response - * // { - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} - * // } - * } + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` * - * ``` + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. * - * @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. + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, - options: StreamMethodOptions - ): Promise>; - aggregatedList( - params?: Params$Resource$Networkattachments$Aggregatedlist, - options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Networkattachments$Aggregatedlist, - callback: BodyResponseCallback - ): void; - aggregatedList( - callback: BodyResponseCallback - ): void; - aggregatedList( - paramsOrCallback?: - | Params$Resource$Networkattachments$Aggregatedlist - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Aggregatedlist; - let options = (optionsOrCallback || {}) as MethodOptions; + 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; + /** + * The name of the network endpoint group from which you want to generate a + * list of included network endpoints. It should comply with RFC1035. + */ + networkEndpointGroup?: string; + /** + * 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone where + * the network endpoint group is located. It should comply with RFC1035. + */ + zone?: string; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Aggregatedlist; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$NetworkEndpointGroupsListEndpointsRequest; + } + export interface Params$Resource$Networkendpointgroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/aggregated/networkAttachments' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + export class Resource$Networkfirewallpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Deletes the specified NetworkAttachment in the given scope + * Inserts an association for the specified firewall policy. * @example * ```js * // Before running the sample: @@ -143539,14 +150961,21 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.delete({ - * // Name of the NetworkAttachment resource to delete. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkFirewallPolicies.addAssociation({ + * // Name of the firewall policy associated with the target network to swap + * // association with. This field is mutually exclusive with + * // 'replace_existing_association'. + * associatedPolicyToBeReplaced: + * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?', + * // Indicates whether or not to replace it if an association of the attachment + * // already exists. This is false by default, in which case an error will be + * // returned if an association already exists. + * replaceExistingAssociation: '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. @@ -143560,8 +150989,20 @@ export namespace compute_alpha { * // 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 + * // { + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "priority": 0, + * // "shortName": "my_shortName" + * // } + * }, * }); * console.log(res.data); * @@ -143610,213 +151051,53 @@ export namespace compute_alpha { * @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$Networkattachments$Delete, + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networkattachments$Delete, + addAssociation( + params?: Params$Resource$Networkfirewallpolicies$Addassociation, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Networkattachments$Delete, + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkattachments$Delete, + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkattachments$Delete, + addAssociation( + params: Params$Resource$Networkfirewallpolicies$Addassociation, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + addAssociation(callback: BodyResponseCallback): void; + addAssociation( paramsOrCallback?: - | Params$Resource$Networkattachments$Delete - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: + | Params$Resource$Networkfirewallpolicies$Addassociation | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Delete; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$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/alpha/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the specified NetworkAttachment 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.networkAttachments.get({ - * // Name of the NetworkAttachment resource to return. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] - * // } - * } - * - * 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$Networkattachments$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Networkattachments$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkattachments$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkattachments$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkattachments$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Networkattachments$Get - | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Get; + {}) as Params$Resource$Networkfirewallpolicies$Addassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Get; + params = {} as Params$Resource$Networkfirewallpolicies$Addassociation; options = {}; } @@ -143831,31 +151112,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/addAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Inserts a packet mirroring rule into a firewall policy. * @example * ```js * // Before running the sample: @@ -143879,7 +151159,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -143888,25 +151167,89 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.addPacketMirroringRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * maxPriority: 'placeholder-value', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * minPriority: '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}', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -143922,53 +151265,56 @@ export namespace compute_alpha { * @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$Networkattachments$Getiampolicy, + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Networkattachments$Getiampolicy, + addPacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, + ): Promise>; + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkattachments$Getiampolicy, - callback: BodyResponseCallback + addPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + addPacketMirroringRule( + callback: BodyResponseCallback + ): void; + addPacketMirroringRule( paramsOrCallback?: - | Params$Resource$Networkattachments$Getiampolicy - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Getiampolicy; + {}) as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Getiampolicy; + params = + {} as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; options = {}; } @@ -143983,31 +151329,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/addPacketMirroringRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a NetworkAttachment in the specified project in the given scope - * using the parameters that are included in the request. + * Inserts a rule into a firewall policy. * @example * ```js * // Before running the sample: @@ -144039,12 +151384,18 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.insert({ + * const res = await compute.networkFirewallPolicies.addRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * maxPriority: 'placeholder-value', + * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * // This field is exclusive with rule.priority. + * minPriority: '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])?', * // 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. @@ -144058,28 +151409,29 @@ export namespace compute_alpha { * // 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 * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", - * // "creationTimestamp": "my_creationTimestamp", + * // "action": "my_action", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false * // } * }, * }); @@ -144130,32 +151482,32 @@ export namespace compute_alpha { * @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$Networkattachments$Insert, + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Networkattachments$Insert, + addRule( + params?: Params$Resource$Networkfirewallpolicies$Addrule, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Networkattachments$Insert, + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkattachments$Insert, + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkattachments$Insert, + addRule( + params: Params$Resource$Networkfirewallpolicies$Addrule, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + addRule(callback: BodyResponseCallback): void; + addRule( paramsOrCallback?: - | Params$Resource$Networkattachments$Insert + | Params$Resource$Networkfirewallpolicies$Addrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -144171,12 +151523,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Insert; + {}) as Params$Resource$Networkfirewallpolicies$Addrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Insert; + params = {} as Params$Resource$Networkfirewallpolicies$Addrule; options = {}; } @@ -144191,7 +151543,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkAttachments' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/addRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -144199,8 +151551,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -144214,7 +151566,12 @@ export namespace compute_alpha { } /** - * Lists the NetworkAttachments for a project in the given scope. + * Retrieves an aggregated list of network firewall policies, listing network + * firewall policies from all applicable scopes (global and regional) and + * grouping the results per scope. + * + * To prevent failure, it is recommended that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -144247,7 +151604,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.list({ + * const res = await compute.networkFirewallPolicies.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -144307,6 +151664,14 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -144332,8 +151697,6 @@ export namespace compute_alpha { * // 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. * // @@ -144341,16 +151704,20 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -144367,55 +151734,61 @@ export namespace compute_alpha { * @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$Networkattachments$List, + aggregatedList( + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Networkattachments$List, + aggregatedList( + params?: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Networkattachments$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + aggregatedList( + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkattachments$List, + aggregatedList( + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkattachments$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Networkattachments$List - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$List; + {}) as Params$Resource$Networkfirewallpolicies$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$List; + params = {} as Params$Resource$Networkfirewallpolicies$Aggregatedlist; options = {}; } @@ -144430,7 +151803,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkAttachments' + '/compute/alpha/projects/{project}/aggregated/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -144438,25 +151811,24 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Patches the specified NetworkAttachment resource with the data included in - * the request. This method supports PATCH - * semantics and usesJSON merge - * patch format and processing rules. + * Copies rules to the specified firewall policy. * @example * ```js * // Before running the sample: @@ -144488,14 +151860,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.patch({ - * // Name of the NetworkAttachment resource to patch. - * networkAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkFirewallPolicies.cloneRules({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 for 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. @@ -144509,30 +151879,9 @@ export namespace compute_alpha { * // 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 - * // { - * // "connectionEndpoints": [], - * // "connectionPreference": "my_connectionPreference", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "network": "my_network", - * // "producerAcceptLists": [], - * // "producerRejectLists": [], - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] - * // } - * }, + * // The firewall policy from which to copy rules. + * sourceFirewallPolicy: 'placeholder-value', * }); * console.log(res.data); * @@ -144581,32 +151930,32 @@ export namespace compute_alpha { * @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$Networkattachments$Patch, + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Networkattachments$Patch, + cloneRules( + params?: Params$Resource$Networkfirewallpolicies$Clonerules, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Networkattachments$Patch, + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkattachments$Patch, + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkattachments$Patch, + cloneRules( + params: Params$Resource$Networkfirewallpolicies$Clonerules, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + cloneRules(callback: BodyResponseCallback): void; + cloneRules( paramsOrCallback?: - | Params$Resource$Networkattachments$Patch + | Params$Resource$Networkfirewallpolicies$Clonerules | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -144622,12 +151971,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Patch; + {}) as Params$Resource$Networkfirewallpolicies$Clonerules; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Patch; + params = {} as Params$Resource$Networkfirewallpolicies$Clonerules; options = {}; } @@ -144642,16 +151991,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{networkAttachment}' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/cloneRules' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkAttachment'], - pathParams: ['networkAttachment', 'project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -144665,8 +152014,7 @@ export namespace compute_alpha { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Deletes the specified policy. * @example * ```js * // Before running the sample: @@ -144698,33 +152046,59 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.setIamPolicy({ + * const res = await compute.networkFirewallPolicies.delete({ + * // Name of the firewall policy to delete. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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": {} - * // } - * }, + * // 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -144740,53 +152114,53 @@ export namespace compute_alpha { * @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$Networkattachments$Setiampolicy, + delete( + params: Params$Resource$Networkfirewallpolicies$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Networkattachments$Setiampolicy, + delete( + params?: Params$Resource$Networkfirewallpolicies$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Networkfirewallpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networkfirewallpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkattachments$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networkfirewallpolicies$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Networkattachments$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Setiampolicy; + {}) as Params$Resource$Networkfirewallpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$Setiampolicy; + params = {} as Params$Resource$Networkfirewallpolicies$Delete; options = {}; } @@ -144801,30 +152175,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkAttachments/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Returns the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -144857,540 +152231,137 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkAttachments.testIamPermissions({ + * const res = await compute.networkFirewallPolicies.get({ + * // Name of the firewall policy to get. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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": [] + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policySource": "my_policySource", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "rolloutOperation": {}, + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName", + * // "vpcNetworkScope": "my_vpcNetworkScope" * // } * } * * 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$Networkattachments$Testiampermissions, - options: StreamMethodOptions - ): Promise>; - testIamPermissions( - params?: Params$Resource$Networkattachments$Testiampermissions, - options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Networkattachments$Testiampermissions, - callback: BodyResponseCallback - ): void; - testIamPermissions( - callback: BodyResponseCallback - ): void; - testIamPermissions( - paramsOrCallback?: - | Params$Resource$Networkattachments$Testiampermissions - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkattachments$Testiampermissions; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkattachments$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/alpha/projects/{project}/regions/{region}/networkAttachments/{resource}/testIamPermissions' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - 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$Networkattachments$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Networkattachments$Delete extends StandardParameters { - /** - * Name of the NetworkAttachment resource to delete. - */ - networkAttachment?: string; - /** - * 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; - } - export interface Params$Resource$Networkattachments$Get extends StandardParameters { - /** - * Name of the NetworkAttachment resource to return. - */ - networkAttachment?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region of this request. - */ - region?: string; - } - export interface Params$Resource$Networkattachments$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$Networkattachments$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$NetworkAttachment; - } - export interface Params$Resource$Networkattachments$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Networkattachments$Patch extends StandardParameters { - /** - * Name of the NetworkAttachment resource to patch. - */ - networkAttachment?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region for 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. + * throw e; + * }); * - * 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$NetworkAttachment; - } - export interface Params$Resource$Networkattachments$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. + * ``` + * + * @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. */ - resource?: string; + get( + params: Params$Resource$Networkfirewallpolicies$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Networkfirewallpolicies$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Networkfirewallpolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Networkfirewallpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Networkfirewallpolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Networkattachments$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; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Get; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Networkedgesecurityservices { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves the list of all NetworkEdgeSecurityService resources available to - * the specified project. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Gets an association with the specified name. * @example * ```js * // Before running the sample: @@ -145423,122 +152394,25 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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. + * const res = await compute.networkFirewallPolicies.getAssociation({ + * // Name of the firewall policy to which the queried association belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The name of the association to get from the firewall policy. + * name: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "etag": "my_etag", - * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "priority": 0, + * // "shortName": "my_shortName" * // } * } * @@ -145554,62 +152428,57 @@ export namespace compute_alpha { * @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$Networkedgesecurityservices$Aggregatedlist, + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + getAssociation( + params?: Params$Resource$Networkfirewallpolicies$Getassociation, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + ): Promise>; + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkedgesecurityservices$Aggregatedlist, - callback: BodyResponseCallback + getAssociation( + params: Params$Resource$Networkfirewallpolicies$Getassociation, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + getAssociation( + callback: BodyResponseCallback ): void; - aggregatedList( + getAssociation( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Getassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Aggregatedlist; + {}) as Params$Resource$Networkfirewallpolicies$Getassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkedgesecurityservices$Aggregatedlist; + params = {} as Params$Resource$Networkfirewallpolicies$Getassociation; options = {}; } @@ -145624,7 +152493,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/networkEdgeSecurityServices' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/getAssociation' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -145632,24 +152501,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Deletes the specified service. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -145673,6 +152541,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -145681,62 +152550,23 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.delete({ - * // Name of the network edge security service to delete. - * networkEdgeSecurityService: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkFirewallPolicies.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])?))', - * // Name of the region scoping 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). - * requestId: 'placeholder-value', + * // 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 * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -145752,53 +152582,53 @@ export namespace compute_alpha { * @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$Networkedgesecurityservices$Delete, + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networkedgesecurityservices$Delete, + getIamPolicy( + params?: Params$Resource$Networkfirewallpolicies$Getiampolicy, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Networkedgesecurityservices$Delete, + ): Promise>; + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkedgesecurityservices$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkedgesecurityservices$Delete, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Delete - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Delete; + {}) as Params$Resource$Networkfirewallpolicies$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Delete; + params = {} as Params$Resource$Networkfirewallpolicies$Getiampolicy; options = {}; } @@ -145813,30 +152643,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' + '/compute/alpha/projects/{project}/global/firewallPolicies/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkEdgeSecurityService'], - pathParams: ['networkEdgeSecurityService', 'project', 'region'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a specified NetworkEdgeSecurityService. + * Gets a packet mirroring rule of the specified priority. * @example * ```js * // Before running the sample: @@ -145869,30 +152699,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.get({ - * // Name of the network edge security service to get. - * networkEdgeSecurityService: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networkFirewallPolicies.getPacketMirroringRule({ + * // Name of the firewall policy to which the queried rule belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to get from the firewall policy. + * priority: '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 scoping this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "creationTimestamp": "my_creationTimestamp", + * // "action": "my_action", * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, * // "kind": "my_kind", - * // "name": "my_name", - * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false * // } * } * @@ -145908,57 +152744,56 @@ export namespace compute_alpha { * @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$Networkedgesecurityservices$Get, + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Networkedgesecurityservices$Get, + getPacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkedgesecurityservices$Get, + ): Promise>; + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkedgesecurityservices$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkedgesecurityservices$Get, - callback: BodyResponseCallback + getPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + getPacketMirroringRule( + callback: BodyResponseCallback ): void; - get( + getPacketMirroringRule( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Get - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Get; + {}) as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Get; + params = + {} as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; options = {}; } @@ -145973,7 +152808,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/getPacketMirroringRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -145981,23 +152816,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region', 'networkEdgeSecurityService'], - pathParams: ['networkEdgeSecurityService', 'project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new service in the specified project using the data included in - * the request. + * Gets a rule of the specified priority. * @example * ```js * // Before running the sample: @@ -146021,6 +152855,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -146029,78 +152864,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.insert({ + * const res = await compute.networkFirewallPolicies.getRule({ + * // Name of the firewall policy to which the queried rule belongs. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to get from the firewall policy. + * priority: '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 scoping 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). - * requestId: 'placeholder-value', - * // If true, the request will not be committed. - * validateOnly: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", + * // "action": "my_action", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false * // } * } * @@ -146116,53 +152909,53 @@ export namespace compute_alpha { * @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$Networkedgesecurityservices$Insert, + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Networkedgesecurityservices$Insert, + getRule( + params?: Params$Resource$Networkfirewallpolicies$Getrule, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, + ): Promise>; + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkedgesecurityservices$Insert, - callback: BodyResponseCallback + getRule( + params: Params$Resource$Networkfirewallpolicies$Getrule, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + getRule(callback: BodyResponseCallback): void; + getRule( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Insert - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Getrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Insert; + {}) as Params$Resource$Networkfirewallpolicies$Getrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Insert; + params = {} as Params$Resource$Networkfirewallpolicies$Getrule; options = {}; } @@ -146177,30 +152970,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/getRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified policy with the data included in the request. + * Creates a new policy in the specified project using the data included in + * the request. * @example * ```js * // Before running the sample: @@ -146232,17 +153026,10 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEdgeSecurityServices.patch({ - * // Name of the network edge security service to update. - * networkEdgeSecurityService: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * - * paths: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.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 scoping 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. @@ -146257,23 +153044,31 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Indicates fields to be updated as part of this request. - * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { + * // "associations": [], * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", + * // "displayName": "my_displayName", * // "fingerprint": "my_fingerprint", * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policySource": "my_policySource", + * // "policyType": "my_policyType", * // "region": "my_region", - * // "securityPolicy": "my_securityPolicy", + * // "rolloutOperation": {}, + * // "ruleTupleCount": 0, + * // "rules": [], * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName", + * // "vpcNetworkScope": "my_vpcNetworkScope" * // } * }, * }); @@ -146324,32 +153119,32 @@ export namespace compute_alpha { * @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$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params?: Params$Resource$Networkfirewallpolicies$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkedgesecurityservices$Patch, + insert( + params: Params$Resource$Networkfirewallpolicies$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Networkedgesecurityservices$Patch + | Params$Resource$Networkfirewallpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -146365,12 +153160,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkedgesecurityservices$Patch; + {}) as Params$Resource$Networkfirewallpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkedgesecurityservices$Patch; + params = {} as Params$Resource$Networkfirewallpolicies$Insert; options = {}; } @@ -146385,16 +153180,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/networkEdgeSecurityServices/{networkEdgeSecurityService}' + '/compute/alpha/projects/{project}/global/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'networkEdgeSecurityService'], - pathParams: ['networkEdgeSecurityService', 'project', 'region'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { @@ -146406,261 +153201,9 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Networkedgesecurityservices$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Networkedgesecurityservices$Delete extends StandardParameters { - /** - * Name of the network edge security service to delete. - */ - networkEdgeSecurityService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - } - export interface Params$Resource$Networkedgesecurityservices$Get extends StandardParameters { - /** - * Name of the network edge security service to get. - */ - networkEdgeSecurityService?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping this request. - */ - region?: string; - } - export interface Params$Resource$Networkedgesecurityservices$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - /** - * If true, the request will not be committed. - */ - validateOnly?: boolean; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkEdgeSecurityService; - } - export interface Params$Resource$Networkedgesecurityservices$Patch extends StandardParameters { - /** - * Name of the network edge security service to update. - */ - networkEdgeSecurityService?: string; - /** - * - */ - paths?: string[]; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name of the region scoping 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). - */ - requestId?: string; - /** - * Indicates fields to be updated as part of this request. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworkEdgeSecurityService; - } - - export class Resource$Networkendpointgroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Retrieves the list of network endpoint groups and sorts them by zone. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Lists all the policies that have been configured for the specified project. * @example * ```js * // Before running the sample: @@ -146693,7 +153236,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.aggregatedList({ + * const res = await compute.networkFirewallPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -146748,19 +153291,11 @@ export namespace compute_alpha { * // The literal value must match the entire field. * // * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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 @@ -146793,20 +153328,15 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -146823,61 +153353,53 @@ export namespace compute_alpha { * @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$Networkendpointgroups$Aggregatedlist, + list( + params: Params$Resource$Networkfirewallpolicies$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Networkendpointgroups$Aggregatedlist, + list( + params?: Params$Resource$Networkfirewallpolicies$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Networkfirewallpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Networkendpointgroups$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Networkfirewallpolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + params: Params$Resource$Networkfirewallpolicies$List, + callback: BodyResponseCallback ): void; - aggregatedList( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Aggregatedlist; + {}) as Params$Resource$Networkfirewallpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Aggregatedlist; + params = {} as Params$Resource$Networkfirewallpolicies$List; options = {}; } @@ -146892,7 +153414,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/networkEndpointGroups' + '/compute/alpha/projects/{project}/global/firewallPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -146905,19 +153427,17 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Attach a list of network endpoints to the specified network endpoint group. + * Patches the specified policy with the data included in the request. * @example * ```js * // Before running the sample: @@ -146949,10 +153469,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.attachNetworkEndpoints({ - * // The name of the network endpoint group where you are attaching network - * // endpoints to. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patch({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -146970,15 +153489,31 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "associations": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "packetMirroringRules": [], + * // "parent": "my_parent", + * // "policySource": "my_policySource", + * // "policyType": "my_policyType", + * // "region": "my_region", + * // "rolloutOperation": {}, + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName", + * // "vpcNetworkScope": "my_vpcNetworkScope" * // } * }, * }); @@ -147029,34 +153564,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, options: StreamMethodOptions ): Promise>; - attachNetworkEndpoints( - params?: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params?: Params$Resource$Networkfirewallpolicies$Patch, options?: MethodOptions ): Promise>; - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Attachnetworkendpoints, - callback: BodyResponseCallback - ): void; - attachNetworkEndpoints( + patch( + params: Params$Resource$Networkfirewallpolicies$Patch, callback: BodyResponseCallback ): void; - attachNetworkEndpoints( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Attachnetworkendpoints + | Params$Resource$Networkfirewallpolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -147072,13 +153605,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; + {}) as Params$Resource$Networkfirewallpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkendpointgroups$Attachnetworkendpoints; + params = {} as Params$Resource$Networkfirewallpolicies$Patch; options = {}; } @@ -147093,16 +153625,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -147116,10 +153648,7 @@ export namespace compute_alpha { } /** - * Deletes the specified network endpoint group. The network endpoints in the - * NEG and the VM instances they belong to are not terminated when the NEG is - * deleted. Note that the NEG cannot be deleted if there are backend services - * referencing it. + * Updates an association for the specified network firewall policy. * @example * ```js * // Before running the sample: @@ -147151,10 +153680,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.delete({ - * // The name of the network endpoint group to delete. It should comply with - * // RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patchAssociation({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -147172,9 +153700,19 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachmentTarget": "my_attachmentTarget", + * // "displayName": "my_displayName", + * // "firewallPolicyId": "my_firewallPolicyId", + * // "name": "my_name", + * // "priority": 0, + * // "shortName": "my_shortName" + * // } + * }, * }); * console.log(res.data); * @@ -147223,32 +153761,32 @@ export namespace compute_alpha { * @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$Networkendpointgroups$Delete, + patchAssociation( + params: Params$Resource$Networkfirewallpolicies$Patchassociation, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networkendpointgroups$Delete, + patchAssociation( + params?: Params$Resource$Networkfirewallpolicies$Patchassociation, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchAssociation( + params: Params$Resource$Networkfirewallpolicies$Patchassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchAssociation( + params: Params$Resource$Networkfirewallpolicies$Patchassociation, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkendpointgroups$Delete, + patchAssociation( + params: Params$Resource$Networkfirewallpolicies$Patchassociation, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patchAssociation(callback: BodyResponseCallback): void; + patchAssociation( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Delete + | Params$Resource$Networkfirewallpolicies$Patchassociation | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -147264,12 +153802,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Delete; + {}) as Params$Resource$Networkfirewallpolicies$Patchassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Delete; + params = {} as Params$Resource$Networkfirewallpolicies$Patchassociation; options = {}; } @@ -147284,16 +153822,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -147307,8 +153845,7 @@ export namespace compute_alpha { } /** - * Detach a list of network endpoints from the specified network endpoint - * group. + * Patches a packet mirroring rule of the specified priority. * @example * ```js * // Before running the sample: @@ -147340,10 +153877,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.detachNetworkEndpoints({ - * // The name of the network endpoint group where you are removing network - * // endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patchPacketMirroringRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to patch. + * priority: '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])?))', @@ -147361,15 +153899,28 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkEndpoints": [] + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false * // } * }, * }); @@ -147420,34 +153971,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options: StreamMethodOptions ): Promise>; - detachNetworkEndpoints( - params?: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchPacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options?: MethodOptions ): Promise>; - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Detachnetworkendpoints, + patchPacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, callback: BodyResponseCallback ): void; - detachNetworkEndpoints( + patchPacketMirroringRule( callback: BodyResponseCallback ): void; - detachNetworkEndpoints( + patchPacketMirroringRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Detachnetworkendpoints + | Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -147463,13 +154014,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; + {}) as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Networkendpointgroups$Detachnetworkendpoints; + {} as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; options = {}; } @@ -147484,7 +154035,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchPacketMirroringRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -147492,8 +154043,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -147507,7 +154058,7 @@ export namespace compute_alpha { } /** - * Returns the specified network endpoint group. + * Patches a rule of the specified priority. * @example * ```js * // Before running the sample: @@ -147531,7 +154082,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -147540,42 +154090,84 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.get({ - * // The name of the network endpoint group. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', + * const res = await compute.networkFirewallPolicies.patchRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to patch. + * priority: '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 zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: '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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "disabled": false, + * // "enableLogging": false, + * // "kind": "my_kind", + * // "match": {}, + * // "priority": 0, + * // "ruleName": "my_ruleName", + * // "ruleTupleCount": 0, + * // "securityProfileGroup": "my_securityProfileGroup", + * // "targetForwardingRules": [], + * // "targetResources": [], + * // "targetSecureTags": [], + * // "targetServiceAccounts": [], + * // "targetType": "my_targetType", + * // "tlsInspect": false + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "loadBalancer": {}, * // "name": "my_name", - * // "network": "my_network", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serverlessDeployment": {}, - * // "size": 0, - * // "subnetwork": "my_subnetwork", - * // "type": "my_type", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -147592,55 +154184,53 @@ export namespace compute_alpha { * @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$Networkendpointgroups$Get, + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Networkendpointgroups$Get, + patchRule( + params?: Params$Resource$Networkfirewallpolicies$Patchrule, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkendpointgroups$Get, + ): Promise>; + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkendpointgroups$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Networkendpointgroups$Get, - callback: BodyResponseCallback + patchRule( + params: Params$Resource$Networkfirewallpolicies$Patchrule, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patchRule(callback: BodyResponseCallback): void; + patchRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Get - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Patchrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Get; + {}) as Params$Resource$Networkfirewallpolicies$Patchrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Get; + params = {} as Params$Resource$Networkfirewallpolicies$Patchrule; options = {}; } @@ -147655,45 +154245,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a network endpoint group in the specified project using the - * parameters that are included in the request. - * - * Note: Use the following APIs to manage network endpoint groups: - * - * - - * To manage NEGs with zonal scope (such as zonal NEGs, hybrid connectivity - * NEGs): zonal - * API - * - - * To manage NEGs with regional scope (such as regional internet NEGs, - * serverless NEGs, Private Service Connect NEGs): regional - * API - * - - * To manage NEGs with global scope (such as global internet NEGs):global - * API + * Removes an association for the specified firewall policy. * @example * ```js * // Before running the sample: @@ -147725,7 +154300,11 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.insert({ + * const res = await compute.networkFirewallPolicies.removeAssociation({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name for the attachment that will be removed. + * name: '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])?))', @@ -147743,40 +154322,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone where - * // you want to create the network endpoint group. It should comply with - * // RFC1035. - * zone: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "annotations": {}, - * // "appEngine": {}, - * // "cloudFunction": {}, - * // "cloudRun": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "defaultPort": 0, - * // "description": "my_description", - * // "id": "my_id", - * // "kind": "my_kind", - * // "loadBalancer": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "networkEndpointType": "my_networkEndpointType", - * // "pscData": {}, - * // "pscTargetService": "my_pscTargetService", - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serverlessDeployment": {}, - * // "size": 0, - * // "subnetwork": "my_subnetwork", - * // "type": "my_type", - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * @@ -147825,32 +154370,32 @@ export namespace compute_alpha { * @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$Networkendpointgroups$Insert, + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Networkendpointgroups$Insert, + removeAssociation( + params?: Params$Resource$Networkfirewallpolicies$Removeassociation, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networkendpointgroups$Insert, + removeAssociation( + params: Params$Resource$Networkfirewallpolicies$Removeassociation, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + removeAssociation(callback: BodyResponseCallback): void; + removeAssociation( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Insert + | Params$Resource$Networkfirewallpolicies$Removeassociation | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -147866,12 +154411,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Insert; + {}) as Params$Resource$Networkfirewallpolicies$Removeassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Insert; + params = + {} as Params$Resource$Networkfirewallpolicies$Removeassociation; options = {}; } @@ -147886,7 +154432,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeAssociation' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -147894,8 +154440,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { @@ -147909,8 +154455,7 @@ export namespace compute_alpha { } /** - * Retrieves the list of network endpoint groups that are located in the - * specified project and zone. + * Deletes a packet mirroring rule of the specified priority. * @example * ```js * // Before running the sample: @@ -147934,7 +154479,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -147943,112 +154487,61 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.networkFirewallPolicies.removePacketMirroringRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to remove from the firewall policy. + * priority: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of thezone - * // where the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -148064,55 +154557,56 @@ export namespace compute_alpha { * @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$Networkendpointgroups$List, + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Networkendpointgroups$List, + removePacketMirroringRule( + params?: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Networkendpointgroups$List, + ): Promise>; + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkendpointgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networkendpointgroups$List, - callback: BodyResponseCallback + removePacketMirroringRule( + params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + removePacketMirroringRule( + callback: BodyResponseCallback + ): void; + removePacketMirroringRule( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$List - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$List; + {}) as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$List; + params = + {} as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; options = {}; } @@ -148127,30 +154621,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups' + '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/removePacketMirroringRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the network endpoints in the specified network endpoint group. + * Deletes a rule of the specified priority. * @example * ```js * // Before running the sample: @@ -148174,7 +154668,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -148183,111 +154676,207 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.listNetworkEndpoints({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // The name of the network endpoint group from which you want to generate a - * // list of included network endpoints. It should comply with RFC1035. - * networkEndpointGroup: 'placeholder-value', - * // Sorts list results by a certain order. By default, results - * // are returned in alphanumerical order based on the resource name. + * const res = await compute.networkFirewallPolicies.removeRule({ + * // Name of the firewall policy to update. + * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // The priority of the rule to remove from the firewall policy. + * priority: '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])?))', + * // 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. * // - * // 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. + * // 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. * // - * // 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', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, + options: StreamMethodOptions + ): Promise>; + removeRule( + params?: Params$Resource$Networkfirewallpolicies$Removerule, + options?: MethodOptions + ): Promise>; + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeRule( + params: Params$Resource$Networkfirewallpolicies$Removerule, + callback: BodyResponseCallback + ): void; + removeRule(callback: BodyResponseCallback): void; + removeRule( + paramsOrCallback?: + | Params$Resource$Networkfirewallpolicies$Removerule + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Networkfirewallpolicies$Removerule; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Networkfirewallpolicies$Removerule; + 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}/global/firewallPolicies/{firewallPolicy}/removeRule' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project', 'firewallPolicy'], + pathParams: ['firewallPolicy', 'project'], + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.networkFirewallPolicies.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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The name of the zone where - * // the network endpoint group is located. It should comply with RFC1035. - * zone: 'placeholder-value', + * // 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 * // { - * // "endpointFilters": [], - * // "healthStatus": "my_healthStatus" + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -148295,11 +154884,10 @@ export namespace compute_alpha { * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -148315,62 +154903,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; - listNetworkEndpoints( - params?: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + setIamPolicy( + params?: Params$Resource$Networkfirewallpolicies$Setiampolicy, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, + ): Promise>; + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listNetworkEndpoints( - params: Params$Resource$Networkendpointgroups$Listnetworkendpoints, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + callback: BodyResponseCallback ): void; - listNetworkEndpoints( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Listnetworkendpoints - | BodyResponseCallback + | Params$Resource$Networkfirewallpolicies$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Listnetworkendpoints; + {}) as Params$Resource$Networkfirewallpolicies$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkendpointgroups$Listnetworkendpoints; + params = {} as Params$Resource$Networkfirewallpolicies$Setiampolicy; options = {}; } @@ -148385,7 +154964,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints' + '/compute/alpha/projects/{project}/global/firewallPolicies/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -148393,19 +154972,17 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'networkEndpointGroup'], - pathParams: ['networkEndpointGroup', 'project', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } @@ -148443,14 +155020,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkEndpointGroups.testIamPermissions({ + * const res = await compute.networkFirewallPolicies.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])?))', * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * resource: '[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * * // Request body metadata * requestBody: { @@ -148481,27 +155056,27 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; testIamPermissions( - params?: Params$Resource$Networkendpointgroups$Testiampermissions, + params?: Params$Resource$Networkfirewallpolicies$Testiampermissions, options?: MethodOptions ): Promise>; testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, options: | MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; testIamPermissions( - params: Params$Resource$Networkendpointgroups$Testiampermissions, + params: Params$Resource$Networkfirewallpolicies$Testiampermissions, callback: BodyResponseCallback ): void; testIamPermissions( @@ -148509,7 +155084,7 @@ export namespace compute_alpha { ): void; testIamPermissions( paramsOrCallback?: - | Params$Resource$Networkendpointgroups$Testiampermissions + | Params$Resource$Networkfirewallpolicies$Testiampermissions | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -148525,12 +155100,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkendpointgroups$Testiampermissions; + {}) as Params$Resource$Networkfirewallpolicies$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkendpointgroups$Testiampermissions; + params = + {} as Params$Resource$Networkfirewallpolicies$Testiampermissions; options = {}; } @@ -148545,7 +155121,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/firewallPolicies/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -148553,8 +155129,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'resource'], + pathParams: ['project', 'resource'], context: this.context, }; if (callback) { @@ -148568,7 +155144,132 @@ export namespace compute_alpha { } } - export interface Params$Resource$Networkendpointgroups$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Addassociation extends StandardParameters { + /** + * Name of the firewall policy associated with the target network to swap + * association with. This field is mutually exclusive with + * 'replace_existing_association'. + */ + associatedPolicyToBeReplaced?: string; + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Indicates whether or not to replace it if an association of the attachment + * already exists. This is false by default, in which case an error will be + * returned if an association already exists. + */ + replaceExistingAssociation?: boolean; + /** + * 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyAssociation; + } + export interface Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + maxPriority?: number; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + minPriority?: number; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Networkfirewallpolicies$Addrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + maxPriority?: number; + /** + * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. + * This field is exclusive with rule.priority. + */ + minPriority?: number; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Networkfirewallpolicies$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -148687,12 +155388,11 @@ export namespace compute_alpha { */ serviceProjectNumber?: string; } - export interface Params$Resource$Networkendpointgroups$Attachnetworkendpoints extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Clonerules extends StandardParameters { /** - * The name of the network endpoint group where you are attaching network - * endpoints to. It should comply with RFC1035. + * Name of the firewall policy to update. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** * Project ID for this request. */ @@ -148714,22 +155414,15 @@ export namespace compute_alpha { */ requestId?: string; /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. - */ - zone?: string; - - /** - * Request body metadata + * The firewall policy from which to copy rules. */ - requestBody?: Schema$NetworkEndpointGroupsAttachEndpointsRequest; + sourceFirewallPolicy?: string; } - export interface Params$Resource$Networkendpointgroups$Delete extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Delete extends StandardParameters { /** - * The name of the network endpoint group to delete. It should comply with - * RFC1035. + * Name of the firewall policy to delete. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** * Project ID for this request. */ @@ -148750,65 +155443,74 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Get extends StandardParameters { /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to get. */ - zone?: string; + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Networkendpointgroups$Detachnetworkendpoints extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Getassociation extends StandardParameters { /** - * The name of the network endpoint group where you are removing network - * endpoints. It should comply with RFC1035. + * Name of the firewall policy to which the queried association belongs. */ - networkEndpointGroup?: string; + firewallPolicy?: string; + /** + * The name of the association to get from the firewall policy. + */ + name?: string; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Getiampolicy extends StandardParameters { /** - * 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). + * Requested IAM Policy version. */ - requestId?: string; + optionsRequestedPolicyVersion?: number; /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Project ID for this request. */ - zone?: string; - + project?: string; /** - * Request body metadata + * Name or id of the resource for this request. */ - requestBody?: Schema$NetworkEndpointGroupsDetachEndpointsRequest; + resource?: string; } - export interface Params$Resource$Networkendpointgroups$Get extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule extends StandardParameters { /** - * The name of the network endpoint group. It should comply with RFC1035. + * Name of the firewall policy to which the queried rule belongs. */ - networkEndpointGroup?: string; + firewallPolicy?: string; + /** + * The priority of the rule to get from the firewall policy. + */ + priority?: number; /** * Project ID for this request. */ project?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Getrule extends StandardParameters { /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to which the queried rule belongs. */ - zone?: string; + firewallPolicy?: string; + /** + * The priority of the rule to get from the firewall policy. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: string; } - export interface Params$Resource$Networkendpointgroups$Insert extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -148829,19 +155531,13 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone where - * you want to create the network endpoint group. It should comply with - * RFC1035. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworkEndpointGroup; + requestBody?: Schema$FirewallPolicy; } - export interface Params$Resource$Networkendpointgroups$List extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -148944,132 +155640,230 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + } + export interface Params$Resource$Networkfirewallpolicies$Patch extends StandardParameters { /** - * The name of thezone - * where the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to update. */ - zone?: string; - } - export interface Params$Resource$Networkendpointgroups$Listnetworkendpoints extends StandardParameters { + firewallPolicy?: string; /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. + * Project ID for this request. + */ + project?: 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. * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * 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. * - * 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 onresource labels. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicy; + } + export interface Params$Resource$Networkfirewallpolicies$Patchassociation extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * 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) - * ``` + * 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. * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyAssociation; + } + export interface Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * The priority of the rule to patch. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: 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. * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * 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 literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Networkfirewallpolicies$Patchrule extends StandardParameters { + /** + * Name of the firewall policy to update. + */ + firewallPolicy?: string; + /** + * The priority of the rule to patch. + */ + priority?: number; + /** + * Project ID for this request. + */ + project?: 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, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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. * - * You cannot combine constraints on multiple fields using regular - * expressions. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - filter?: string; + requestId?: 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`) + * Request body metadata */ - maxResults?: number; + requestBody?: Schema$FirewallPolicyRule; + } + export interface Params$Resource$Networkfirewallpolicies$Removeassociation extends StandardParameters { /** - * The name of the network endpoint group from which you want to generate a - * list of included network endpoints. It should comply with RFC1035. + * Name of the firewall policy to update. */ - networkEndpointGroup?: string; + firewallPolicy?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * Name for the attachment that will be removed. + */ + name?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * 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. + * 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. * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - orderBy?: string; + requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Name of the firewall policy to update. */ - pageToken?: string; + firewallPolicy?: string; + /** + * The priority of the rule to remove from the firewall policy. + */ + priority?: number; /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; + } + export interface Params$Resource$Networkfirewallpolicies$Removerule extends StandardParameters { /** - * The name of the zone where - * the network endpoint group is located. It should comply with RFC1035. + * Name of the firewall policy to update. */ - zone?: string; - + firewallPolicy?: string; /** - * Request body metadata + * The priority of the rule to remove from the firewall policy. */ - requestBody?: Schema$NetworkEndpointGroupsListEndpointsRequest; + priority?: number; + /** + * Project ID for this request. + */ + project?: 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). + */ + requestId?: string; } - export interface Params$Resource$Networkendpointgroups$Testiampermissions extends StandardParameters { + export interface Params$Resource$Networkfirewallpolicies$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ @@ -149078,448 +155872,36 @@ export namespace compute_alpha { * Name or id of the resource for this request. */ resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$GlobalSetPolicyRequest; } - - export class Resource$Networkfirewallpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - + export interface Params$Resource$Networkfirewallpolicies$Testiampermissions extends StandardParameters { /** - * Inserts an association for the specified firewall 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.networkFirewallPolicies.addAssociation({ - * // Name of the firewall policy associated with the target network to swap - * // association with. This field is mutually exclusive with - * // 'replace_existing_association'. - * associatedPolicyToBeReplaced: - * '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // Indicates whether or not to replace it if an association of the attachment - * // already exists. This is false by default, in which case an error will be - * // returned if an association already exists. - * replaceExistingAssociation: '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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", - * // "name": "my_name", - * // "priority": 0, - * // "shortName": "my_shortName" - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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. + * Project ID for this request. */ - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - options: StreamMethodOptions - ): Promise>; - addAssociation( - params?: Params$Resource$Networkfirewallpolicies$Addassociation, - options?: MethodOptions - ): Promise>; - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addAssociation( - params: Params$Resource$Networkfirewallpolicies$Addassociation, - callback: BodyResponseCallback - ): void; - addAssociation(callback: BodyResponseCallback): void; - addAssociation( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Addassociation - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Addassociation; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Addassociation; - 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}/global/firewallPolicies/{firewallPolicy}/addAssociation' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + project?: string; /** - * Inserts a packet mirroring rule into a firewall 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.networkFirewallPolicies.addPacketMirroringRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * maxPriority: 'placeholder-value', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * minPriority: '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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "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. + * Name or id of the resource for this request. */ - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options: StreamMethodOptions - ): Promise>; - addPacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options?: MethodOptions - ): Promise>; - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule, - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - callback: BodyResponseCallback - ): void; - addPacketMirroringRule( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule; - options = {}; - } + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/addPacketMirroringRule' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Networkprofiles { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Inserts a rule into a firewall policy. + * Returns the specified network profile. * @example * ```js * // Before running the sample: @@ -149543,6 +155925,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -149551,89 +155934,27 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.addRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * maxPriority: 'placeholder-value', - * // When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * // This field is exclusive with rule.priority. - * minPriority: 'placeholder-value', + * const res = await compute.networkProfiles.get({ + * // Name of the network profile to return. + * networkProfile: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "features": {}, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "location": {}, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "profileType": {}, * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "selfLinkWithId": "my_selfLinkWithId" * // } * } * @@ -149649,53 +155970,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, + get( + params: Params$Resource$Networkprofiles$Get, options: StreamMethodOptions ): Promise>; - addRule( - params?: Params$Resource$Networkfirewallpolicies$Addrule, + get( + params?: Params$Resource$Networkprofiles$Get, options?: MethodOptions - ): Promise>; - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, + ): Promise>; + get( + params: Params$Resource$Networkprofiles$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkprofiles$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Networkfirewallpolicies$Addrule, - callback: BodyResponseCallback + get( + params: Params$Resource$Networkprofiles$Get, + callback: BodyResponseCallback ): void; - addRule(callback: BodyResponseCallback): void; - addRule( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Addrule - | BodyResponseCallback + | Params$Resource$Networkprofiles$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Addrule; + {}) as Params$Resource$Networkprofiles$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Addrule; + params = {} as Params$Resource$Networkprofiles$Get; options = {}; } @@ -149710,35 +156031,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/addRule' + '/compute/alpha/projects/{project}/global/networkProfiles/{networkProfile}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'networkProfile'], + pathParams: ['networkProfile', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves an aggregated list of network firewall policies, listing network - * firewall policies from all applicable scopes (global and regional) and - * grouping the results per scope. - * - * To prevent failure, it is recommended that you set the - * `returnPartialSuccess` parameter to `true`. + * Retrieves a list of network profiles available to the specified + * project. * @example * ```js * // Before running the sample: @@ -149771,7 +156088,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.aggregatedList({ + * const res = await compute.networkProfiles.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -149831,14 +156148,6 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -149871,16 +156180,14 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", - * // "items": {}, + * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", @@ -149901,61 +156208,57 @@ export namespace compute_alpha { * @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$Networkfirewallpolicies$Aggregatedlist, + list( + params: Params$Resource$Networkprofiles$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + list( + params?: Params$Resource$Networkprofiles$List, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + ): Promise>; + list( + params: Params$Resource$Networkprofiles$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, + list( + params: Params$Resource$Networkprofiles$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Networkfirewallpolicies$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Networkprofiles$List, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - aggregatedList( + list( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Networkprofiles$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Aggregatedlist; + {}) as Params$Resource$Networkprofiles$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Aggregatedlist; + params = {} as Params$Resource$Networkprofiles$List; options = {}; } @@ -149970,7 +156273,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/firewallPolicies' + '/compute/alpha/projects/{project}/global/networkProfiles' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -149983,19 +156286,139 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } + } + + export interface Params$Resource$Networkprofiles$Get extends StandardParameters { + /** + * Name of the network profile to return. + */ + networkProfile?: string; + /** + * Project ID for this request. + */ + project?: string; + } + export interface Params$Resource$Networkprofiles$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Networks { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Copies rules to the specified firewall policy. + * Adds a peering to the specified network. * @example * ```js * // Before running the sample: @@ -150027,9 +156450,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.cloneRules({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.addPeering({ + * // Name of the network resource to add peering to. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -150047,8 +156470,19 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The firewall policy from which to copy rules. - * sourceFirewallPolicy: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "autoCreateRoutes": false, + * // "exportCustomRoutes": false, + * // "importCustomRoutes": false, + * // "name": "my_name", + * // "networkPeering": {}, + * // "peerNetwork": "my_peerNetwork" + * // } + * }, * }); * console.log(res.data); * @@ -150097,32 +156531,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, options: StreamMethodOptions ): Promise>; - cloneRules( - params?: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params?: Params$Resource$Networks$Addpeering, options?: MethodOptions ): Promise>; - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cloneRules( - params: Params$Resource$Networkfirewallpolicies$Clonerules, + addPeering( + params: Params$Resource$Networks$Addpeering, callback: BodyResponseCallback ): void; - cloneRules(callback: BodyResponseCallback): void; - cloneRules( + addPeering(callback: BodyResponseCallback): void; + addPeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Clonerules + | Params$Resource$Networks$Addpeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150138,12 +156572,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Clonerules; + {}) as Params$Resource$Networks$Addpeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Clonerules; + params = {} as Params$Resource$Networks$Addpeering; options = {}; } @@ -150158,7 +156592,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/cloneRules' + '/compute/alpha/projects/{project}/global/networks/{network}/addPeering' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -150166,8 +156600,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -150181,7 +156615,9 @@ export namespace compute_alpha { } /** - * Deletes the specified policy. + * Cancel requests to remove a peering from the specified network. Applicable + * only for PeeringConnection with update_strategy=CONSENSUS. Cancels a + * request to remove a peering from the specified network. * @example * ```js * // Before running the sample: @@ -150213,9 +156649,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.delete({ - * // Name of the firewall policy to delete. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.cancelRequestRemovePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -150233,6 +156669,14 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * @@ -150281,32 +156725,34 @@ export namespace compute_alpha { * @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$Networkfirewallpolicies$Delete, + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Networkfirewallpolicies$Delete, + cancelRequestRemovePeering( + params?: Params$Resource$Networks$Cancelrequestremovepeering, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Networkfirewallpolicies$Delete, + cancelRequestRemovePeering( + params: Params$Resource$Networks$Cancelrequestremovepeering, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + cancelRequestRemovePeering( + callback: BodyResponseCallback + ): void; + cancelRequestRemovePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Delete + | Params$Resource$Networks$Cancelrequestremovepeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -150322,12 +156768,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Delete; + {}) as Params$Resource$Networks$Cancelrequestremovepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Delete; + params = {} as Params$Resource$Networks$Cancelrequestremovepeering; options = {}; } @@ -150342,16 +156788,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}' + '/compute/alpha/projects/{project}/global/networks/{network}/cancelRequestRemovePeering' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -150365,7 +156811,7 @@ export namespace compute_alpha { } /** - * Returns the specified network firewall policy. + * Deletes the specified network. * @example * ```js * // Before running the sample: @@ -150389,7 +156835,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -150398,342 +156843,59 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.get({ - * // Name of the firewall policy to get. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.delete({ + * // Name of the network to delete. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "associations": [], + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policySource": "my_policySource", - * // "policyType": "my_policyType", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "rolloutOperation": {}, - * // "ruleTupleCount": 0, - * // "rules": [], * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName", - * // "vpcNetworkScope": "my_vpcNetworkScope" - * // } - * } - * - * 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$Networkfirewallpolicies$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Networkfirewallpolicies$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkfirewallpolicies$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkfirewallpolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkfirewallpolicies$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$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/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Gets an association with the specified name. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.networkFirewallPolicies.getAssociation({ - * // Name of the firewall policy to which the queried association belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The name of the association to get from the firewall policy. - * name: '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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", - * // "name": "my_name", - * // "priority": 0, - * // "shortName": "my_shortName" - * // } - * } - * - * 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. - */ - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, - options: StreamMethodOptions - ): Promise>; - getAssociation( - params?: Params$Resource$Networkfirewallpolicies$Getassociation, - options?: MethodOptions - ): Promise>; - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAssociation( - params: Params$Resource$Networkfirewallpolicies$Getassociation, - callback: BodyResponseCallback - ): void; - getAssociation( - callback: BodyResponseCallback - ): void; - getAssociation( - paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getassociation - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getassociation; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Getassociation; - 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}/global/firewallPolicies/{firewallPolicy}/getAssociation' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], - 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.networkFirewallPolicies.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])?))', - * // 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", - * // "version": 0 + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -150749,53 +156911,52 @@ export namespace compute_alpha { * @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$Networkfirewallpolicies$Getiampolicy, + delete( + params: Params$Resource$Networks$Delete, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Networkfirewallpolicies$Getiampolicy, + delete( + params?: Params$Resource$Networks$Delete, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, + ): Promise>; + delete( + params: Params$Resource$Networks$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networks$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Getiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Networks$Delete, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getiampolicy - | BodyResponseCallback + | Params$Resource$Networks$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getiampolicy; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Getiampolicy; + params = {} as Params$Resource$Networks$Delete; options = {}; } @@ -150810,30 +156971,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/global/networks/{network}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a packet mirroring rule of the specified priority. + * Returns the specified network. * @example * ```js * // Before running the sample: @@ -150866,11 +157027,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.getPacketMirroringRule({ - * // Name of the firewall policy to which the queried rule belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to get from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.get({ + * // Name of the network to return. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -150879,23 +157038,27 @@ export namespace compute_alpha { * * // Example response * // { - * // "action": "my_action", + * // "IPv4Range": "my_IPv4Range", + * // "autoCreateSubnetworks": false, + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, + * // "enableUlaInternalIpv6": false, + * // "firewallPolicy": "my_firewallPolicy", + * // "gatewayIPv4": "my_gatewayIPv4", + * // "id": "my_id", + * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "mtu": 0, + * // "name": "my_name", + * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", + * // "networkProfile": "my_networkProfile", + * // "params": {}, + * // "peerings": [], + * // "region": "my_region", + * // "routingConfig": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * } * @@ -150911,56 +157074,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + get( + params: Params$Resource$Networks$Get, options: StreamMethodOptions ): Promise>; - getPacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + get( + params?: Params$Resource$Networks$Get, options?: MethodOptions - ): Promise>; - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, + ): Promise>; + get( + params: Params$Resource$Networks$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule, - callback: BodyResponseCallback + get( + params: Params$Resource$Networks$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getPacketMirroringRule( - callback: BodyResponseCallback + get( + params: Params$Resource$Networks$Get, + callback: BodyResponseCallback ): void; - getPacketMirroringRule( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule - | BodyResponseCallback + | Params$Resource$Networks$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule; + params = {} as Params$Resource$Networks$Get; options = {}; } @@ -150975,7 +157134,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/getPacketMirroringRule' + '/compute/alpha/projects/{project}/global/networks/{network}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -150983,22 +157142,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets a rule of the specified priority. + * Returns the effective firewalls on a given network. * @example * ```js * // Before running the sample: @@ -151031,11 +157190,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.getRule({ - * // Name of the firewall policy to which the queried rule belongs. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to get from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.getEffectiveFirewalls({ + * // Name of the network for this request. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * // 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])?))', @@ -151044,23 +157201,9 @@ export namespace compute_alpha { * * // Example response * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "firewallPolicys": [], + * // "firewalls": [], + * // "organizationFirewalls": [] * // } * } * @@ -151076,53 +157219,61 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, options: StreamMethodOptions ): Promise>; - getRule( - params?: Params$Resource$Networkfirewallpolicies$Getrule, + getEffectiveFirewalls( + params?: Params$Resource$Networks$Geteffectivefirewalls, options?: MethodOptions - ): Promise>; - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, + ): Promise< + GaxiosResponseWithHTTP2 + >; + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Networkfirewallpolicies$Getrule, - callback: BodyResponseCallback + getEffectiveFirewalls( + params: Params$Resource$Networks$Geteffectivefirewalls, + callback: BodyResponseCallback ): void; - getRule(callback: BodyResponseCallback): void; - getRule( + getEffectiveFirewalls( + callback: BodyResponseCallback + ): void; + getEffectiveFirewalls( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Getrule - | BodyResponseCallback + | Params$Resource$Networks$Geteffectivefirewalls + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Getrule; + {}) as Params$Resource$Networks$Geteffectivefirewalls; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Getrule; + params = {} as Params$Resource$Networks$Geteffectivefirewalls; options = {}; } @@ -151137,7 +157288,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/getRule' + '/compute/alpha/projects/{project}/global/networks/{network}/getEffectiveFirewalls' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -151145,23 +157296,25 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Creates a new policy in the specified project using the data included in - * the request. + * Creates a network in the specified project using the data included + * in the request. * @example * ```js * // Before running the sample: @@ -151193,7 +157346,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.insert({ + * const res = await compute.networks.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])?))', @@ -151216,26 +157369,27 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "associations": [], + * // "IPv4Range": "my_IPv4Range", + * // "autoCreateSubnetworks": false, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", + * // "enableUlaInternalIpv6": false, + * // "firewallPolicy": "my_firewallPolicy", + * // "gatewayIPv4": "my_gatewayIPv4", * // "id": "my_id", + * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", + * // "mtu": 0, * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policySource": "my_policySource", - * // "policyType": "my_policyType", + * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", + * // "networkProfile": "my_networkProfile", + * // "params": {}, + * // "peerings": [], * // "region": "my_region", - * // "rolloutOperation": {}, - * // "ruleTupleCount": 0, - * // "rules": [], + * // "routingConfig": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName", - * // "vpcNetworkScope": "my_vpcNetworkScope" + * // "subnetworks": [] * // } * }, * }); @@ -151287,31 +157441,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, options: StreamMethodOptions ): Promise>; insert( - params?: Params$Resource$Networkfirewallpolicies$Insert, + params?: Params$Resource$Networks$Insert, options?: MethodOptions ): Promise>; insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; insert( - params: Params$Resource$Networkfirewallpolicies$Insert, + params: Params$Resource$Networks$Insert, callback: BodyResponseCallback ): void; insert(callback: BodyResponseCallback): void; insert( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Insert + | Params$Resource$Networks$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -151326,13 +157480,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Insert; + params = {} as Params$Resource$Networks$Insert; options = {}; } @@ -151346,8 +157499,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies' + rootUrl + '/compute/alpha/projects/{project}/global/networks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -151370,7 +157522,7 @@ export namespace compute_alpha { } /** - * Lists all the policies that have been configured for the specified project. + * Retrieves the list of networks available to the specified project. * @example * ```js * // Before running the sample: @@ -151403,7 +157555,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.list({ + * const res = await compute.networks.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -151504,6 +157656,7 @@ export namespace compute_alpha { * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", * // "warning": {} * // } * } @@ -151521,52 +157674,51 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Networkfirewallpolicies$List, + params: Params$Resource$Networks$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Networkfirewallpolicies$List, + params?: Params$Resource$Networks$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Networkfirewallpolicies$List, + params: Params$Resource$Networks$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networkfirewallpolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Networks$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Networkfirewallpolicies$List, - callback: BodyResponseCallback + params: Params$Resource$Networks$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$List - | BodyResponseCallback + | Params$Resource$Networks$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$List; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$List; + params = {} as Params$Resource$Networks$List; options = {}; } @@ -151580,8 +157732,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies' + rootUrl + '/compute/alpha/projects/{project}/global/networks' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -151594,17 +157745,17 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified policy with the data included in the request. + * Lists the internal IP addresses in the specified network. * @example * ```js * // Before running the sample: @@ -151628,6 +157779,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -151636,86 +157788,114 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patch({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.listIpAddresses({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Name of the network for this request. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "associations": [], - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "name": "my_name", - * // "packetMirroringRules": [], - * // "parent": "my_parent", - * // "policySource": "my_policySource", - * // "policyType": "my_policyType", - * // "region": "my_region", - * // "rolloutOperation": {}, - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName", - * // "vpcNetworkScope": "my_vpcNetworkScope" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // (Optional) types filter separate by comma, valid values are: SUBNETWORK, + * // RESERVED, PEER_USED, PEER_RESERVED, REMOTE_USED, REMOTE_RESERVED. + * types: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -151731,53 +157911,55 @@ export namespace compute_alpha { * @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$Networkfirewallpolicies$Patch, + listIpAddresses( + params: Params$Resource$Networks$Listipaddresses, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Networkfirewallpolicies$Patch, + listIpAddresses( + params?: Params$Resource$Networks$Listipaddresses, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, + ): Promise>; + listIpAddresses( + params: Params$Resource$Networks$Listipaddresses, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listIpAddresses( + params: Params$Resource$Networks$Listipaddresses, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Networkfirewallpolicies$Patch, - callback: BodyResponseCallback + listIpAddresses( + params: Params$Resource$Networks$Listipaddresses, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + listIpAddresses( + callback: BodyResponseCallback + ): void; + listIpAddresses( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patch - | BodyResponseCallback + | Params$Resource$Networks$Listipaddresses + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patch; + {}) as Params$Resource$Networks$Listipaddresses; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Patch; + params = {} as Params$Resource$Networks$Listipaddresses; options = {}; } @@ -151792,30 +157974,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}' + '/compute/alpha/projects/{project}/global/networks/{network}/listIpAddresses' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates an association for the specified network firewall policy. + * Lists the internal IP owners in the specified network. * @example * ```js * // Before running the sample: @@ -151839,6 +158021,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -151847,72 +158030,122 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patchAssociation({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.networks.listIpOwners({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * filter: 'placeholder-value', + * // (Optional) IP CIDR range filter, example: "10.128.10.0/30". + * ipCidrRange: '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', + * // Name of the network to return. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // 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', + * // (Optional) Project IDs filter, example: "project-1,project-2". + * ownerProjects: 'placeholder-value', + * // (Optional) Owner types filter, example: "instance,forwardingRule". + * ownerTypes: '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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attachmentTarget": "my_attachmentTarget", - * // "displayName": "my_displayName", - * // "firewallPolicyId": "my_firewallPolicyId", - * // "name": "my_name", - * // "priority": 0, - * // "shortName": "my_shortName" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // (Optional) Subnetwork name filter. + * subnetName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // (Optional) Subnetwork region filter. + * subnetRegion: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -151928,53 +158161,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchAssociation( - params: Params$Resource$Networkfirewallpolicies$Patchassociation, + listIpOwners( + params: Params$Resource$Networks$Listipowners, options: StreamMethodOptions ): Promise>; - patchAssociation( - params?: Params$Resource$Networkfirewallpolicies$Patchassociation, + listIpOwners( + params?: Params$Resource$Networks$Listipowners, options?: MethodOptions - ): Promise>; - patchAssociation( - params: Params$Resource$Networkfirewallpolicies$Patchassociation, + ): Promise>; + listIpOwners( + params: Params$Resource$Networks$Listipowners, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchAssociation( - params: Params$Resource$Networkfirewallpolicies$Patchassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listIpOwners( + params: Params$Resource$Networks$Listipowners, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchAssociation( - params: Params$Resource$Networkfirewallpolicies$Patchassociation, - callback: BodyResponseCallback + listIpOwners( + params: Params$Resource$Networks$Listipowners, + callback: BodyResponseCallback ): void; - patchAssociation(callback: BodyResponseCallback): void; - patchAssociation( + listIpOwners(callback: BodyResponseCallback): void; + listIpOwners( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patchassociation - | BodyResponseCallback + | Params$Resource$Networks$Listipowners + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patchassociation; + {}) as Params$Resource$Networks$Listipowners; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Patchassociation; + params = {} as Params$Resource$Networks$Listipowners; options = {}; } @@ -151989,30 +158222,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchAssociation' + '/compute/alpha/projects/{project}/global/networks/{network}/listIpOwners' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches a packet mirroring rule of the specified priority. + * Lists the peering routes exchanged over peering connection. * @example * ```js * // Before running the sample: @@ -152036,6 +158269,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -152044,85 +158278,118 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patchPacketMirroringRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to patch. - * priority: 'placeholder-value', + * const res = await compute.networks.listPeeringRoutes({ + * // The direction of the exchanged routes. + * direction: 'placeholder-value', + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Name of the network for this request. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // 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', + * // The response will show routes exchanged over the given peering connection. + * peeringName: '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])?))', - * // 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 region of the request. The response will include all subnet routes, + * // static routes and dynamic routes in the region. + * region: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, - * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -152138,56 +158405,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, options: StreamMethodOptions ): Promise>; - patchPacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + listPeeringRoutes( + params?: Params$Resource$Networks$Listpeeringroutes, options?: MethodOptions - ): Promise>; - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, + ): Promise>; + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchPacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule, - callback: BodyResponseCallback + listPeeringRoutes( + params: Params$Resource$Networks$Listpeeringroutes, + callback: BodyResponseCallback ): void; - patchPacketMirroringRule( - callback: BodyResponseCallback + listPeeringRoutes( + callback: BodyResponseCallback ): void; - patchPacketMirroringRule( + listPeeringRoutes( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule - | BodyResponseCallback + | Params$Resource$Networks$Listpeeringroutes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; + {}) as Params$Resource$Networks$Listpeeringroutes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule; + params = {} as Params$Resource$Networks$Listpeeringroutes; options = {}; } @@ -152202,30 +158470,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchPacketMirroringRule' + '/compute/alpha/projects/{project}/global/networks/{network}/listPeeringRoutes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches a rule of the specified priority. + * Patches the specified network with the data included in the request. + * Only routingConfig can be modified. * @example * ```js * // Before running the sample: @@ -152257,11 +158526,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.patchRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to patch. - * priority: 'placeholder-value', + * const res = await compute.networks.patch({ + * // Name of the network to update. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -152284,23 +158551,27 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "action": "my_action", + * // "IPv4Range": "my_IPv4Range", + * // "autoCreateSubnetworks": false, + * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "direction": "my_direction", - * // "disabled": false, - * // "enableLogging": false, + * // "enableUlaInternalIpv6": false, + * // "firewallPolicy": "my_firewallPolicy", + * // "gatewayIPv4": "my_gatewayIPv4", + * // "id": "my_id", + * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "match": {}, - * // "priority": 0, - * // "ruleName": "my_ruleName", - * // "ruleTupleCount": 0, - * // "securityProfileGroup": "my_securityProfileGroup", - * // "targetForwardingRules": [], - * // "targetResources": [], - * // "targetSecureTags": [], - * // "targetServiceAccounts": [], - * // "targetType": "my_targetType", - * // "tlsInspect": false + * // "mtu": 0, + * // "name": "my_name", + * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", + * // "networkProfile": "my_networkProfile", + * // "params": {}, + * // "peerings": [], + * // "region": "my_region", + * // "routingConfig": {}, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "subnetworks": [] * // } * }, * }); @@ -152351,32 +158622,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, + patch( + params: Params$Resource$Networks$Patch, options: StreamMethodOptions ): Promise>; - patchRule( - params?: Params$Resource$Networkfirewallpolicies$Patchrule, + patch( + params?: Params$Resource$Networks$Patch, options?: MethodOptions ): Promise>; - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, + patch( + params: Params$Resource$Networks$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, + patch( + params: Params$Resource$Networks$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Networkfirewallpolicies$Patchrule, + patch( + params: Params$Resource$Networks$Patch, callback: BodyResponseCallback ): void; - patchRule(callback: BodyResponseCallback): void; - patchRule( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Patchrule + | Params$Resource$Networks$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152391,13 +158662,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Patchrule; + let params = (paramsOrCallback || {}) as Params$Resource$Networks$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Patchrule; + params = {} as Params$Resource$Networks$Patch; options = {}; } @@ -152412,16 +158682,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/patchRule' + '/compute/alpha/projects/{project}/global/networks/{network}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -152435,7 +158705,7 @@ export namespace compute_alpha { } /** - * Removes an association for the specified firewall policy. + * Removes a peering from the specified network. * @example * ```js * // Before running the sample: @@ -152467,11 +158737,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.removeAssociation({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // Name for the attachment that will be removed. - * name: 'placeholder-value', + * const res = await compute.networks.removePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -152489,6 +158757,14 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * @@ -152537,32 +158813,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, options: StreamMethodOptions ): Promise>; - removeAssociation( - params?: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params?: Params$Resource$Networks$Removepeering, options?: MethodOptions ): Promise>; - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Networkfirewallpolicies$Removeassociation, + removePeering( + params: Params$Resource$Networks$Removepeering, callback: BodyResponseCallback ): void; - removeAssociation(callback: BodyResponseCallback): void; - removeAssociation( + removePeering(callback: BodyResponseCallback): void; + removePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Removeassociation + | Params$Resource$Networks$Removepeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152578,13 +158854,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Removeassociation; + {}) as Params$Resource$Networks$Removepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Removeassociation; + params = {} as Params$Resource$Networks$Removepeering; options = {}; } @@ -152599,7 +158874,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeAssociation' + '/compute/alpha/projects/{project}/global/networks/{network}/removePeering' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -152607,8 +158882,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -152622,7 +158897,8 @@ export namespace compute_alpha { } /** - * Deletes a packet mirroring rule of the specified priority. + * Requests to remove a peering from the specified network. Applicable only + * for PeeringConnection with update_strategy=CONSENSUS. * @example * ```js * // Before running the sample: @@ -152654,11 +158930,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.removePacketMirroringRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to remove from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.requestRemovePeering({ + * // Name of the network resource to remove peering from. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -152676,6 +158950,14 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "name": "my_name" + * // } + * }, * }); * console.log(res.data); * @@ -152724,34 +159006,34 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, options: StreamMethodOptions ): Promise>; - removePacketMirroringRule( - params?: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params?: Params$Resource$Networks$Requestremovepeering, options?: MethodOptions ): Promise>; - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePacketMirroringRule( - params: Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule, + requestRemovePeering( + params: Params$Resource$Networks$Requestremovepeering, callback: BodyResponseCallback ): void; - removePacketMirroringRule( + requestRemovePeering( callback: BodyResponseCallback ): void; - removePacketMirroringRule( + requestRemovePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule + | Params$Resource$Networks$Requestremovepeering | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152767,13 +159049,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; + {}) as Params$Resource$Networks$Requestremovepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule; + params = {} as Params$Resource$Networks$Requestremovepeering; options = {}; } @@ -152788,7 +159069,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/removePacketMirroringRule' + '/compute/alpha/projects/{project}/global/networks/{network}/requestRemovePeering' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -152796,8 +159077,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -152811,7 +159092,7 @@ export namespace compute_alpha { } /** - * Deletes a rule of the specified priority. + * Switches the network mode from auto subnet mode to custom subnet mode. * @example * ```js * // Before running the sample: @@ -152843,11 +159124,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.removeRule({ - * // Name of the firewall policy to update. - * firewallPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // The priority of the rule to remove from the firewall policy. - * priority: 'placeholder-value', + * const res = await compute.networks.switchToCustomMode({ + * // Name of the network to be updated. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -152913,32 +159192,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, options: StreamMethodOptions ): Promise>; - removeRule( - params?: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params?: Params$Resource$Networks$Switchtocustommode, options?: MethodOptions ): Promise>; - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Networkfirewallpolicies$Removerule, + switchToCustomMode( + params: Params$Resource$Networks$Switchtocustommode, callback: BodyResponseCallback ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( + switchToCustomMode(callback: BodyResponseCallback): void; + switchToCustomMode( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Removerule + | Params$Resource$Networks$Switchtocustommode | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -152954,12 +159233,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Removerule; + {}) as Params$Resource$Networks$Switchtocustommode; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Removerule; + params = {} as Params$Resource$Networks$Switchtocustommode; options = {}; } @@ -152974,7 +159253,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{firewallPolicy}/removeRule' + '/compute/alpha/projects/{project}/global/networks/{network}/switchToCustomMode' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -152982,8 +159261,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'firewallPolicy'], - pathParams: ['firewallPolicy', 'project'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { @@ -152997,8 +159276,7 @@ export namespace compute_alpha { } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -153022,6 +159300,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -153030,7 +159309,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.setIamPolicy({ + * const res = await compute.networks.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])?))', @@ -153041,9 +159320,7 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} + * // "permissions": [] * // } * }, * }); @@ -153051,10 +159328,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "permissions": [] * // } * } * @@ -153070,53 +159344,57 @@ export namespace compute_alpha { * @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$Networkfirewallpolicies$Setiampolicy, + testIamPermissions( + params: Params$Resource$Networks$Testiampermissions, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Networkfirewallpolicies$Setiampolicy, + testIamPermissions( + params?: Params$Resource$Networks$Testiampermissions, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, + ): Promise>; + testIamPermissions( + params: Params$Resource$Networks$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Networks$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Networkfirewallpolicies$Setiampolicy, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Networks$Testiampermissions, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Networks$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Setiampolicy; + {}) as Params$Resource$Networks$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networkfirewallpolicies$Setiampolicy; + params = {} as Params$Resource$Networks$Testiampermissions; options = {}; } @@ -153131,7 +159409,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{resource}/setIamPolicy' + '/compute/alpha/projects/{project}/global/networks/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -153144,17 +159422,19 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * Updates the specified network peering with the data included in the + * request. You can only modify the NetworkPeering.export_custom_routes field + * and the NetworkPeering.import_custom_routes field. * @example * ```js * // Before running the sample: @@ -153178,7 +159458,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -153187,18 +159466,32 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networkFirewallPolicies.testIamPermissions({ + * const res = await compute.networks.updatePeering({ + * // Name of the network resource which the updated peering is belonging to. + * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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}', + * // 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). + * requestId: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "networkPeering": {} * // } * }, * }); @@ -153206,7 +159499,34 @@ export namespace compute_alpha { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -153222,58 +159542,53 @@ export namespace compute_alpha { * @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$Networkfirewallpolicies$Testiampermissions, + updatePeering( + params: Params$Resource$Networks$Updatepeering, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Networkfirewallpolicies$Testiampermissions, + updatePeering( + params?: Params$Resource$Networks$Updatepeering, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, + ): Promise>; + updatePeering( + params: Params$Resource$Networks$Updatepeering, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Networkfirewallpolicies$Testiampermissions, - callback: BodyResponseCallback + updatePeering( + params: Params$Resource$Networks$Updatepeering, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + updatePeering( + params: Params$Resource$Networks$Updatepeering, + callback: BodyResponseCallback ): void; - testIamPermissions( + updatePeering(callback: BodyResponseCallback): void; + updatePeering( paramsOrCallback?: - | Params$Resource$Networkfirewallpolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Networks$Updatepeering + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networkfirewallpolicies$Testiampermissions; + {}) as Params$Resource$Networks$Updatepeering; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Networkfirewallpolicies$Testiampermissions; + params = {} as Params$Resource$Networks$Updatepeering; options = {}; } @@ -153288,50 +159603,38 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/firewallPolicies/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/global/networks/{network}/updatePeering' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'network'], + pathParams: ['network', 'project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Networkfirewallpolicies$Addassociation extends StandardParameters { - /** - * Name of the firewall policy associated with the target network to swap - * association with. This field is mutually exclusive with - * 'replace_existing_association'. - */ - associatedPolicyToBeReplaced?: string; + export interface Params$Resource$Networks$Addpeering extends StandardParameters { /** - * Name of the firewall policy to update. + * Name of the network resource to add peering to. */ - firewallPolicy?: string; + network?: string; /** * Project ID for this request. */ project?: string; - /** - * Indicates whether or not to replace it if an association of the attachment - * already exists. This is false by default, in which case an error will be - * returned if an association already exists. - */ - replaceExistingAssociation?: boolean; /** * 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 @@ -153352,23 +159655,44 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicyAssociation; + requestBody?: Schema$NetworksAddPeeringRequest; } - export interface Params$Resource$Networkfirewallpolicies$Addpacketmirroringrule extends StandardParameters { + export interface Params$Resource$Networks$Cancelrequestremovepeering extends StandardParameters { /** - * Name of the firewall policy to update. + * Name of the network resource to remove peering from. */ - firewallPolicy?: string; + network?: string; /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * Project ID for this request. */ - maxPriority?: number; + project?: string; /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * 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). */ - minPriority?: number; + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworksCancelRequestRemovePeeringRequest; + } + export interface Params$Resource$Networks$Delete extends StandardParameters { + /** + * Name of the network to delete. + */ + network?: string; /** * Project ID for this request. */ @@ -153389,27 +159713,28 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - + } + export interface Params$Resource$Networks$Get extends StandardParameters { /** - * Request body metadata + * Name of the network to return. */ - requestBody?: Schema$FirewallPolicyRule; - } - export interface Params$Resource$Networkfirewallpolicies$Addrule extends StandardParameters { + network?: string; /** - * Name of the firewall policy to update. + * Project ID for this request. */ - firewallPolicy?: string; + project?: string; + } + export interface Params$Resource$Networks$Geteffectivefirewalls extends StandardParameters { /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * Name of the network for this request. */ - maxPriority?: number; + network?: string; /** - * When rule.priority is not specified, auto choose a unused priority betweenminPriority and maxPriority\>. - * This field is exclusive with rule.priority. + * Project ID for this request. */ - minPriority?: number; + project?: string; + } + export interface Params$Resource$Networks$Insert extends StandardParameters { /** * Project ID for this request. */ @@ -153434,9 +159759,9 @@ export namespace compute_alpha { /** * Request body metadata */ - requestBody?: Schema$FirewallPolicyRule; + requestBody?: Schema$Network; } - export interface Params$Resource$Networkfirewallpolicies$Aggregatedlist extends StandardParameters { + export interface Params$Resource$Networks$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -153498,16 +159823,6 @@ export namespace compute_alpha { * expressions. */ 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`, @@ -153549,162 +159864,121 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; } - export interface Params$Resource$Networkfirewallpolicies$Clonerules extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Networks$Listipaddresses extends StandardParameters { /** - * 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. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * For example, consider a situation where you make an initial request and - * the request times out. If you make the request again with the same - * request ID, the server can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The firewall policy from which to copy rules. - */ - sourceFirewallPolicy?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Delete extends StandardParameters { - /** - * Name of the firewall policy to delete. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: 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, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * 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 `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Get extends StandardParameters { - /** - * Name of the firewall policy to get. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getassociation extends StandardParameters { - /** - * Name of the firewall policy to which the queried association belongs. - */ - firewallPolicy?: string; - /** - * The name of the association to get from the firewall policy. - */ - name?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getpacketmirroringrule extends StandardParameters { - /** - * Name of the firewall policy to which the queried rule belongs. - */ - firewallPolicy?: string; - /** - * The priority of the rule to get from the firewall policy. + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - priority?: number; + filter?: string; /** - * Project ID for this request. + * 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`) */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Getrule extends StandardParameters { + maxResults?: number; /** - * Name of the firewall policy to which the queried rule belongs. + * Name of the network for this request. */ - firewallPolicy?: string; + network?: string; /** - * The priority of the rule to get from the firewall policy. + * 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. */ - priority?: number; + orderBy?: string; /** - * Project ID for this request. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - project?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Insert extends StandardParameters { + pageToken?: string; /** * Project ID for this request. */ project?: 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. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - requestId?: string; - + returnPartialSuccess?: boolean; /** - * Request body metadata + * (Optional) types filter separate by comma, valid values are: SUBNETWORK, + * RESERVED, PEER_USED, PEER_RESERVED, REMOTE_USED, REMOTE_RESERVED. */ - requestBody?: Schema$FirewallPolicy; + types?: string; } - export interface Params$Resource$Networkfirewallpolicies$List extends StandardParameters { + export interface Params$Resource$Networks$Listipowners extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -153766,6 +160040,10 @@ export namespace compute_alpha { * expressions. */ filter?: string; + /** + * (Optional) IP CIDR range filter, example: "10.128.10.0/30". + */ + ipCidrRange?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -153774,6 +160052,10 @@ export namespace compute_alpha { * `0` to `500`, inclusive. (Default: `500`) */ maxResults?: number; + /** + * Name of the network to return. + */ + network?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -153788,6 +160070,14 @@ export namespace compute_alpha { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * (Optional) Project IDs filter, example: "project-1,project-2". + */ + ownerProjects?: string; + /** + * (Optional) Owner types filter, example: "instance,forwardingRule". + */ + ownerTypes?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get @@ -153807,178 +160097,141 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - } - export interface Params$Resource$Networkfirewallpolicies$Patch extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * Project ID for this request. - */ - project?: 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). + * (Optional) Subnetwork name filter. */ - requestId?: string; - + subnetName?: string; /** - * Request body metadata + * (Optional) Subnetwork region filter. */ - requestBody?: Schema$FirewallPolicy; + subnetRegion?: string; } - export interface Params$Resource$Networkfirewallpolicies$Patchassociation extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; + export interface Params$Resource$Networks$Listpeeringroutes extends StandardParameters { /** - * Project ID for this request. + * The direction of the exchanged routes. */ - project?: string; + direction?: 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. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. * - * For example, consider a situation where you make an initial request and - * the request times out. If you make the request again with the same - * request ID, the server can check if original operation with the same - * request ID was received, and if so, will ignore the second request. This - * prevents clients from accidentally creating duplicate commitments. + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The operator + * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicyAssociation; - } - export interface Params$Resource$Networkfirewallpolicies$Patchpacketmirroringrule extends StandardParameters { - /** - * Name of the firewall policy to update. - */ - firewallPolicy?: string; - /** - * The priority of the rule to patch. - */ - priority?: number; - /** - * Project ID for this request. - */ - project?: 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, if you are filtering Compute Engine instances, you can + * exclude instances named `example-instance` by specifying + * `name != example-instance`. * - * 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 `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallPolicyRule; - } - export interface Params$Resource$Networkfirewallpolicies$Patchrule extends StandardParameters { - /** - * Name of the firewall policy to update. + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. */ - firewallPolicy?: string; + filter?: string; /** - * The priority of the rule to patch. + * 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`) */ - priority?: number; + maxResults?: number; /** - * Project ID for this request. + * Name of the network for this request. */ - project?: string; + network?: 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. + * Sorts list results by a certain order. By default, results + * are returned in alphanumerical order based on the resource name. * - * 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. + * 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. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata + * Currently, only sorting by `name` or + * `creationTimestamp desc` is supported. */ - requestBody?: Schema$FirewallPolicyRule; - } - export interface Params$Resource$Networkfirewallpolicies$Removeassociation extends StandardParameters { + orderBy?: string; /** - * Name of the firewall policy to update. + * Specifies a page token to use. Set `pageToken` to the + * `nextPageToken` returned by a previous list request to get + * the next page of results. */ - firewallPolicy?: string; + pageToken?: string; /** - * Name for the attachment that will be removed. + * The response will show routes exchanged over the given peering connection. */ - name?: string; + peeringName?: string; /** * Project ID for this request. */ project?: 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). + * The region of the request. The response will include all subnet routes, + * static routes and dynamic routes in the region. */ - requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Removepacketmirroringrule extends StandardParameters { + region?: string; /** - * Name of the firewall policy to update. + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. */ - firewallPolicy?: string; + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Networks$Patch extends StandardParameters { /** - * The priority of the rule to remove from the firewall policy. + * Name of the network to update. */ - priority?: number; + network?: string; /** * Project ID for this request. */ @@ -153999,16 +160252,17 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Removerule extends StandardParameters { + /** - * Name of the firewall policy to update. + * Request body metadata */ - firewallPolicy?: string; + requestBody?: Schema$Network; + } + export interface Params$Resource$Networks$Removepeering extends StandardParameters { /** - * The priority of the rule to remove from the firewall policy. + * Name of the network resource to remove peering from. */ - priority?: number; + network?: string; /** * Project ID for this request. */ @@ -154028,564 +160282,125 @@ export namespace compute_alpha { * a valid UUID with the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ - requestId?: string; - } - export interface Params$Resource$Networkfirewallpolicies$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GlobalSetPolicyRequest; - } - export interface Params$Resource$Networkfirewallpolicies$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } - - export class Resource$Networkprofiles { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Returns the specified network profile. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.networkProfiles.get({ - * // Name of the network profile to return. - * networkProfile: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "features": {}, - * // "id": "my_id", - * // "kind": "my_kind", - * // "location": {}, - * // "name": "my_name", - * // "profileType": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId" - * // } - * } - * - * 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$Networkprofiles$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Networkprofiles$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networkprofiles$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkprofiles$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networkprofiles$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Networkprofiles$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkprofiles$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkprofiles$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/alpha/projects/{project}/global/networkProfiles/{networkProfile}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'networkProfile'], - pathParams: ['networkProfile', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Retrieves a list of network profiles 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.networkProfiles.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "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. - */ - list( - params: Params$Resource$Networkprofiles$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Networkprofiles$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Networkprofiles$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Networkprofiles$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Networkprofiles$List, - callback: BodyResponseCallback - ): void; - list( - callback: BodyResponseCallback - ): void; - list( - paramsOrCallback?: - | Params$Resource$Networkprofiles$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networkprofiles$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networkprofiles$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/alpha/projects/{project}/global/networkProfiles' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project'], - pathParams: ['project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - } - - export interface Params$Resource$Networkprofiles$Get extends StandardParameters { - /** - * Name of the network profile to return. - */ - networkProfile?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networkprofiles$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworksRemovePeeringRequest; + } + export interface Params$Resource$Networks$Requestremovepeering extends StandardParameters { + /** + * Name of the network resource to remove peering from. + */ + network?: string; + /** + * Project ID for this request. + */ + project?: 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, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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. * - * You cannot combine constraints on multiple fields using regular - * expressions. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - filter?: string; + requestId?: 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`) + * Request body metadata */ - maxResults?: number; + requestBody?: Schema$NetworksRequestRemovePeeringRequest; + } + export interface Params$Resource$Networks$Switchtocustommode extends StandardParameters { /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * Name of the network to be updated. + */ + network?: string; + /** + * Project ID for this request. + */ + project?: 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. * - * 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. + * 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. * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - orderBy?: string; + requestId?: string; + } + export interface Params$Resource$Networks$Testiampermissions extends StandardParameters { /** - * Specifies a page token to use. Set `pageToken` to the - * `nextPageToken` returned by a previous list request to get - * the next page of results. + * Project ID for this request. */ - pageToken?: string; + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export interface Params$Resource$Networks$Updatepeering extends StandardParameters { + /** + * Name of the network resource which the updated peering is belonging to. + */ + network?: string; /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * 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, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NetworksUpdatePeeringRequest; } - export class Resource$Networks { + export class Resource$Nodegroups { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Adds a peering to the specified network. + * Adds specified number of nodes to the node group. * @example * ```js * // Before running the sample: @@ -154617,9 +160432,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.addPeering({ - * // Name of the network resource to add peering to. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.addNodes({ + * // Name of the NodeGroup resource. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -154637,17 +160452,14 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "autoCreateRoutes": false, - * // "exportCustomRoutes": false, - * // "importCustomRoutes": false, - * // "name": "my_name", - * // "networkPeering": {}, - * // "peerNetwork": "my_peerNetwork" + * // "additionalNodeCount": 0 * // } * }, * }); @@ -154698,32 +160510,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addPeering( - params: Params$Resource$Networks$Addpeering, + addNodes( + params: Params$Resource$Nodegroups$Addnodes, options: StreamMethodOptions ): Promise>; - addPeering( - params?: Params$Resource$Networks$Addpeering, + addNodes( + params?: Params$Resource$Nodegroups$Addnodes, options?: MethodOptions ): Promise>; - addPeering( - params: Params$Resource$Networks$Addpeering, + addNodes( + params: Params$Resource$Nodegroups$Addnodes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addPeering( - params: Params$Resource$Networks$Addpeering, + addNodes( + params: Params$Resource$Nodegroups$Addnodes, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addPeering( - params: Params$Resource$Networks$Addpeering, + addNodes( + params: Params$Resource$Nodegroups$Addnodes, callback: BodyResponseCallback ): void; - addPeering(callback: BodyResponseCallback): void; - addPeering( + addNodes(callback: BodyResponseCallback): void; + addNodes( paramsOrCallback?: - | Params$Resource$Networks$Addpeering + | Params$Resource$Nodegroups$Addnodes | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -154739,12 +160551,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Addpeering; + {}) as Params$Resource$Nodegroups$Addnodes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Addpeering; + params = {} as Params$Resource$Nodegroups$Addnodes; options = {}; } @@ -154759,7 +160571,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/addPeering' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -154767,8 +160579,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -154782,9 +160594,11 @@ export namespace compute_alpha { } /** - * Cancel requests to remove a peering from the specified network. Applicable - * only for PeeringConnection with update_strategy=CONSENSUS. Cancels a - * request to remove a peering from the specified network. + * Retrieves an aggregated list of node groups. + * Note: use nodeGroups.listNodes for more details about each group. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -154808,6 +160622,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -154816,67 +160631,121 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.cancelRequestRemovePeering({ - * // Name of the network resource to remove peering from. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', * // 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "name": "my_name" - * // } - * }, + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -154892,55 +160761,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, options: StreamMethodOptions ): Promise>; - cancelRequestRemovePeering( - params?: Params$Resource$Networks$Cancelrequestremovepeering, + aggregatedList( + params?: Params$Resource$Nodegroups$Aggregatedlist, options?: MethodOptions - ): Promise>; - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, + ): Promise>; + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancelRequestRemovePeering( - params: Params$Resource$Networks$Cancelrequestremovepeering, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodegroups$Aggregatedlist, + callback: BodyResponseCallback ): void; - cancelRequestRemovePeering( - callback: BodyResponseCallback + aggregatedList( + callback: BodyResponseCallback ): void; - cancelRequestRemovePeering( + aggregatedList( paramsOrCallback?: - | Params$Resource$Networks$Cancelrequestremovepeering - | BodyResponseCallback + | Params$Resource$Nodegroups$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Cancelrequestremovepeering; + {}) as Params$Resource$Nodegroups$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Cancelrequestremovepeering; + params = {} as Params$Resource$Nodegroups$Aggregatedlist; options = {}; } @@ -154955,30 +160826,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/cancelRequestRemovePeering' + '/compute/alpha/projects/{project}/aggregated/nodeGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified network. + * Deletes the specified NodeGroup resource. * @example * ```js * // Before running the sample: @@ -155010,9 +160881,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.delete({ - * // Name of the network to delete. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.delete({ + * // Name of the NodeGroup resource to delete. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -155030,6 +160901,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -155079,31 +160952,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ delete( - params: Params$Resource$Networks$Delete, + params: Params$Resource$Nodegroups$Delete, options: StreamMethodOptions ): Promise>; delete( - params?: Params$Resource$Networks$Delete, + params?: Params$Resource$Nodegroups$Delete, options?: MethodOptions ): Promise>; delete( - params: Params$Resource$Networks$Delete, + params: Params$Resource$Nodegroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Networks$Delete, + params: Params$Resource$Nodegroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; delete( - params: Params$Resource$Networks$Delete, + params: Params$Resource$Nodegroups$Delete, callback: BodyResponseCallback ): void; delete(callback: BodyResponseCallback): void; delete( paramsOrCallback?: - | Params$Resource$Networks$Delete + | Params$Resource$Nodegroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -155118,12 +160991,13 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Delete; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodegroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Delete; + params = {} as Params$Resource$Nodegroups$Delete; options = {}; } @@ -155138,7 +161012,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'DELETE', apiVersion: '', @@ -155146,8 +161020,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -155161,7 +161035,7 @@ export namespace compute_alpha { } /** - * Returns the specified network. + * Deletes specified nodes from the node group. * @example * ```js * // Before running the sample: @@ -155185,7 +161059,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155194,183 +161067,69 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.get({ - * // Name of the network to return. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.deleteNodes({ + * // Name of the NodeGroup resource whose nodes will be deleted. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "nodes": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "IPv4Range": "my_IPv4Range", - * // "autoCreateSubnetworks": false, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "enableUlaInternalIpv6": false, - * // "firewallPolicy": "my_firewallPolicy", - * // "gatewayIPv4": "my_gatewayIPv4", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "internalIpv6Range": "my_internalIpv6Range", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "mtu": 0, * // "name": "my_name", - * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", - * // "networkProfile": "my_networkProfile", - * // "params": {}, - * // "peerings": [], + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "routingConfig": {}, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] - * // } - * } - * - * 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$Networks$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Networks$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Networks$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networks$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Networks$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Networks$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Networks$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/alpha/projects/{project}/global/networks/{network}' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Returns the effective firewalls on a given network. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.networks.getEffectiveFirewalls({ - * // Name of the network for this request. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // 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])?))', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "firewallPolicys": [], - * // "firewalls": [], - * // "organizationFirewalls": [] + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -155386,61 +161145,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, options: StreamMethodOptions ): Promise>; - getEffectiveFirewalls( - params?: Params$Resource$Networks$Geteffectivefirewalls, + deleteNodes( + params?: Params$Resource$Nodegroups$Deletenodes, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, + ): Promise>; + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getEffectiveFirewalls( - params: Params$Resource$Networks$Geteffectivefirewalls, - callback: BodyResponseCallback + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( - callback: BodyResponseCallback + deleteNodes( + params: Params$Resource$Nodegroups$Deletenodes, + callback: BodyResponseCallback ): void; - getEffectiveFirewalls( + deleteNodes(callback: BodyResponseCallback): void; + deleteNodes( paramsOrCallback?: - | Params$Resource$Networks$Geteffectivefirewalls - | BodyResponseCallback + | Params$Resource$Nodegroups$Deletenodes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Geteffectivefirewalls; + {}) as Params$Resource$Nodegroups$Deletenodes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Geteffectivefirewalls; + params = {} as Params$Resource$Nodegroups$Deletenodes; options = {}; } @@ -155455,33 +161206,33 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/getEffectiveFirewalls' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Creates a network in the specified project using the data included - * in the request. + * Returns the specified NodeGroup. Get a list of available NodeGroups + * by making a list() request. + * Note: the "nodes" field should not be used. Use nodeGroups.listNodes + * instead. * @example * ```js * // Before running the sample: @@ -155505,6 +161256,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155513,84 +161265,36 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.insert({ + * const res = await compute.nodeGroups.get({ + * // Name of the node group to return. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "IPv4Range": "my_IPv4Range", - * // "autoCreateSubnetworks": false, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "enableUlaInternalIpv6": false, - * // "firewallPolicy": "my_firewallPolicy", - * // "gatewayIPv4": "my_gatewayIPv4", - * // "id": "my_id", - * // "internalIpv6Range": "my_internalIpv6Range", - * // "kind": "my_kind", - * // "mtu": 0, - * // "name": "my_name", - * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", - * // "networkProfile": "my_networkProfile", - * // "params": {}, - * // "peerings": [], - * // "region": "my_region", - * // "routingConfig": {}, - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] - * // } - * }, + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", + * // "autoscalingPolicy": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "locationHint": "my_locationHint", + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maintenancePolicy": "my_maintenancePolicy", + * // "maintenanceWindow": {}, * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nodeTemplate": "my_nodeTemplate", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", + * // "shareSettings": {}, + * // "size": 0, * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -155607,52 +161311,52 @@ export namespace compute_alpha { * @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$Networks$Insert, + get( + params: Params$Resource$Nodegroups$Get, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Networks$Insert, + get( + params?: Params$Resource$Nodegroups$Get, options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Networks$Insert, + ): Promise>; + get( + params: Params$Resource$Nodegroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networks$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodegroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Networks$Insert, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodegroups$Get, + callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Networks$Insert - | BodyResponseCallback + | Params$Resource$Nodegroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Insert; + let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Insert; + params = {} as Params$Resource$Nodegroups$Get; options = {}; } @@ -155666,30 +161370,32 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/networks' + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves the list of networks available to the specified project. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -155722,109 +161428,25 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * const res = await compute.nodeGroups.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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "warning": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -155840,52 +161462,53 @@ export namespace compute_alpha { * @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$Networks$List, + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Networks$List, + getIamPolicy( + params?: Params$Resource$Nodegroups$Getiampolicy, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Networks$List, + ): Promise>; + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networks$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Networks$List, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Nodegroups$Getiampolicy, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Networks$List - | BodyResponseCallback + | Params$Resource$Nodegroups$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodegroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$List; + params = {} as Params$Resource$Nodegroups$Getiampolicy; options = {}; } @@ -155899,7 +161522,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/global/networks' + rootUrl + + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -155907,22 +161531,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the internal IP addresses in the specified network. + * Creates a NodeGroup resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -155946,7 +161571,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -155955,114 +161579,86 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.listIpAddresses({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // Name of the network for this request. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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', + * const res = await compute.nodeGroups.insert({ + * // Initial count of nodes in the node group. + * initialNodeCount: '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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. + * // 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, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // (Optional) types filter separate by comma, valid values are: SUBNETWORK, - * // RESERVED, PEER_USED, PEER_RESERVED, REMOTE_USED, REMOTE_RESERVED. - * types: 'placeholder-value', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "autoscalingPolicy": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "locationHint": "my_locationHint", + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maintenancePolicy": "my_maintenancePolicy", + * // "maintenanceWindow": {}, + * // "name": "my_name", + * // "nodeTemplate": "my_nodeTemplate", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shareSettings": {}, + * // "size": 0, + * // "status": "my_status", + * // "zone": "my_zone" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -156078,55 +161674,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listIpAddresses( - params: Params$Resource$Networks$Listipaddresses, + insert( + params: Params$Resource$Nodegroups$Insert, options: StreamMethodOptions ): Promise>; - listIpAddresses( - params?: Params$Resource$Networks$Listipaddresses, + insert( + params?: Params$Resource$Nodegroups$Insert, options?: MethodOptions - ): Promise>; - listIpAddresses( - params: Params$Resource$Networks$Listipaddresses, + ): Promise>; + insert( + params: Params$Resource$Nodegroups$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listIpAddresses( - params: Params$Resource$Networks$Listipaddresses, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listIpAddresses( - params: Params$Resource$Networks$Listipaddresses, - callback: BodyResponseCallback + insert( + params: Params$Resource$Nodegroups$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listIpAddresses( - callback: BodyResponseCallback + insert( + params: Params$Resource$Nodegroups$Insert, + callback: BodyResponseCallback ): void; - listIpAddresses( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Networks$Listipaddresses - | BodyResponseCallback + | Params$Resource$Nodegroups$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Listipaddresses; + {}) as Params$Resource$Nodegroups$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Listipaddresses; + params = {} as Params$Resource$Nodegroups$Insert; options = {}; } @@ -156141,30 +161735,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/listIpAddresses' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'initialNodeCount'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the internal IP owners in the specified network. + * Retrieves a list of node groups available to the specified project. + * Note: use nodeGroups.listNodes for more details about each group. * @example * ```js * // Before running the sample: @@ -156197,7 +161792,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.listIpOwners({ + * const res = await compute.nodeGroups.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -156257,16 +161852,12 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * filter: 'placeholder-value', - * // (Optional) IP CIDR range filter, example: "10.128.10.0/30". - * ipCidrRange: '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', - * // Name of the network to return. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Sorts list results by a certain order. By default, results * // are returned in alphanumerical order based on the resource name. * // @@ -156279,10 +161870,6 @@ export namespace compute_alpha { * // Currently, only sorting by `name` or * // `creationTimestamp desc` is supported. * orderBy: 'placeholder-value', - * // (Optional) Project IDs filter, example: "project-1,project-2". - * ownerProjects: 'placeholder-value', - * // (Optional) Owner types filter, example: "instance,forwardingRule". - * ownerTypes: '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. @@ -156297,10 +161884,8 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // (Optional) Subnetwork name filter. - * subnetName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * // (Optional) Subnetwork region filter. - * subnetRegion: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -156311,7 +161896,6 @@ export namespace compute_alpha { * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "unreachables": [], * // "warning": {} * // } * } @@ -156328,53 +161912,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listIpOwners( - params: Params$Resource$Networks$Listipowners, + list( + params: Params$Resource$Nodegroups$List, options: StreamMethodOptions ): Promise>; - listIpOwners( - params?: Params$Resource$Networks$Listipowners, + list( + params?: Params$Resource$Nodegroups$List, options?: MethodOptions - ): Promise>; - listIpOwners( - params: Params$Resource$Networks$Listipowners, + ): Promise>; + list( + params: Params$Resource$Nodegroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listIpOwners( - params: Params$Resource$Networks$Listipowners, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Nodegroups$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listIpOwners( - params: Params$Resource$Networks$Listipowners, - callback: BodyResponseCallback + list( + params: Params$Resource$Nodegroups$List, + callback: BodyResponseCallback ): void; - listIpOwners(callback: BodyResponseCallback): void; - listIpOwners( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Networks$Listipowners - | BodyResponseCallback + | Params$Resource$Nodegroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Listipowners; + let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Listipowners; + params = {} as Params$Resource$Nodegroups$List; options = {}; } @@ -156389,7 +161972,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/listIpOwners' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -156397,22 +161980,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists the peering routes exchanged over peering connection. + * Lists nodes in the node group. * @example * ```js * // Before running the sample: @@ -156445,9 +162028,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.listPeeringRoutes({ - * // The direction of the exchanged routes. - * direction: 'placeholder-value', + * const res = await compute.nodeGroups.listNodes({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -156513,8 +162094,8 @@ export namespace compute_alpha { * // the next page of results in subsequent list requests. Acceptable values are * // `0` to `500`, inclusive. (Default: `500`) * maxResults: 'placeholder-value', - * // Name of the network for this request. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the NodeGroup resource whose nodes you want to list. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // Sorts list results by a certain order. By default, results * // are returned in alphanumerical order based on the resource name. * // @@ -156531,14 +162112,9 @@ export namespace compute_alpha { * // `nextPageToken` returned by a previous list request to get * // the next page of results. * pageToken: 'placeholder-value', - * // The response will show routes exchanged over the given peering connection. - * peeringName: '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 region of the request. The response will include all subnet routes, - * // static routes and dynamic routes in the region. - * region: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -156546,6 +162122,8 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -156572,57 +162150,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, + listNodes( + params: Params$Resource$Nodegroups$Listnodes, options: StreamMethodOptions ): Promise>; - listPeeringRoutes( - params?: Params$Resource$Networks$Listpeeringroutes, + listNodes( + params?: Params$Resource$Nodegroups$Listnodes, options?: MethodOptions - ): Promise>; - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, + ): Promise>; + listNodes( + params: Params$Resource$Nodegroups$Listnodes, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPeeringRoutes( - params: Params$Resource$Networks$Listpeeringroutes, - callback: BodyResponseCallback + listNodes( + params: Params$Resource$Nodegroups$Listnodes, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPeeringRoutes( - callback: BodyResponseCallback + listNodes( + params: Params$Resource$Nodegroups$Listnodes, + callback: BodyResponseCallback ): void; - listPeeringRoutes( + listNodes(callback: BodyResponseCallback): void; + listNodes( paramsOrCallback?: - | Params$Resource$Networks$Listpeeringroutes - | BodyResponseCallback + | Params$Resource$Nodegroups$Listnodes + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Listpeeringroutes; + {}) as Params$Resource$Nodegroups$Listnodes; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Listpeeringroutes; + params = {} as Params$Resource$Nodegroups$Listnodes; options = {}; } @@ -156637,31 +162211,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/listPeeringRoutes' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/listNodes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified network with the data included in the request. - * Only routingConfig can be modified. + * Updates the specified node group. * @example * ```js * // Before running the sample: @@ -156693,9 +162266,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.patch({ - * // Name of the network to update. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.patch({ + * // Name of the NodeGroup resource to update. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -156713,32 +162286,31 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "IPv4Range": "my_IPv4Range", - * // "autoCreateSubnetworks": false, + * // "autoscalingPolicy": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "enableUlaInternalIpv6": false, - * // "firewallPolicy": "my_firewallPolicy", - * // "gatewayIPv4": "my_gatewayIPv4", + * // "fingerprint": "my_fingerprint", * // "id": "my_id", - * // "internalIpv6Range": "my_internalIpv6Range", * // "kind": "my_kind", - * // "mtu": 0, + * // "locationHint": "my_locationHint", + * // "maintenanceInterval": "my_maintenanceInterval", + * // "maintenancePolicy": "my_maintenancePolicy", + * // "maintenanceWindow": {}, * // "name": "my_name", - * // "networkFirewallPolicyEnforcementOrder": "my_networkFirewallPolicyEnforcementOrder", - * // "networkProfile": "my_networkProfile", - * // "params": {}, - * // "peerings": [], - * // "region": "my_region", - * // "routingConfig": {}, + * // "nodeTemplate": "my_nodeTemplate", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "subnetworks": [] + * // "shareSettings": {}, + * // "size": 0, + * // "status": "my_status", + * // "zone": "my_zone" * // } * }, * }); @@ -156790,31 +162362,31 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, options: StreamMethodOptions ): Promise>; patch( - params?: Params$Resource$Networks$Patch, + params?: Params$Resource$Nodegroups$Patch, options?: MethodOptions ): Promise>; patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; patch( - params: Params$Resource$Networks$Patch, + params: Params$Resource$Nodegroups$Patch, callback: BodyResponseCallback ): void; patch(callback: BodyResponseCallback): void; patch( paramsOrCallback?: - | Params$Resource$Networks$Patch + | Params$Resource$Nodegroups$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -156829,12 +162401,12 @@ export namespace compute_alpha { | void | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Networks$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Patch; + params = {} as Params$Resource$Nodegroups$Patch; options = {}; } @@ -156849,7 +162421,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'PATCH', apiVersion: '', @@ -156857,8 +162429,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -156872,7 +162444,7 @@ export namespace compute_alpha { } /** - * Removes a peering from the specified network. + * Perform maintenance on a subset of nodes in the node group. * @example * ```js * // Before running the sample: @@ -156904,9 +162476,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.removePeering({ - * // Name of the network resource to remove peering from. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.performMaintenance({ + * // Name of the node group scoping this request. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -156924,12 +162496,15 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "name": "my_name" + * // "nodes": [], + * // "startTime": "my_startTime" * // } * }, * }); @@ -156980,32 +162555,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, options: StreamMethodOptions ): Promise>; - removePeering( - params?: Params$Resource$Networks$Removepeering, + performMaintenance( + params?: Params$Resource$Nodegroups$Performmaintenance, options?: MethodOptions ): Promise>; - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removePeering( - params: Params$Resource$Networks$Removepeering, + performMaintenance( + params: Params$Resource$Nodegroups$Performmaintenance, callback: BodyResponseCallback ): void; - removePeering(callback: BodyResponseCallback): void; - removePeering( + performMaintenance(callback: BodyResponseCallback): void; + performMaintenance( paramsOrCallback?: - | Params$Resource$Networks$Removepeering + | Params$Resource$Nodegroups$Performmaintenance | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -157021,12 +162596,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Removepeering; + {}) as Params$Resource$Nodegroups$Performmaintenance; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Removepeering; + params = {} as Params$Resource$Nodegroups$Performmaintenance; options = {}; } @@ -157041,7 +162616,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/removePeering' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/performMaintenance' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -157049,8 +162624,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -157064,8 +162639,8 @@ export namespace compute_alpha { } /** - * Requests to remove a peering from the specified network. Applicable only - * for PeeringConnection with update_strategy=CONSENSUS. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -157097,32 +162672,22 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.requestRemovePeering({ - * // Name of the network resource to remove peering from. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.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])?))', - * // 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). - * requestId: 'placeholder-value', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "name": "my_name" + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} * // } * }, * }); @@ -157130,34 +162695,10 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -157173,55 +162714,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, options: StreamMethodOptions ): Promise>; - requestRemovePeering( - params?: Params$Resource$Networks$Requestremovepeering, + setIamPolicy( + params?: Params$Resource$Nodegroups$Setiampolicy, options?: MethodOptions - ): Promise>; - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, + ): Promise>; + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - requestRemovePeering( - params: Params$Resource$Networks$Requestremovepeering, - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - requestRemovePeering( - callback: BodyResponseCallback + setIamPolicy( + params: Params$Resource$Nodegroups$Setiampolicy, + callback: BodyResponseCallback ): void; - requestRemovePeering( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Networks$Requestremovepeering - | BodyResponseCallback + | Params$Resource$Nodegroups$Setiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Requestremovepeering; + {}) as Params$Resource$Nodegroups$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Requestremovepeering; + params = {} as Params$Resource$Nodegroups$Setiampolicy; options = {}; } @@ -157236,7 +162775,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/requestRemovePeering' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -157244,22 +162783,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Switches the network mode from auto subnet mode to custom subnet mode. + * Updates the node template of the node group. * @example * ```js * // Before running the sample: @@ -157291,9 +162830,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.switchToCustomMode({ - * // Name of the network to be updated. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.setNodeTemplate({ + * // Name of the NodeGroup resource to update. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', @@ -157311,6 +162850,16 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "nodeTemplate": "my_nodeTemplate" + * // } + * }, * }); * console.log(res.data); * @@ -157359,32 +162908,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, options: StreamMethodOptions ): Promise>; - switchToCustomMode( - params?: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params?: Params$Resource$Nodegroups$Setnodetemplate, options?: MethodOptions ): Promise>; - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - switchToCustomMode( - params: Params$Resource$Networks$Switchtocustommode, + setNodeTemplate( + params: Params$Resource$Nodegroups$Setnodetemplate, callback: BodyResponseCallback ): void; - switchToCustomMode(callback: BodyResponseCallback): void; - switchToCustomMode( + setNodeTemplate(callback: BodyResponseCallback): void; + setNodeTemplate( paramsOrCallback?: - | Params$Resource$Networks$Switchtocustommode + | Params$Resource$Nodegroups$Setnodetemplate | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -157400,12 +162949,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Switchtocustommode; + {}) as Params$Resource$Nodegroups$Setnodetemplate; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Switchtocustommode; + params = {} as Params$Resource$Nodegroups$Setnodetemplate; options = {}; } @@ -157420,7 +162969,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/switchToCustomMode' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -157428,8 +162977,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { @@ -157443,7 +162992,7 @@ export namespace compute_alpha { } /** - * Returns permissions that a caller has on the specified resource. + * Simulates maintenance event on specified nodes from the node group. * @example * ```js * // Before running the sample: @@ -157467,7 +163016,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -157476,18 +163024,35 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.testIamPermissions({ + * const res = await compute.nodeGroups.simulateMaintenanceEvent({ + * // Name of the NodeGroup resource whose nodes will go under maintenance + * // simulation. + * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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 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}', + * // 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). + * requestId: 'placeholder-value', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "permissions": [] + * // "nodes": [] * // } * }, * }); @@ -157495,7 +163060,34 @@ export namespace compute_alpha { * * // Example response * // { - * // "permissions": [] + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -157511,57 +163103,55 @@ export namespace compute_alpha { * @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$Networks$Testiampermissions, + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Networks$Testiampermissions, + simulateMaintenanceEvent( + params?: Params$Resource$Nodegroups$Simulatemaintenanceevent, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Networks$Testiampermissions, + ): Promise>; + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Networks$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Networks$Testiampermissions, - callback: BodyResponseCallback + simulateMaintenanceEvent( + params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + simulateMaintenanceEvent( + callback: BodyResponseCallback ): void; - testIamPermissions( + simulateMaintenanceEvent( paramsOrCallback?: - | Params$Resource$Networks$Testiampermissions - | BodyResponseCallback + | Params$Resource$Nodegroups$Simulatemaintenanceevent + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Testiampermissions; + {}) as Params$Resource$Nodegroups$Simulatemaintenanceevent; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Testiampermissions; + params = {} as Params$Resource$Nodegroups$Simulatemaintenanceevent; options = {}; } @@ -157576,7 +163166,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{resource}/testIamPermissions' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/simulateMaintenanceEvent' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -157584,24 +163174,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'resource'], - pathParams: ['project', 'resource'], + requiredParams: ['project', 'zone', 'nodeGroup'], + pathParams: ['nodeGroup', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified network peering with the data included in the - * request. You can only modify the NetworkPeering.export_custom_routes field - * and the NetworkPeering.import_custom_routes field. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -157625,6 +163213,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -157633,32 +163222,20 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.networks.updatePeering({ - * // Name of the network resource which the updated peering is belonging to. - * network: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeGroups.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])?))', - * // 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). - * requestId: 'placeholder-value', + * // 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}', + * // The name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "networkPeering": {} + * // "permissions": [] * // } * }, * }); @@ -157666,34 +163243,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -157709,53 +163259,57 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - updatePeering( - params: Params$Resource$Networks$Updatepeering, + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, options: StreamMethodOptions ): Promise>; - updatePeering( - params?: Params$Resource$Networks$Updatepeering, + testIamPermissions( + params?: Params$Resource$Nodegroups$Testiampermissions, options?: MethodOptions - ): Promise>; - updatePeering( - params: Params$Resource$Networks$Updatepeering, + ): Promise>; + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - updatePeering( - params: Params$Resource$Networks$Updatepeering, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - updatePeering( - params: Params$Resource$Networks$Updatepeering, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Nodegroups$Testiampermissions, + callback: BodyResponseCallback ): void; - updatePeering(callback: BodyResponseCallback): void; - updatePeering( + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( paramsOrCallback?: - | Params$Resource$Networks$Updatepeering - | BodyResponseCallback + | Params$Resource$Nodegroups$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Networks$Updatepeering; + {}) as Params$Resource$Nodegroups$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Networks$Updatepeering; + params = {} as Params$Resource$Nodegroups$Testiampermissions; options = {}; } @@ -157770,96 +163324,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/global/networks/{network}/updatePeering' + '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'network'], - pathParams: ['network', 'project'], + requiredParams: ['project', 'zone', 'resource'], + pathParams: ['project', 'resource', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Networks$Addpeering extends StandardParameters { - /** - * Name of the network resource to add peering to. - */ - network?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworksAddPeeringRequest; - } - export interface Params$Resource$Networks$Cancelrequestremovepeering extends StandardParameters { - /** - * Name of the network resource to remove peering from. - */ - network?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NetworksCancelRequestRemovePeeringRequest; - } - export interface Params$Resource$Networks$Delete extends StandardParameters { + export interface Params$Resource$Nodegroups$Addnodes extends StandardParameters { /** - * Name of the network to delete. + * Name of the NodeGroup resource. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -157880,55 +163372,17 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - } - export interface Params$Resource$Networks$Get extends StandardParameters { - /** - * Name of the network to return. - */ - network?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networks$Geteffectivefirewalls extends StandardParameters { - /** - * Name of the network for this request. - */ - network?: string; - /** - * Project ID for this request. - */ - project?: string; - } - export interface Params$Resource$Networks$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: 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). + * The name of the zone for this request. */ - requestId?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$Network; + requestBody?: Schema$NodeGroupsAddNodesRequest; } - export interface Params$Resource$Networks$List extends StandardParameters { + export interface Params$Resource$Nodegroups$Aggregatedlist extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -157990,6 +163444,16 @@ export namespace compute_alpha { * expressions. */ 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`, @@ -158031,121 +163495,145 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; } - export interface Params$Resource$Networks$Listipaddresses extends StandardParameters { + export interface Params$Resource$Nodegroups$Delete extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * Name of the NodeGroup resource to delete. + */ + nodeGroup?: string; + /** + * Project ID for this request. + */ + project?: 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, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * 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. * - * You cannot combine constraints on multiple fields using regular - * expressions. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - filter?: string; + requestId?: 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`) + * The name of the zone for this request. */ - maxResults?: number; + zone?: string; + } + export interface Params$Resource$Nodegroups$Deletenodes extends StandardParameters { /** - * Name of the network for this request. + * Name of the NodeGroup resource whose nodes will be deleted. */ - network?: string; + nodeGroup?: string; /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * Project ID for this request. + */ + project?: 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. * - * 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. + * 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. * - * Currently, only sorting by `name` or - * `creationTimestamp desc` is supported. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - orderBy?: string; + requestId?: 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. + * The name of the zone for this request. */ - pageToken?: string; + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NodeGroupsDeleteNodesRequest; + } + export interface Params$Resource$Nodegroups$Get extends StandardParameters { + /** + * Name of the node group to return. + */ + nodeGroup?: string; /** * Project ID for this request. */ project?: string; /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Nodegroups$Getiampolicy extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Nodegroups$Insert extends StandardParameters { + /** + * Initial count of nodes in the node group. + */ + initialNodeCount?: number; + /** + * Project ID for this request. + */ + project?: 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, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. + * 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). */ - returnPartialSuccess?: boolean; + requestId?: string; /** - * (Optional) types filter separate by comma, valid values are: SUBNETWORK, - * RESERVED, PEER_USED, PEER_RESERVED, REMOTE_USED, REMOTE_RESERVED. + * The name of the zone for this request. */ - types?: string; + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NodeGroup; } - export interface Params$Resource$Networks$Listipowners extends StandardParameters { + export interface Params$Resource$Nodegroups$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -158207,10 +163695,6 @@ export namespace compute_alpha { * expressions. */ filter?: string; - /** - * (Optional) IP CIDR range filter, example: "10.128.10.0/30". - */ - ipCidrRange?: string; /** * The maximum number of results per page that should be returned. * If the number of available results is larger than `maxResults`, @@ -158219,10 +163703,6 @@ export namespace compute_alpha { * `0` to `500`, inclusive. (Default: `500`) */ maxResults?: number; - /** - * Name of the network to return. - */ - network?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -158237,14 +163717,6 @@ export namespace compute_alpha { * `creationTimestamp desc` is supported. */ orderBy?: string; - /** - * (Optional) Project IDs filter, example: "project-1,project-2". - */ - ownerProjects?: string; - /** - * (Optional) Owner types filter, example: "instance,forwardingRule". - */ - ownerTypes?: string; /** * Specifies a page token to use. Set `pageToken` to the * `nextPageToken` returned by a previous list request to get @@ -158265,19 +163737,11 @@ export namespace compute_alpha { */ returnPartialSuccess?: boolean; /** - * (Optional) Subnetwork name filter. - */ - subnetName?: string; - /** - * (Optional) Subnetwork region filter. + * The name of the zone for this request. */ - subnetRegion?: string; + zone?: string; } - export interface Params$Resource$Networks$Listpeeringroutes extends StandardParameters { - /** - * The direction of the exchanged routes. - */ - direction?: string; + export interface Params$Resource$Nodegroups$Listnodes extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -158348,9 +163812,9 @@ export namespace compute_alpha { */ maxResults?: number; /** - * Name of the network for this request. + * Name of the NodeGroup resource whose nodes you want to list. */ - network?: string; + nodeGroup?: string; /** * Sorts list results by a certain order. By default, results * are returned in alphanumerical order based on the resource name. @@ -158371,19 +163835,10 @@ export namespace compute_alpha { * the next page of results. */ pageToken?: string; - /** - * The response will show routes exchanged over the given peering connection. - */ - peeringName?: string; /** * Project ID for this request. */ project?: string; - /** - * The region of the request. The response will include all subnet routes, - * static routes and dynamic routes in the region. - */ - region?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -158393,12 +163848,16 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; } - export interface Params$Resource$Networks$Patch extends StandardParameters { + export interface Params$Resource$Nodegroups$Patch extends StandardParameters { /** - * Name of the network to update. + * Name of the NodeGroup resource to update. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -158419,17 +163878,21 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$Network; + requestBody?: Schema$NodeGroup; } - export interface Params$Resource$Networks$Removepeering extends StandardParameters { + export interface Params$Resource$Nodegroups$Performmaintenance extends StandardParameters { /** - * Name of the network resource to remove peering from. + * Name of the node group scoping this request. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -158450,48 +163913,40 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworksRemovePeeringRequest; + requestBody?: Schema$NodeGroupsPerformMaintenanceRequest; } - export interface Params$Resource$Networks$Requestremovepeering extends StandardParameters { - /** - * Name of the network resource to remove peering from. - */ - network?: string; + export interface Params$Resource$Nodegroups$Setiampolicy extends StandardParameters { /** * Project ID for this request. */ project?: 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). + * Name or id of the resource for this request. */ - requestId?: string; + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworksRequestRemovePeeringRequest; + requestBody?: Schema$ZoneSetPolicyRequest; } - export interface Params$Resource$Networks$Switchtocustommode extends StandardParameters { + export interface Params$Resource$Nodegroups$Setnodetemplate extends StandardParameters { /** - * Name of the network to be updated. + * Name of the NodeGroup resource to update. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -158512,27 +163967,22 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - } - export interface Params$Resource$Networks$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; /** - * Name or id of the resource for this request. + * The name of the zone for this request. */ - resource?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$TestPermissionsRequest; + requestBody?: Schema$NodeGroupsSetNodeTemplateRequest; } - export interface Params$Resource$Networks$Updatepeering extends StandardParameters { + export interface Params$Resource$Nodegroups$Simulatemaintenanceevent extends StandardParameters { /** - * Name of the network resource which the updated peering is belonging to. + * Name of the NodeGroup resource whose nodes will go under maintenance + * simulation. */ - network?: string; + nodeGroup?: string; /** * Project ID for this request. */ @@ -158553,21 +164003,47 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; + /** + * The name of the zone for this request. + */ + zone?: string; /** * Request body metadata */ - requestBody?: Schema$NetworksUpdatePeeringRequest; + requestBody?: Schema$NodeGroupsSimulateMaintenanceEventRequest; + } + export interface Params$Resource$Nodegroups$Testiampermissions extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; } - export class Resource$Nodegroups { + export class Resource$Nodetemplates { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Adds specified number of nodes to the node group. + * Retrieves an aggregated list of node templates. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -158591,6 +164067,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -158599,12 +164076,264 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.addNodes({ - * // Name of the NodeGroup resource. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.aggregatedList({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // 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])?))', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: '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$Nodetemplates$Aggregatedlist, + options: StreamMethodOptions + ): Promise>; + aggregatedList( + params?: Params$Resource$Nodetemplates$Aggregatedlist, + options?: MethodOptions + ): Promise>; + aggregatedList( + params: Params$Resource$Nodetemplates$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Nodetemplates$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Nodetemplates$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Nodetemplates$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodetemplates$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/alpha/projects/{project}/aggregated/nodeTemplates' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes the specified NodeTemplate 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.nodeTemplates.delete({ + * // Name of the NodeTemplate resource to delete. + * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?', * // 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. @@ -158619,16 +164348,6 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "additionalNodeCount": 0 - * // } - * }, * }); * console.log(res.data); * @@ -158677,32 +164396,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addNodes( - params: Params$Resource$Nodegroups$Addnodes, + delete( + params: Params$Resource$Nodetemplates$Delete, options: StreamMethodOptions ): Promise>; - addNodes( - params?: Params$Resource$Nodegroups$Addnodes, + delete( + params?: Params$Resource$Nodetemplates$Delete, options?: MethodOptions ): Promise>; - addNodes( - params: Params$Resource$Nodegroups$Addnodes, + delete( + params: Params$Resource$Nodetemplates$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addNodes( - params: Params$Resource$Nodegroups$Addnodes, + delete( + params: Params$Resource$Nodetemplates$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addNodes( - params: Params$Resource$Nodegroups$Addnodes, + delete( + params: Params$Resource$Nodetemplates$Delete, callback: BodyResponseCallback ): void; - addNodes(callback: BodyResponseCallback): void; - addNodes( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Nodegroups$Addnodes + | Params$Resource$Nodetemplates$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -158718,12 +164437,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Addnodes; + {}) as Params$Resource$Nodetemplates$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Addnodes; + params = {} as Params$Resource$Nodetemplates$Delete; options = {}; } @@ -158738,16 +164457,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes' + '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region', 'nodeTemplate'], + pathParams: ['nodeTemplate', 'project', 'region'], context: this.context, }; if (callback) { @@ -158761,158 +164480,69 @@ export namespace compute_alpha { } /** - * Retrieves an aggregated list of node groups. - * Note: use nodeGroups.listNodes for more details about each group. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Returns the specified node template. * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.nodeGroups.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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', + * '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.nodeTemplates.get({ + * // Name of the node template to return. + * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "accelerators": [], + * // "cpuOvercommitType": "my_cpuOvercommitType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "disks": [], * // "id": "my_id", - * // "items": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "nodeAffinityLabels": {}, + * // "nodeType": "my_nodeType", + * // "nodeTypeFlexibility": {}, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serverBinding": {}, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage" * // } * } * @@ -158928,57 +164558,53 @@ export namespace compute_alpha { * @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$Nodegroups$Aggregatedlist, + get( + params: Params$Resource$Nodetemplates$Get, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Nodegroups$Aggregatedlist, + get( + params?: Params$Resource$Nodetemplates$Get, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, + ): Promise>; + get( + params: Params$Resource$Nodetemplates$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Nodegroups$Aggregatedlist, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodetemplates$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + get( + params: Params$Resource$Nodetemplates$Get, + callback: BodyResponseCallback ): void; - aggregatedList( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodegroups$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Nodetemplates$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Aggregatedlist; + {}) as Params$Resource$Nodetemplates$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Aggregatedlist; + params = {} as Params$Resource$Nodetemplates$Get; options = {}; } @@ -158993,7 +164619,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/aggregated/nodeGroups' + '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -159001,22 +164627,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['project', 'region', 'nodeTemplate'], + pathParams: ['nodeTemplate', 'project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes the specified NodeGroup resource. + * Gets the access control policy for a resource. May be empty if no such + * policy or resource exists. * @example * ```js * // Before running the sample: @@ -159040,6 +164667,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -159048,61 +164676,25 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.delete({ - * // Name of the NodeGroup resource to delete. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-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 * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -159118,53 +164710,53 @@ export namespace compute_alpha { * @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$Nodegroups$Delete, + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Nodegroups$Delete, + getIamPolicy( + params?: Params$Resource$Nodetemplates$Getiampolicy, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Nodegroups$Delete, + ): Promise>; + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Nodegroups$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Nodegroups$Delete, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Nodetemplates$Getiampolicy, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Nodegroups$Delete - | BodyResponseCallback + | Params$Resource$Nodetemplates$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Delete; + {}) as Params$Resource$Nodetemplates$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Delete; + params = {} as Params$Resource$Nodetemplates$Getiampolicy; options = {}; } @@ -159179,30 +164771,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' + '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes specified nodes from the node group. + * Creates a NodeTemplate resource in the specified project using the data + * included in the request. * @example * ```js * // Before running the sample: @@ -159234,12 +164827,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.deleteNodes({ - * // Name of the NodeGroup resource whose nodes will be deleted. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.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])?))', + * // The name of the region for 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. @@ -159254,14 +164847,28 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "nodes": [] + * // "accelerators": [], + * // "cpuOvercommitType": "my_cpuOvercommitType", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "disks": [], + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "nodeAffinityLabels": {}, + * // "nodeType": "my_nodeType", + * // "nodeTypeFlexibility": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "serverBinding": {}, + * // "status": "my_status", + * // "statusMessage": "my_statusMessage" * // } * }, * }); @@ -159312,32 +164919,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, options: StreamMethodOptions ): Promise>; - deleteNodes( - params?: Params$Resource$Nodegroups$Deletenodes, + insert( + params?: Params$Resource$Nodetemplates$Insert, options?: MethodOptions ): Promise>; - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - deleteNodes( - params: Params$Resource$Nodegroups$Deletenodes, + insert( + params: Params$Resource$Nodetemplates$Insert, callback: BodyResponseCallback ): void; - deleteNodes(callback: BodyResponseCallback): void; - deleteNodes( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Nodegroups$Deletenodes + | Params$Resource$Nodetemplates$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -159353,12 +164960,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Deletenodes; + {}) as Params$Resource$Nodetemplates$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Deletenodes; + params = {} as Params$Resource$Nodetemplates$Insert; options = {}; } @@ -159373,7 +164980,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes' + '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -159381,8 +164988,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { @@ -159396,10 +165003,8 @@ export namespace compute_alpha { } /** - * Returns the specified NodeGroup. Get a list of available NodeGroups - * by making a list() request. - * Note: the "nodes" field should not be used. Use nodeGroups.listNodes - * instead. + * Retrieves a list of node templates available to the specified + * project. * @example * ```js * // Before running the sample: @@ -159432,37 +165037,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.get({ - * // Name of the node group to return. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTemplates.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // The name of the zone for this request. - * zone: '[a-z](?:[-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])?', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "autoscalingPolicy": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", * // "id": "my_id", + * // "items": [], * // "kind": "my_kind", - * // "locationHint": "my_locationHint", - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maintenancePolicy": "my_maintenancePolicy", - * // "maintenanceWindow": {}, - * // "name": "my_name", - * // "nodeTemplate": "my_nodeTemplate", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "size": 0, - * // "status": "my_status", - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -159478,52 +165157,53 @@ export namespace compute_alpha { * @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$Nodegroups$Get, + list( + params: Params$Resource$Nodetemplates$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Nodegroups$Get, + list( + params?: Params$Resource$Nodetemplates$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Nodegroups$Get, + ): Promise>; + list( + params: Params$Resource$Nodetemplates$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodegroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Nodetemplates$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodegroups$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Nodetemplates$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Nodegroups$Get - | BodyResponseCallback + | Params$Resource$Nodetemplates$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Get; + params = {} as Params$Resource$Nodetemplates$List; options = {}; } @@ -159538,7 +165218,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' + '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -159546,23 +165226,23 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Sets the access control policy on the specified resource. + * Replaces any existing policy. * @example * ```js * // Before running the sample: @@ -159586,7 +165266,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -159595,16 +165274,24 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.getIamPolicy({ - * // Requested IAM Policy version. - * optionsRequestedPolicyVersion: 'placeholder-value', + * const res = await compute.nodeTemplates.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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, * }); * console.log(res.data); * @@ -159629,32 +165316,32 @@ export namespace compute_alpha { * @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$Nodegroups$Getiampolicy, + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Nodegroups$Getiampolicy, + setIamPolicy( + params?: Params$Resource$Nodetemplates$Setiampolicy, options?: MethodOptions ): Promise>; - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Nodegroups$Getiampolicy, + setIamPolicy( + params: Params$Resource$Nodetemplates$Setiampolicy, callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( paramsOrCallback?: - | Params$Resource$Nodegroups$Getiampolicy + | Params$Resource$Nodetemplates$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -159670,12 +165357,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Getiampolicy; + {}) as Params$Resource$Nodetemplates$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Getiampolicy; + params = {} as Params$Resource$Nodetemplates$Setiampolicy; options = {}; } @@ -159690,16 +165377,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy' + '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], context: this.context, }; if (callback) { @@ -159713,8 +165400,7 @@ export namespace compute_alpha { } /** - * Creates a NodeGroup resource in the specified project using the data - * included in the request. + * Returns permissions that a caller has on the specified resource. * @example * ```js * // Before running the sample: @@ -159738,6 +165424,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -159746,51 +165433,20 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.insert({ - * // Initial count of nodes in the node group. - * initialNodeCount: 'placeholder-value', + * const res = await compute.nodeTemplates.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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-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 * // { - * // "autoscalingPolicy": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "locationHint": "my_locationHint", - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maintenancePolicy": "my_maintenancePolicy", - * // "maintenanceWindow": {}, - * // "name": "my_name", - * // "nodeTemplate": "my_nodeTemplate", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "size": 0, - * // "status": "my_status", - * // "zone": "my_zone" + * // "permissions": [] * // } * }, * }); @@ -159798,34 +165454,7 @@ export namespace compute_alpha { * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "permissions": [] * // } * } * @@ -159841,92 +165470,464 @@ export namespace compute_alpha { * @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$Nodegroups$Insert, - options: StreamMethodOptions - ): Promise>; - insert( - params?: Params$Resource$Nodegroups$Insert, - options?: MethodOptions - ): Promise>; - insert( - params: Params$Resource$Nodegroups$Insert, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Nodegroups$Insert, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - insert( - params: Params$Resource$Nodegroups$Insert, - callback: BodyResponseCallback - ): void; - insert(callback: BodyResponseCallback): void; - insert( - paramsOrCallback?: - | Params$Resource$Nodegroups$Insert - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Insert; - let options = (optionsOrCallback || {}) as MethodOptions; + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Nodetemplates$Testiampermissions, + options?: MethodOptions + ): Promise>; + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Nodetemplates$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Nodetemplates$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetemplates$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Nodetemplates$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/alpha/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + 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$Nodetemplates$Aggregatedlist extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Nodetemplates$Delete extends StandardParameters { + /** + * Name of the NodeTemplate resource to delete. + */ + nodeTemplate?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for 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). + */ + requestId?: string; + } + export interface Params$Resource$Nodetemplates$Get extends StandardParameters { + /** + * Name of the node template to return. + */ + nodeTemplate?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + } + export interface Params$Resource$Nodetemplates$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$Nodetemplates$Insert extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$NodeTemplate; + } + export interface Params$Resource$Nodetemplates$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Nodetemplates$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; - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Insert; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Nodetemplates$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; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'initialNodeCount'], - pathParams: ['project', 'zone'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Nodetypes { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Retrieves a list of node groups available to the specified project. - * Note: use nodeGroups.listNodes for more details about each group. + * Retrieves an aggregated list of node types. + * + * To prevent failure, Google recommends that you set the + * `returnPartialSuccess` parameter to `true`. * @example * ```js * // Before running the sample: @@ -159959,7 +165960,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.list({ + * const res = await compute.nodeTypes.aggregatedList({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -160019,6 +166020,14 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -160051,18 +166060,20 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // The Shared VPC service project id or service project number for which + * // aggregated list request is invoked for subnetworks list-usable api. + * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { * // "id": "my_id", - * // "items": [], + * // "items": {}, * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -160079,52 +166090,57 @@ export namespace compute_alpha { * @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$Nodegroups$List, + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Nodegroups$List, + aggregatedList( + params?: Params$Resource$Nodetypes$Aggregatedlist, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Nodegroups$List, + ): Promise>; + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Nodegroups$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Nodegroups$List, - callback: BodyResponseCallback + aggregatedList( + params: Params$Resource$Nodetypes$Aggregatedlist, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( paramsOrCallback?: - | Params$Resource$Nodegroups$List - | BodyResponseCallback + | Params$Resource$Nodetypes$Aggregatedlist + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Nodetypes$Aggregatedlist; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$List; + params = {} as Params$Resource$Nodetypes$Aggregatedlist; options = {}; } @@ -160138,8 +166154,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups' + rootUrl + '/compute/alpha/projects/{project}/aggregated/nodeTypes' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -160147,22 +166162,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: ['project'], + pathParams: ['project'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists nodes in the node group. + * Returns the specified node type. * @example * ```js * // Before running the sample: @@ -160195,100 +166210,12 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.listNodes({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // Name of the NodeGroup resource whose nodes you want to list. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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', + * const res = await compute.nodeTypes.get({ + * // Name of the node type to return. + * nodeType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); @@ -160296,12 +166223,20 @@ export namespace compute_alpha { * * // Example response * // { + * // "cpuPlatform": "my_cpuPlatform", + * // "creationTimestamp": "my_creationTimestamp", + * // "deprecated": {}, + * // "description": "my_description", + * // "guestCpus": 0, * // "id": "my_id", - * // "items": [], * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "localSsdGb": 0, + * // "maxVms": 0, + * // "memoryMb": 0, + * // "name": "my_name", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "zone": "my_zone" * // } * } * @@ -160317,53 +166252,52 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listNodes( - params: Params$Resource$Nodegroups$Listnodes, + get( + params: Params$Resource$Nodetypes$Get, options: StreamMethodOptions ): Promise>; - listNodes( - params?: Params$Resource$Nodegroups$Listnodes, + get( + params?: Params$Resource$Nodetypes$Get, options?: MethodOptions - ): Promise>; - listNodes( - params: Params$Resource$Nodegroups$Listnodes, + ): Promise>; + get( + params: Params$Resource$Nodetypes$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listNodes( - params: Params$Resource$Nodegroups$Listnodes, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodetypes$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listNodes( - params: Params$Resource$Nodegroups$Listnodes, - callback: BodyResponseCallback + get( + params: Params$Resource$Nodetypes$Get, + callback: BodyResponseCallback ): void; - listNodes(callback: BodyResponseCallback): void; - listNodes( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodegroups$Listnodes - | BodyResponseCallback + | Params$Resource$Nodetypes$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Listnodes; + let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Listnodes; + params = {} as Params$Resource$Nodetypes$Get; options = {}; } @@ -160378,30 +166312,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/listNodes' + '/compute/alpha/projects/{project}/zones/{zone}/nodeTypes/{nodeType}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'zone', 'nodeType'], + pathParams: ['nodeType', 'project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the specified node group. + * Retrieves a list of node types available to the specified + * project. * @example * ```js * // Before running the sample: @@ -160425,6 +166360,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -160433,86 +166369,111 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.patch({ - * // Name of the NodeGroup resource to update. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * const res = await compute.nodeTypes.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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])?))', - * // 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. + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * // The name of the zone for this request. * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "autoscalingPolicy": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "locationHint": "my_locationHint", - * // "maintenanceInterval": "my_maintenanceInterval", - * // "maintenancePolicy": "my_maintenancePolicy", - * // "maintenanceWindow": {}, - * // "name": "my_name", - * // "nodeTemplate": "my_nodeTemplate", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shareSettings": {}, - * // "size": 0, - * // "status": "my_status", - * // "zone": "my_zone" - * // } - * }, * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "warning": {} * // } * } * @@ -160528,52 +166489,52 @@ export namespace compute_alpha { * @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$Nodegroups$Patch, + list( + params: Params$Resource$Nodetypes$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Nodegroups$Patch, + list( + params?: Params$Resource$Nodetypes$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Nodegroups$Patch, + ): Promise>; + list( + params: Params$Resource$Nodetypes$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Nodegroups$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Nodetypes$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Nodegroups$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Nodetypes$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Nodegroups$Patch - | BodyResponseCallback + | Params$Resource$Nodetypes$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodegroups$Patch; + let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Patch; + params = {} as Params$Resource$Nodetypes$List; options = {}; } @@ -160588,30 +166549,279 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}' + '/compute/alpha/projects/{project}/zones/{zone}/nodeTypes' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['project', 'zone'], + pathParams: ['project', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Nodetypes$Aggregatedlist extends StandardParameters { /** - * Perform maintenance on a subset of nodes in the node group. + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Project ID for this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The Shared VPC service project id or service project number for which + * aggregated list request is invoked for subnetworks list-usable api. + */ + serviceProjectNumber?: string; + } + export interface Params$Resource$Nodetypes$Get extends StandardParameters { + /** + * Name of the node type to return. + */ + nodeType?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the zone for this request. + */ + zone?: string; + } + export interface Params$Resource$Nodetypes$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + /** + * The name of the zone for this request. + */ + zone?: string; + } + + export class Resource$Organizationrolloutplans { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Deletes an OrganizationRolloutPlan. * @example * ```js * // Before running the sample: @@ -160643,12 +166853,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.performMaintenance({ - * // Name of the node group scoping this request. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', + * const res = await compute.organizationRolloutPlans.delete({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // 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. @@ -160663,17 +166870,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "nodes": [], - * // "startTime": "my_startTime" - * // } - * }, + * // Name of the OrganizationRolloutPlan resource to delete. + * rolloutPlan: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -160705,167 +166903,8 @@ export namespace compute_alpha { * // "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. - */ - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, - options: StreamMethodOptions - ): Promise>; - performMaintenance( - params?: Params$Resource$Nodegroups$Performmaintenance, - options?: MethodOptions - ): Promise>; - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - performMaintenance( - params: Params$Resource$Nodegroups$Performmaintenance, - callback: BodyResponseCallback - ): void; - performMaintenance(callback: BodyResponseCallback): void; - performMaintenance( - paramsOrCallback?: - | Params$Resource$Nodegroups$Performmaintenance - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Performmaintenance; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Performmaintenance; - 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}/zones/{zone}/nodeGroups/{nodeGroup}/performMaintenance' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], - 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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.nodeGroups.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])?))', - * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "bindings": [], - * // "etag": "my_etag", - * // "policy": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -160881,53 +166920,53 @@ export namespace compute_alpha { * @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$Nodegroups$Setiampolicy, + delete( + params: Params$Resource$Organizationrolloutplans$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Nodegroups$Setiampolicy, + delete( + params?: Params$Resource$Organizationrolloutplans$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Organizationrolloutplans$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationrolloutplans$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodegroups$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationrolloutplans$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Nodegroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Organizationrolloutplans$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Setiampolicy; + {}) as Params$Resource$Organizationrolloutplans$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Setiampolicy; + params = {} as Params$Resource$Organizationrolloutplans$Delete; options = {}; } @@ -160942,30 +166981,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy' + '/compute/alpha/{+organization}/global/rolloutPlans/{rolloutPlan}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['organization', 'rolloutPlan'], + pathParams: ['organization', 'rolloutPlan'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Updates the node template of the node group. + * Gets details of a single organization-scoped RolloutPlan. * @example * ```js * // Before running the sample: @@ -160989,6 +167028,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -160997,69 +167037,25 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.setNodeTemplate({ - * // Name of the NodeGroup resource to update. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', - * // 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). - * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "nodeTemplate": "my_nodeTemplate" - * // } - * }, + * const res = await compute.organizationRolloutPlans.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the persistent rollout plan to return. + * rolloutPlan: '[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": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", + * // "locationScope": "my_locationScope", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "waves": [] * // } * } * @@ -161075,53 +167071,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, + get( + params: Params$Resource$Organizationrolloutplans$Get, options: StreamMethodOptions ): Promise>; - setNodeTemplate( - params?: Params$Resource$Nodegroups$Setnodetemplate, + get( + params?: Params$Resource$Organizationrolloutplans$Get, options?: MethodOptions - ): Promise>; - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, + ): Promise>; + get( + params: Params$Resource$Organizationrolloutplans$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationrolloutplans$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setNodeTemplate( - params: Params$Resource$Nodegroups$Setnodetemplate, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationrolloutplans$Get, + callback: BodyResponseCallback ): void; - setNodeTemplate(callback: BodyResponseCallback): void; - setNodeTemplate( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodegroups$Setnodetemplate - | BodyResponseCallback + | Params$Resource$Organizationrolloutplans$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Setnodetemplate; + {}) as Params$Resource$Organizationrolloutplans$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Setnodetemplate; + params = {} as Params$Resource$Organizationrolloutplans$Get; options = {}; } @@ -161136,30 +167132,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate' + '/compute/alpha/{+organization}/global/rolloutPlans/{rolloutPlan}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization', 'rolloutPlan'], + pathParams: ['organization', 'rolloutPlan'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Simulates maintenance event on specified nodes from the node group. + * Creates a new RolloutPlan in a given organization and location. * @example * ```js * // Before running the sample: @@ -161191,13 +167187,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.simulateMaintenanceEvent({ - * // Name of the NodeGroup resource whose nodes will go under maintenance - * // simulation. - * nodeGroup: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?))', + * const res = await compute.organizationRolloutPlans.insert({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // 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. @@ -161212,14 +167204,20 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "nodes": [] + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "locationScope": "my_locationScope", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] * // } * }, * }); @@ -161270,34 +167268,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + insert( + params: Params$Resource$Organizationrolloutplans$Insert, options: StreamMethodOptions ): Promise>; - simulateMaintenanceEvent( - params?: Params$Resource$Nodegroups$Simulatemaintenanceevent, + insert( + params?: Params$Resource$Organizationrolloutplans$Insert, options?: MethodOptions ): Promise>; - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + insert( + params: Params$Resource$Organizationrolloutplans$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, + insert( + params: Params$Resource$Organizationrolloutplans$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( - params: Params$Resource$Nodegroups$Simulatemaintenanceevent, - callback: BodyResponseCallback - ): void; - simulateMaintenanceEvent( + insert( + params: Params$Resource$Organizationrolloutplans$Insert, callback: BodyResponseCallback ): void; - simulateMaintenanceEvent( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Nodegroups$Simulatemaintenanceevent + | Params$Resource$Organizationrolloutplans$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -161313,12 +167309,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Simulatemaintenanceevent; + {}) as Params$Resource$Organizationrolloutplans$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Simulatemaintenanceevent; + params = {} as Params$Resource$Organizationrolloutplans$Insert; options = {}; } @@ -161332,8 +167328,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/simulateMaintenanceEvent' + rootUrl + '/compute/alpha/{+organization}/global/rolloutPlans' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -161341,8 +167336,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone', 'nodeGroup'], - pathParams: ['nodeGroup', 'project', 'zone'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { @@ -161356,7 +167351,7 @@ export namespace compute_alpha { } /** - * Returns permissions that a caller has on the specified resource. + * Lists OrganizationRolloutPlans in a given organization and location. * @example * ```js * // Before running the sample: @@ -161389,28 +167384,109 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeGroups.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])?))', - * // 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}', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * const res = await compute.organizationRolloutPlans.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -161426,57 +167502,55 @@ export namespace compute_alpha { * @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$Nodegroups$Testiampermissions, + list( + params: Params$Resource$Organizationrolloutplans$List, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Nodegroups$Testiampermissions, + list( + params?: Params$Resource$Organizationrolloutplans$List, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, + ): Promise>; + list( + params: Params$Resource$Organizationrolloutplans$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, + list( + params: Params$Resource$Organizationrolloutplans$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Nodegroups$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationrolloutplans$List, + callback: BodyResponseCallback ): void; - testIamPermissions( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Nodegroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Organizationrolloutplans$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodegroups$Testiampermissions; + {}) as Params$Resource$Organizationrolloutplans$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodegroups$Testiampermissions; + params = {} as Params$Resource$Organizationrolloutplans$List; options = {}; } @@ -161490,223 +167564,34 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions' + rootUrl + '/compute/alpha/{+organization}/global/rolloutPlans' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'resource'], - pathParams: ['project', 'resource', 'zone'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } } - export interface Params$Resource$Nodegroups$Addnodes extends StandardParameters { - /** - * Name of the NodeGroup resource. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsAddNodesRequest; - } - export interface Params$Resource$Nodegroups$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Nodegroups$Delete extends StandardParameters { - /** - * Name of the NodeGroup resource to delete. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: 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). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Nodegroups$Deletenodes extends StandardParameters { - /** - * Name of the NodeGroup resource whose nodes will be deleted. - */ - nodeGroup?: string; + export interface Params$Resource$Organizationrolloutplans$Delete extends StandardParameters { /** - * Project ID for this request. + * Organization ID for this request. */ - project?: string; + organization?: 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 @@ -161724,56 +167609,25 @@ export namespace compute_alpha { */ requestId?: string; /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsDeleteNodesRequest; - } - export interface Params$Resource$Nodegroups$Get extends StandardParameters { - /** - * Name of the node group to return. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. + * Name of the OrganizationRolloutPlan resource to delete. */ - zone?: string; + rolloutPlan?: string; } - export interface Params$Resource$Nodegroups$Getiampolicy extends StandardParameters { - /** - * Requested IAM Policy version. - */ - optionsRequestedPolicyVersion?: number; - /** - * Project ID for this request. - */ - project?: string; + export interface Params$Resource$Organizationrolloutplans$Get extends StandardParameters { /** - * Name or id of the resource for this request. + * Organization ID for this request. */ - resource?: string; + organization?: string; /** - * The name of the zone for this request. + * Name of the persistent rollout plan to return. */ - zone?: string; + rolloutPlan?: string; } - export interface Params$Resource$Nodegroups$Insert extends StandardParameters { - /** - * Initial count of nodes in the node group. - */ - initialNodeCount?: number; + export interface Params$Resource$Organizationrolloutplans$Insert extends StandardParameters { /** - * Project ID for this request. + * Organization ID for this request. */ - project?: string; + organization?: 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 @@ -161790,17 +167644,13 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; /** * Request body metadata */ - requestBody?: Schema$NodeGroup; + requestBody?: Schema$RolloutPlan; } - export interface Params$Resource$Nodegroups$List extends StandardParameters { + export interface Params$Resource$Organizationrolloutplans$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -161884,16 +167734,16 @@ export namespace compute_alpha { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: 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; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -161903,314 +167753,731 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - /** - * The name of the zone for this request. - */ - zone?: string; } - export interface Params$Resource$Nodegroups$Listnodes extends StandardParameters { + + export class Resource$Organizationrollouts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. + * Advances a Rollout to the next wave, or completes it if no waves remain. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * 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', + * ], + * }); * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * 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 onresource labels. + * // Do the magic + * const res = await compute.organizationRollouts.advance({ + * // Required. Wave number of the current wave. + * currentWaveNumber: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Required. Name of the Rollout resource to advance. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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; + * }); * - * 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) + * + * @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. + */ + advance( + params: Params$Resource$Organizationrollouts$Advance, + options: StreamMethodOptions + ): Promise>; + advance( + params?: Params$Resource$Organizationrollouts$Advance, + options?: MethodOptions + ): Promise>; + advance( + params: Params$Resource$Organizationrollouts$Advance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + advance( + params: Params$Resource$Organizationrollouts$Advance, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + advance( + params: Params$Resource$Organizationrollouts$Advance, + callback: BodyResponseCallback + ): void; + advance(callback: BodyResponseCallback): void; + advance( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Advance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Advance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Advance; + 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/{+organization}/global/rollouts/{rollout}/advance' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Cancels a Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.organizationRollouts.cancel({ + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * // the rollout without taking any further actions. Note that products must + * // support at least one of these options, however, it does not need to support + * // both. + * rollback: 'placeholder-value', + * // Name of the Rollout resource to cancel. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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; + * }); + * * ``` * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * @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$Organizationrollouts$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Organizationrollouts$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Cancel; + 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/{+organization}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * 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', + * ], + * }); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Do the magic + * const res = await compute.organizationRollouts.delete({ + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Name of the Rollout resource to delete. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Name of the NodeGroup resource whose nodes you want to list. - */ - nodeGroup?: string; - /** - * Sorts list results by a certain order. By default, results - * are returned in alphanumerical order based on the resource name. + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of the zone for this request. - */ - zone?: string; - } - export interface Params$Resource$Nodegroups$Patch extends StandardParameters { - /** - * Name of the NodeGroup resource to update. - */ - nodeGroup?: string; - /** - * Project ID for this request. + * @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. */ - project?: string; + delete( + params: Params$Resource$Organizationrollouts$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Organizationrollouts$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Organizationrollouts$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Organizationrollouts$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Organizationrollouts$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$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/alpha/{+organization}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** - * 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. + * Gets details of a single organization-scoped Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroup; - } - export interface Params$Resource$Nodegroups$Performmaintenance extends StandardParameters { - /** - * Name of the node group scoping this request. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: 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. + * 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', + * ], + * }); * - * 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. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsPerformMaintenanceRequest; - } - export interface Params$Resource$Nodegroups$Setiampolicy extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$ZoneSetPolicyRequest; - } - export interface Params$Resource$Nodegroups$Setnodetemplate extends StandardParameters { - /** - * Name of the NodeGroup resource to update. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: 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. + * // Do the magic + * const res = await compute.organizationRollouts.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the persistent rollout to return. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "cancellationTime": "my_cancellationTime", + * // "completionTime": "my_completionTime", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentWaveNumber": "my_currentWaveNumber", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "pauseTime": "my_pauseTime", + * // "resumeTime": "my_resumeTime", + * // "rolloutEntity": {}, + * // "rolloutPlan": "my_rolloutPlan", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "waveDetails": [] + * // } + * } * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * The name of the zone for this request. - */ - zone?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsSetNodeTemplateRequest; - } - export interface Params$Resource$Nodegroups$Simulatemaintenanceevent extends StandardParameters { - /** - * Name of the NodeGroup resource whose nodes will go under maintenance - * simulation. - */ - nodeGroup?: string; - /** - * Project ID for this request. - */ - project?: 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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). - */ - requestId?: string; - /** - * The name of the zone for this request. + * @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. */ - zone?: string; + get( + params: Params$Resource$Organizationrollouts$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Organizationrollouts$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Organizationrollouts$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizationrollouts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizationrollouts$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Get; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$NodeGroupsSimulateMaintenanceEventRequest; - } - export interface Params$Resource$Nodegroups$Testiampermissions extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * Name or id of the resource for this request. - */ - resource?: string; - /** - * The name of the zone for this request. - */ - zone?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Get; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Nodetemplates { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/{+organization}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves an aggregated list of node templates. - * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Lists Rollouts in a given organization and location. * @example * ```js * // Before running the sample: @@ -162243,7 +168510,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.aggregatedList({ + * const res = await compute.organizationRollouts.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -162303,14 +168570,6 @@ export namespace compute_alpha { * // You cannot combine constraints on multiple fields using regular * // expressions. * 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 @@ -162329,13 +168588,12 @@ export namespace compute_alpha { * // Currently, only sorting by `name` or * // `creationTimestamp desc` is supported. * orderBy: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', * // 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])?))', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -162343,17 +168601,14 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", - * // "items": {}, - * // "kind": "my_kind", + * // "items": [], * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", * // "unreachables": [], @@ -162373,57 +168628,61 @@ export namespace compute_alpha { * @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$Nodetemplates$Aggregatedlist, + list( + params: Params$Resource$Organizationrollouts$List, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Nodetemplates$Aggregatedlist, + list( + params?: Params$Resource$Organizationrollouts$List, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Organizationrollouts$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, + list( + params: Params$Resource$Organizationrollouts$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Nodetemplates$Aggregatedlist, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationrollouts$List, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + list( + callback: BodyResponseCallback ): void; - aggregatedList( + list( paramsOrCallback?: - | Params$Resource$Nodetemplates$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Organizationrollouts$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Aggregatedlist; + {}) as Params$Resource$Organizationrollouts$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Aggregatedlist; + params = {} as Params$Resource$Organizationrollouts$List; options = {}; } @@ -162437,8 +168696,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/aggregated/nodeTemplates' + rootUrl + '/compute/alpha/{+organization}/global/rollouts' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -162446,22 +168704,24 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes the specified NodeTemplate resource. + * Pauses a Rollout. * @example * ```js * // Before running the sample: @@ -162493,14 +168753,13 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.delete({ - * // Name of the NodeTemplate resource to delete. - * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?', + * const res = await compute.organizationRollouts.pause({ + * // The etag of the Rollout. + * // If this is provided, the request will only succeed if the etag matches + * // the current etag of the Rollout. + * etag: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', * // 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. @@ -162515,6 +168774,8 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Required. Name of the Rollout resource to pause. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * @@ -162563,32 +168824,32 @@ export namespace compute_alpha { * @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$Nodetemplates$Delete, + pause( + params: Params$Resource$Organizationrollouts$Pause, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Nodetemplates$Delete, + pause( + params?: Params$Resource$Organizationrollouts$Pause, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Nodetemplates$Delete, + pause( + params: Params$Resource$Organizationrollouts$Pause, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Nodetemplates$Delete, + pause( + params: Params$Resource$Organizationrollouts$Pause, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Nodetemplates$Delete, + pause( + params: Params$Resource$Organizationrollouts$Pause, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + pause(callback: BodyResponseCallback): void; + pause( paramsOrCallback?: - | Params$Resource$Nodetemplates$Delete + | Params$Resource$Organizationrollouts$Pause | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -162604,12 +168865,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Delete; + {}) as Params$Resource$Organizationrollouts$Pause; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Delete; + params = {} as Params$Resource$Organizationrollouts$Pause; options = {}; } @@ -162624,16 +168885,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' + '/compute/alpha/{+organization}/global/rollouts/{rollout}/pause' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'nodeTemplate'], - pathParams: ['nodeTemplate', 'project', 'region'], + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], context: this.context, }; if (callback) { @@ -162647,7 +168908,7 @@ export namespace compute_alpha { } /** - * Returns the specified node template. + * Resumes a Rollout. * @example * ```js * // Before running the sample: @@ -162671,7 +168932,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -162680,36 +168940,62 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.get({ - * // Name of the node template to return. - * nodeTemplate: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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])?', + * const res = await compute.organizationRollouts.resume({ + * // The etag of the Rollout. + * // If this is provided, the request will only succeed if the etag matches + * // the current etag of the Rollout. + * etag: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Required. Name of the Rollout resource to resume. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', * }); * console.log(res.data); * * // Example response * // { - * // "accelerators": [], - * // "cpuOvercommitType": "my_cpuOvercommitType", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", - * // "disks": [], + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", * // "name": "my_name", - * // "nodeAffinityLabels": {}, - * // "nodeType": "my_nodeType", - * // "nodeTypeFlexibility": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "serverBinding": {}, + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", * // "status": "my_status", - * // "statusMessage": "my_statusMessage" + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -162725,53 +169011,53 @@ export namespace compute_alpha { * @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$Nodetemplates$Get, + resume( + params: Params$Resource$Organizationrollouts$Resume, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Nodetemplates$Get, + resume( + params?: Params$Resource$Organizationrollouts$Resume, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Nodetemplates$Get, + ): Promise>; + resume( + params: Params$Resource$Organizationrollouts$Resume, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetemplates$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + resume( + params: Params$Resource$Organizationrollouts$Resume, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetemplates$Get, - callback: BodyResponseCallback + resume( + params: Params$Resource$Organizationrollouts$Resume, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + resume(callback: BodyResponseCallback): void; + resume( paramsOrCallback?: - | Params$Resource$Nodetemplates$Get - | BodyResponseCallback + | Params$Resource$Organizationrollouts$Resume + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Get; + {}) as Params$Resource$Organizationrollouts$Resume; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Get; + params = {} as Params$Resource$Organizationrollouts$Resume; options = {}; } @@ -162786,31 +169072,314 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}' + '/compute/alpha/{+organization}/global/rollouts/{rollout}/resume' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'nodeTemplate'], - pathParams: ['nodeTemplate', 'project', 'region'], + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizationrollouts$Advance extends StandardParameters { /** - * Gets the access control policy for a resource. May be empty if no such - * policy or resource exists. + * Required. Wave number of the current wave. + */ + currentWaveNumber?: string; + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Required. Name of the Rollout resource to advance. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Cancel extends StandardParameters { + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * the rollout without taking any further actions. Note that products must + * support at least one of these options, however, it does not need to support + * both. + */ + rollback?: boolean; + /** + * Name of the Rollout resource to cancel. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Delete extends StandardParameters { + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Name of the Rollout resource to delete. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Get extends StandardParameters { + /** + * Organization ID for this request. + */ + organization?: string; + /** + * Name of the persistent rollout to return. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Required. Organization ID for this request. + */ + organization?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Organizationrollouts$Pause extends StandardParameters { + /** + * The etag of the Rollout. + * If this is provided, the request will only succeed if the etag matches + * the current etag of the Rollout. + */ + etag?: string; + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Required. Name of the Rollout resource to pause. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Resume extends StandardParameters { + /** + * The etag of the Rollout. + * If this is provided, the request will only succeed if the etag matches + * the current etag of the Rollout. + */ + etag?: string; + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Required. Name of the Rollout resource to resume. + */ + rollout?: string; + } + + export class Resource$Organizationsecuritypolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Inserts an association for the specified security policy. + * + * This has billing implications. Projects in the hierarchy with effective + * hierarchical security policies will be automatically enrolled into Cloud + * Armor Enterprise if not already enrolled. + * + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.addAssociation + * instead. * @example * ```js * // Before running the sample: @@ -162834,7 +169403,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -162842,26 +169410,75 @@ export namespace compute_alpha { * const authClient = await auth.getClient(); * google.options({auth: authClient}); * - * // Do the magic - * const res = await compute.nodeTemplates.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}', + * // Do the magic + * const res = await compute.organizationSecurityPolicies.addAssociation({ + * // Indicates whether or not to replace it if an association of the attachment + * // already exists. This is false by default, in which case an error will be + * // returned if an association already exists. + * replaceExistingAssociation: '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). + * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "attachmentId": "my_attachmentId", + * // "displayName": "my_displayName", + * // "excludedFolders": [], + * // "excludedProjects": [], + * // "name": "my_name", + * // "securityPolicyId": "my_securityPolicyId", + * // "shortName": "my_shortName" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -162877,53 +169494,54 @@ export namespace compute_alpha { * @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$Nodetemplates$Getiampolicy, + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Nodetemplates$Getiampolicy, + addAssociation( + params?: Params$Resource$Organizationsecuritypolicies$Addassociation, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, + ): Promise>; + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Nodetemplates$Getiampolicy, - callback: BodyResponseCallback + addAssociation( + params: Params$Resource$Organizationsecuritypolicies$Addassociation, + callback: BodyResponseCallback ): void; - getIamPolicy(callback: BodyResponseCallback): void; - getIamPolicy( + addAssociation(callback: BodyResponseCallback): void; + addAssociation( paramsOrCallback?: - | Params$Resource$Nodetemplates$Getiampolicy - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Addassociation + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Getiampolicy; + {}) as Params$Resource$Organizationsecuritypolicies$Addassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Getiampolicy; + params = + {} as Params$Resource$Organizationsecuritypolicies$Addassociation; options = {}; } @@ -162938,31 +169556,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/addAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a NodeTemplate resource in the specified project using the data - * included in the request. + * Inserts a rule into a security policy. + * + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.addRule instead. * @example * ```js * // Before running the sample: @@ -162994,12 +169615,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.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])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.organizationSecurityPolicies.addRule({ * // 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. @@ -163014,28 +169630,32 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "accelerators": [], - * // "cpuOvercommitType": "my_cpuOvercommitType", - * // "creationTimestamp": "my_creationTimestamp", + * // "action": "my_action", * // "description": "my_description", - * // "disks": [], - * // "id": "my_id", + * // "direction": "my_direction", + * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", - * // "name": "my_name", - * // "nodeAffinityLabels": {}, - * // "nodeType": "my_nodeType", - * // "nodeTypeFlexibility": {}, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "serverBinding": {}, - * // "status": "my_status", - * // "statusMessage": "my_statusMessage" + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {}, + * // "redirectTarget": "my_redirectTarget", + * // "ruleManagedProtectionTier": "my_ruleManagedProtectionTier", + * // "ruleNumber": "my_ruleNumber", + * // "ruleTupleCount": 0, + * // "targetResources": [], + * // "targetServiceAccounts": [] * // } * }, * }); @@ -163086,32 +169706,32 @@ export namespace compute_alpha { * @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$Nodetemplates$Insert, + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Nodetemplates$Insert, + addRule( + params?: Params$Resource$Organizationsecuritypolicies$Addrule, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Nodetemplates$Insert, + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Nodetemplates$Insert, + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Nodetemplates$Insert, + addRule( + params: Params$Resource$Organizationsecuritypolicies$Addrule, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + addRule(callback: BodyResponseCallback): void; + addRule( paramsOrCallback?: - | Params$Resource$Nodetemplates$Insert + | Params$Resource$Organizationsecuritypolicies$Addrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -163127,12 +169747,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Insert; + {}) as Params$Resource$Organizationsecuritypolicies$Addrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Insert; + params = {} as Params$Resource$Organizationsecuritypolicies$Addrule; options = {}; } @@ -163147,7 +169767,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/addRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -163155,8 +169775,8 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { @@ -163170,8 +169790,12 @@ export namespace compute_alpha { } /** - * Retrieves a list of node templates available to the specified - * project. + * Copies rules to the specified security policy. + * + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.cloneRules + * instead. * @example * ```js * // Before running the sample: @@ -163195,7 +169819,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -163204,111 +169827,58 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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. + * const res = await compute.organizationSecurityPolicies.copyRules({ + * // 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. * // - * // 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])?))', - * // The name of the region for 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. + * // 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. * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', + * // The request ID must be + * // a valid UUID with the exception that zero UUID is not supported + * // (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Name of the security policy to update. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * // The security policy from which to copy rules. + * sourceSecurityPolicy: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", - * // "items": [], + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", - * // "warning": {} + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -163324,53 +169894,53 @@ export namespace compute_alpha { * @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$Nodetemplates$List, + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Nodetemplates$List, + copyRules( + params?: Params$Resource$Organizationsecuritypolicies$Copyrules, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Nodetemplates$List, + ): Promise>; + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Nodetemplates$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Nodetemplates$List, - callback: BodyResponseCallback + copyRules( + params: Params$Resource$Organizationsecuritypolicies$Copyrules, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + copyRules(callback: BodyResponseCallback): void; + copyRules( paramsOrCallback?: - | Params$Resource$Nodetemplates$List - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Copyrules + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$List; + {}) as Params$Resource$Organizationsecuritypolicies$Copyrules; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$List; + params = {} as Params$Resource$Organizationsecuritypolicies$Copyrules; options = {}; } @@ -163385,31 +169955,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/copyRules' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Sets the access control policy on the specified resource. - * Replaces any existing policy. + * Deletes the specified policy. + * + * Use this API to remove Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to remove firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.delete instead. * @example * ```js * // Before running the sample: @@ -163441,33 +170014,56 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.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": {} - * // } - * }, + * const res = await compute.organizationSecurityPolicies.delete({ + * // 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). + * requestId: 'placeholder-value', + * // Name of the security policy to delete. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -163483,53 +170079,53 @@ export namespace compute_alpha { * @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$Nodetemplates$Setiampolicy, + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Nodetemplates$Setiampolicy, + delete( + params?: Params$Resource$Organizationsecuritypolicies$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Nodetemplates$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizationsecuritypolicies$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy(callback: BodyResponseCallback): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Nodetemplates$Setiampolicy - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Setiampolicy; + {}) as Params$Resource$Organizationsecuritypolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Setiampolicy; + params = {} as Params$Resource$Organizationsecuritypolicies$Delete; options = {}; } @@ -163544,30 +170140,34 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns permissions that a caller has on the specified resource. + * List all of the ordered rules present in a single specified policy. + * + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.get instead. * @example * ```js * // Before running the sample: @@ -163600,28 +170200,38 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTemplates.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": [] - * // } - * }, + * const res = await compute.organizationSecurityPolicies.get({ + * // Name of the security policy to get. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "cloudArmorConfig": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] * // } * } * @@ -163637,57 +170247,53 @@ export namespace compute_alpha { * @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$Nodetemplates$Testiampermissions, + get( + params: Params$Resource$Organizationsecuritypolicies$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Nodetemplates$Testiampermissions, + get( + params?: Params$Resource$Organizationsecuritypolicies$Get, options?: MethodOptions - ): Promise>; - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Organizationsecuritypolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Nodetemplates$Testiampermissions, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationsecuritypolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationsecuritypolicies$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Nodetemplates$Testiampermissions - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetemplates$Testiampermissions; + {}) as Params$Resource$Organizationsecuritypolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetemplates$Testiampermissions; + params = {} as Params$Resource$Organizationsecuritypolicies$Get; options = {}; } @@ -163702,399 +170308,193 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['project', 'region', 'resource'], - pathParams: ['project', 'region', 'resource'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Nodetemplates$Aggregatedlist extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * Project ID for this request. - */ - project?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Nodetemplates$Delete extends StandardParameters { /** - * Name of the NodeTemplate resource to delete. - */ - nodeTemplate?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for 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. + * Gets an association with the specified name. * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - } - export interface Params$Resource$Nodetemplates$Get extends StandardParameters { - /** - * Name of the node template to return. - */ - nodeTemplate?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - } - export interface Params$Resource$Nodetemplates$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$Nodetemplates$Insert extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for 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. + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.getAssociation + * instead. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * 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. + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The request ID must be - * a valid UUID with the exception that zero UUID is not supported - * (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$NodeTemplate; - } - export interface Params$Resource$Nodetemplates$List extends StandardParameters { - /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. + * 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', + * ], + * }); * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The operator - * must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, if you are filtering Compute Engine instances, you can - * exclude instances named `example-instance` by specifying - * `name != example-instance`. + * // Do the magic + * const res = await compute.organizationSecurityPolicies.getAssociation({ + * // The name of the association to get from the security policy. + * name: 'placeholder-value', + * // Name of the security policy to which the queried rule belongs. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * }); + * console.log(res.data); * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` + * // Example response + * // { + * // "attachmentId": "my_attachmentId", + * // "displayName": "my_displayName", + * // "excludedFolders": [], + * // "excludedProjects": [], + * // "name": "my_name", + * // "securityPolicyId": "my_securityPolicyId", + * // "shortName": "my_shortName" + * // } + * } * - * 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 onresource labels. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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) * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: - * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` - * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. - * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. - * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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; - /** - * The name of the region for this request. - */ - region?: string; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. - * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - } - export interface Params$Resource$Nodetemplates$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. + * + * @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. */ - resource?: string; + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, + options: StreamMethodOptions + ): Promise>; + getAssociation( + params?: Params$Resource$Organizationsecuritypolicies$Getassociation, + options?: MethodOptions + ): Promise>; + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getAssociation( + params: Params$Resource$Organizationsecuritypolicies$Getassociation, + callback: BodyResponseCallback + ): void; + getAssociation( + callback: BodyResponseCallback + ): void; + getAssociation( + paramsOrCallback?: + | Params$Resource$Organizationsecuritypolicies$Getassociation + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$Getassociation; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$RegionSetPolicyRequest; - } - export interface Params$Resource$Nodetemplates$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; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Organizationsecuritypolicies$Getassociation; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$TestPermissionsRequest; - } + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - export class Resource$Nodetypes { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/getAssociation' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Retrieves an aggregated list of node types. + * Gets a rule at the specified priority. * - * To prevent failure, Google recommends that you set the - * `returnPartialSuccess` parameter to `true`. + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.getRule instead. * @example * ```js * // Before running the sample: @@ -164127,121 +170527,35 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTypes.aggregatedList({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // 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])?))', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * // The Shared VPC service project id or service project number for which - * // aggregated list request is invoked for subnetworks list-usable api. - * serviceProjectNumber: 'placeholder-value', + * const res = await compute.organizationSecurityPolicies.getRule({ + * // The priority of the rule to get from the security policy. + * priority: 'placeholder-value', + * // Name of the security policy to which the queried rule belongs. + * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "id": "my_id", - * // "items": {}, + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", - * // "unreachables": [], - * // "warning": {} + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {}, + * // "redirectTarget": "my_redirectTarget", + * // "ruleManagedProtectionTier": "my_ruleManagedProtectionTier", + * // "ruleNumber": "my_ruleNumber", + * // "ruleTupleCount": 0, + * // "targetResources": [], + * // "targetServiceAccounts": [] * // } * } * @@ -164257,57 +170571,53 @@ export namespace compute_alpha { * @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$Nodetypes$Aggregatedlist, + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, options: StreamMethodOptions ): Promise>; - aggregatedList( - params?: Params$Resource$Nodetypes$Aggregatedlist, + getRule( + params?: Params$Resource$Organizationsecuritypolicies$Getrule, options?: MethodOptions - ): Promise>; - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, + ): Promise>; + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - aggregatedList( - params: Params$Resource$Nodetypes$Aggregatedlist, - callback: BodyResponseCallback + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - aggregatedList( - callback: BodyResponseCallback + getRule( + params: Params$Resource$Organizationsecuritypolicies$Getrule, + callback: BodyResponseCallback ): void; - aggregatedList( + getRule(callback: BodyResponseCallback): void; + getRule( paramsOrCallback?: - | Params$Resource$Nodetypes$Aggregatedlist - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Getrule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Nodetypes$Aggregatedlist; + {}) as Params$Resource$Organizationsecuritypolicies$Getrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetypes$Aggregatedlist; + params = {} as Params$Resource$Organizationsecuritypolicies$Getrule; options = {}; } @@ -164321,7 +170631,8 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/projects/{project}/aggregated/nodeTypes' + rootUrl + + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/getRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -164329,22 +170640,27 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project'], - pathParams: ['project'], + requiredParams: ['securityPolicy'], + pathParams: ['securityPolicy'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Returns the specified node type. + * Creates a new policy in the specified organization using the data included + * in the request. + * + * Use this API to add Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to add firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.insert instead. * @example * ```js * // Before running the sample: @@ -164368,7 +170684,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -164377,32 +170692,88 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTypes.get({ - * // Name of the node type to return. - * nodeType: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', - * // 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 zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * const res = await compute.organizationSecurityPolicies.insert({ + * // Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" + * // if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the + * // parent is an organization. + * parentId: '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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "cloudArmorConfig": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, + * // "description": "my_description", + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", + * // "ruleTupleCount": 0, + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "cpuPlatform": "my_cpuPlatform", + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "deprecated": {}, * // "description": "my_description", - * // "guestCpus": 0, + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "localSsdGb": 0, - * // "maxVms": 0, - * // "memoryMb": 0, * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], * // "zone": "my_zone" * // } * } @@ -164419,52 +170790,53 @@ export namespace compute_alpha { * @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$Nodetypes$Get, + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Nodetypes$Get, + insert( + params?: Params$Resource$Organizationsecuritypolicies$Insert, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Nodetypes$Get, + ): Promise>; + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetypes$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Nodetypes$Get, - callback: BodyResponseCallback + insert( + params: Params$Resource$Organizationsecuritypolicies$Insert, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Nodetypes$Get - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Insert + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$Get; + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetypes$Get; + params = {} as Params$Resource$Organizationsecuritypolicies$Insert; options = {}; } @@ -164478,32 +170850,35 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeTypes/{nodeType}' + rootUrl + '/compute/alpha/locations/global/securityPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['project', 'zone', 'nodeType'], - pathParams: ['nodeType', 'project', 'zone'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Retrieves a list of node types available to the specified - * project. + * List all the policies that have been configured for the specified + * organization. + * + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is now + * disabled for most organizations. Use firewallPolicies.list instead. * @example * ```js * // Before running the sample: @@ -164536,7 +170911,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.nodeTypes.list({ + * const res = await compute.organizationSecurityPolicies.list({ * // A filter expression that filters resources listed in the response. Most * // Compute resources support two types of filter expressions: * // expressions that support regular expressions and expressions that follow @@ -164618,9 +170993,8 @@ export namespace compute_alpha { * // `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])?))', + * // Parent ID for this request. + * parentId: 'placeholder-value', * // Opt-in for partial success behavior which provides partial results in case * // of failure. The default value is false. * // @@ -164628,18 +171002,17 @@ export namespace compute_alpha { * // single zone scope either returns all resources in the zone or no resources, * // with an error code. * returnPartialSuccess: 'placeholder-value', - * // The name of the zone for this request. - * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { + * // "etag": "my_etag", * // "id": "my_id", * // "items": [], * // "kind": "my_kind", * // "nextPageToken": "my_nextPageToken", - * // "selfLink": "my_selfLink", + * // "unreachables": [], * // "warning": {} * // } * } @@ -164657,51 +171030,52 @@ export namespace compute_alpha { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Nodetypes$List, + params: Params$Resource$Organizationsecuritypolicies$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Nodetypes$List, + params?: Params$Resource$Organizationsecuritypolicies$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Nodetypes$List, + params: Params$Resource$Organizationsecuritypolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Nodetypes$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Organizationsecuritypolicies$List, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Nodetypes$List, - callback: BodyResponseCallback + params: Params$Resource$Organizationsecuritypolicies$List, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; + list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Nodetypes$List - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { - let params = (paramsOrCallback || {}) as Params$Resource$Nodetypes$List; + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Nodetypes$List; + params = {} as Params$Resource$Organizationsecuritypolicies$List; options = {}; } @@ -164715,8 +171089,7 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + - '/compute/alpha/projects/{project}/zones/{zone}/nodeTypes' + rootUrl + '/compute/alpha/locations/global/securityPolicies' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -164724,280 +171097,427 @@ export namespace compute_alpha { options ), params, - requiredParams: ['project', 'zone'], - pathParams: ['project', 'zone'], + requiredParams: [], + pathParams: [], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Nodetypes$Aggregatedlist extends StandardParameters { /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource labels. + * Lists associations of a specified target, i.e., organization or folder. * - * 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) - * ``` + * Use this API to read Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to read firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.listAssociations + * instead. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * 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', + * ], + * }); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Do the magic + * const res = await compute.organizationSecurityPolicies.listAssociations({ + * // The target resource to list associations. It is an organization, or a + * // folder. + * targetResource: 'placeholder-value', + * }); + * console.log(res.data); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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. + * // Example response + * // { + * // "associations": [], + * // "kind": "my_kind" + * // } + * } * - * 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. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * ``` * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The Shared VPC service project id or service project number for which - * aggregated list request is invoked for subnetworks list-usable api. - */ - serviceProjectNumber?: string; - } - export interface Params$Resource$Nodetypes$Get extends StandardParameters { - /** - * Name of the node type to return. - */ - nodeType?: string; - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the zone for this request. + * @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. */ - zone?: string; - } - export interface Params$Resource$Nodetypes$List extends StandardParameters { + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, + options: StreamMethodOptions + ): Promise>; + listAssociations( + params?: Params$Resource$Organizationsecuritypolicies$Listassociations, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listAssociations( + params: Params$Resource$Organizationsecuritypolicies$Listassociations, + callback: BodyResponseCallback + ): void; + listAssociations( + callback: BodyResponseCallback + ): void; + listAssociations( + paramsOrCallback?: + | Params$Resource$Organizationsecuritypolicies$Listassociations + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$Listassociations; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Organizationsecuritypolicies$Listassociations; + 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/locations/global/securityPolicies/listAssociations' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + /** - * A filter expression that filters resources listed in the response. Most - * Compute resources support two types of filter expressions: - * expressions that support regular expressions and expressions that follow - * API improvement proposal AIP-160. - * These two types of filter expressions cannot be mixed in one request. - * - * If you want to use AIP-160, your expression must specify the field name, an - * operator, and the value that you want to use for filtering. The value - * must be a string, a number, or a boolean. The 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`. - * - * The `:*` comparison can be used to test whether a key has been defined. - * For example, to find all objects with `owner` label use: - * ``` - * labels.owner:* - * ``` - * - * 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 onresource 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) - * ``` - * - * If you want to use a regular expression, use the `eq` (equal) or `ne` - * (not equal) operator against a single un-parenthesized expression with or - * without quotes or against multiple parenthesized expressions. Examples: + * Gets the current list of preconfigured Web Application Firewall (WAF) + * expressions. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * `fieldname eq unquoted literal` - * `fieldname eq 'single quoted literal'` - * `fieldname eq "double quoted literal"` - * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * const {google} = require('googleapis'); + * const compute = google.compute('alpha'); * - * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * The literal value must match the entire field. + * 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', + * ], + * }); * - * For example, to filter for instances that do not end with name "instance", - * you would use `name ne .*instance`. + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * You cannot combine constraints on multiple fields using regular - * expressions. - */ - 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. + * // Do the magic + * const res = + * await compute.organizationSecurityPolicies.listPreconfiguredExpressionSets({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Parent ID for this request. + * parentId: 'placeholder-value', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); * - * 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. + * // Example response + * // { + * // "preconfiguredExpressionSets": {} + * // } + * } * - * 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; - /** - * Opt-in for partial success behavior which provides partial results in case - * of failure. The default value is false. + * main().catch(e => { + * console.error(e); + * throw e; + * }); * - * For example, when partial success behavior is enabled, aggregatedList for a - * single zone scope either returns all resources in the zone or no resources, - * with an error code. - */ - returnPartialSuccess?: boolean; - /** - * The name of the zone for this request. + * ``` + * + * @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. */ - zone?: string; - } + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + options: StreamMethodOptions + ): Promise>; + listPreconfiguredExpressionSets( + params?: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + listPreconfiguredExpressionSets( + params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + callback: BodyResponseCallback + ): void; + listPreconfiguredExpressionSets( + callback: BodyResponseCallback + ): void; + listPreconfiguredExpressionSets( + paramsOrCallback?: + | Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; + let options = (optionsOrCallback || {}) as MethodOptions; - export class Resource$Organizationsecuritypolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; + 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/locations/global/securityPolicies/listPreconfiguredExpressionSets' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: [], + pathParams: [], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } } /** - * Inserts an association for the specified security policy. - * - * This has billing implications. Projects in the hierarchy with effective - * hierarchical security policies will be automatically enrolled into Cloud - * Armor Enterprise if not already enrolled. + * Moves the specified security policy. * * Use this API to modify Cloud Armor policies. Previously, alpha and beta * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.addAssociation - * instead. + * now disabled for most organizations. Use firewallPolicies.move instead. * @example * ```js * // Before running the sample: @@ -165029,11 +171549,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.addAssociation({ - * // Indicates whether or not to replace it if an association of the attachment - * // already exists. This is false by default, in which case an error will be - * // returned if an association already exists. - * replaceExistingAssociation: 'placeholder-value', + * const res = await compute.organizationSecurityPolicies.move({ + * // The new parent of the security policy. + * parentId: '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. @@ -165050,20 +171568,6 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "attachmentId": "my_attachmentId", - * // "displayName": "my_displayName", - * // "excludedFolders": [], - * // "excludedProjects": [], - * // "name": "my_name", - * // "securityPolicyId": "my_securityPolicyId", - * // "shortName": "my_shortName" - * // } - * }, * }); * console.log(res.data); * @@ -165112,32 +171616,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, options: StreamMethodOptions ): Promise>; - addAssociation( - params?: Params$Resource$Organizationsecuritypolicies$Addassociation, + move( + params?: Params$Resource$Organizationsecuritypolicies$Move, options?: MethodOptions ): Promise>; - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addAssociation( - params: Params$Resource$Organizationsecuritypolicies$Addassociation, + move( + params: Params$Resource$Organizationsecuritypolicies$Move, callback: BodyResponseCallback ): void; - addAssociation(callback: BodyResponseCallback): void; - addAssociation( + move(callback: BodyResponseCallback): void; + move( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Addassociation + | Params$Resource$Organizationsecuritypolicies$Move | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165153,13 +171657,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Addassociation; + {}) as Params$Resource$Organizationsecuritypolicies$Move; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsecuritypolicies$Addassociation; + params = {} as Params$Resource$Organizationsecuritypolicies$Move; options = {}; } @@ -165174,7 +171677,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/addAssociation' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/move' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -165197,11 +171700,11 @@ export namespace compute_alpha { } /** - * Inserts a rule into a security policy. + * Patches the specified policy with the data included in the request. * * Use this API to modify Cloud Armor policies. Previously, alpha and beta * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.addRule instead. + * now disabled for most organizations. Use firewallPolicies.patch instead. * @example * ```js * // Before running the sample: @@ -165233,7 +171736,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.addRule({ + * const res = await compute.organizationSecurityPolicies.patch({ * // 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. @@ -165250,30 +171753,37 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * // Indicates fields to be cleared as part of this request. + * updateMask: 'placeholder-value', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "action": "my_action", + * // "adaptiveProtectionConfig": {}, + * // "advancedOptionsConfig": {}, + * // "associations": [], + * // "cloudArmorConfig": {}, + * // "creationTimestamp": "my_creationTimestamp", + * // "ddosProtectionConfig": {}, * // "description": "my_description", - * // "direction": "my_direction", - * // "enableLogging": false, - * // "headerAction": {}, + * // "displayName": "my_displayName", + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {}, - * // "redirectTarget": "my_redirectTarget", - * // "ruleManagedProtectionTier": "my_ruleManagedProtectionTier", - * // "ruleNumber": "my_ruleNumber", + * // "labelFingerprint": "my_labelFingerprint", + * // "labels": {}, + * // "name": "my_name", + * // "parent": "my_parent", + * // "recaptchaOptionsConfig": {}, + * // "region": "my_region", * // "ruleTupleCount": 0, - * // "targetResources": [], - * // "targetServiceAccounts": [] + * // "rules": [], + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "shortName": "my_shortName", + * // "type": "my_type", + * // "userDefinedFields": [] * // } * }, * }); @@ -165324,32 +171834,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, options: StreamMethodOptions ): Promise>; - addRule( - params?: Params$Resource$Organizationsecuritypolicies$Addrule, + patch( + params?: Params$Resource$Organizationsecuritypolicies$Patch, options?: MethodOptions ): Promise>; - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addRule( - params: Params$Resource$Organizationsecuritypolicies$Addrule, + patch( + params: Params$Resource$Organizationsecuritypolicies$Patch, callback: BodyResponseCallback ): void; - addRule(callback: BodyResponseCallback): void; - addRule( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Addrule + | Params$Resource$Organizationsecuritypolicies$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165365,12 +171875,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Addrule; + {}) as Params$Resource$Organizationsecuritypolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Addrule; + params = {} as Params$Resource$Organizationsecuritypolicies$Patch; options = {}; } @@ -165385,9 +171895,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/addRule' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options @@ -165408,11 +171918,11 @@ export namespace compute_alpha { } /** - * Copies rules to the specified security policy. + * Patches a rule at the specified priority. * * Use this API to modify Cloud Armor policies. Previously, alpha and beta * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.cloneRules + * now disabled for most organizations. Use firewallPolicies.patchRule * instead. * @example * ```js @@ -165445,7 +171955,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.copyRules({ + * const res = await compute.organizationSecurityPolicies.patchRule({ + * // The priority of the rule to patch. + * priority: '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. @@ -165462,8 +171974,34 @@ export namespace compute_alpha { * requestId: 'placeholder-value', * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * // The security policy from which to copy rules. - * sourceSecurityPolicy: 'placeholder-value', + * // Indicates fields to be cleared as part of this request. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "description": "my_description", + * // "direction": "my_direction", + * // "enableLogging": false, + * // "headerAction": {}, + * // "kind": "my_kind", + * // "match": {}, + * // "networkMatch": {}, + * // "preconfiguredWafConfig": {}, + * // "preview": false, + * // "priority": 0, + * // "rateLimitOptions": {}, + * // "redirectOptions": {}, + * // "redirectTarget": "my_redirectTarget", + * // "ruleManagedProtectionTier": "my_ruleManagedProtectionTier", + * // "ruleNumber": "my_ruleNumber", + * // "ruleTupleCount": 0, + * // "targetResources": [], + * // "targetServiceAccounts": [] + * // } + * }, * }); * console.log(res.data); * @@ -165512,32 +172050,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, options: StreamMethodOptions ): Promise>; - copyRules( - params?: Params$Resource$Organizationsecuritypolicies$Copyrules, + patchRule( + params?: Params$Resource$Organizationsecuritypolicies$Patchrule, options?: MethodOptions ): Promise>; - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - copyRules( - params: Params$Resource$Organizationsecuritypolicies$Copyrules, + patchRule( + params: Params$Resource$Organizationsecuritypolicies$Patchrule, callback: BodyResponseCallback ): void; - copyRules(callback: BodyResponseCallback): void; - copyRules( + patchRule(callback: BodyResponseCallback): void; + patchRule( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Copyrules + | Params$Resource$Organizationsecuritypolicies$Patchrule | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165553,12 +172091,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Copyrules; + {}) as Params$Resource$Organizationsecuritypolicies$Patchrule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Copyrules; + params = {} as Params$Resource$Organizationsecuritypolicies$Patchrule; options = {}; } @@ -165573,7 +172111,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/copyRules' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/patchRule' ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', @@ -165596,11 +172134,12 @@ export namespace compute_alpha { } /** - * Deletes the specified policy. + * Removes an association for the specified security policy. * - * Use this API to remove Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to remove firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.delete instead. + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.removeAssociation + * instead. * @example * ```js * // Before running the sample: @@ -165632,7 +172171,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.delete({ + * const res = await compute.organizationSecurityPolicies.removeAssociation({ + * // Name for the attachment that will be removed. + * name: '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. @@ -165647,7 +172188,7 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the security policy to delete. + * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); @@ -165697,32 +172238,32 @@ export namespace compute_alpha { * @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$Organizationsecuritypolicies$Delete, + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Organizationsecuritypolicies$Delete, + removeAssociation( + params?: Params$Resource$Organizationsecuritypolicies$Removeassociation, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizationsecuritypolicies$Delete, + removeAssociation( + params: Params$Resource$Organizationsecuritypolicies$Removeassociation, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + removeAssociation(callback: BodyResponseCallback): void; + removeAssociation( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Delete + | Params$Resource$Organizationsecuritypolicies$Removeassociation | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -165738,12 +172279,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Delete; + {}) as Params$Resource$Organizationsecuritypolicies$Removeassociation; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Delete; + params = + {} as Params$Resource$Organizationsecuritypolicies$Removeassociation; options = {}; } @@ -165758,9 +172300,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/removeAssociation' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'POST', apiVersion: '', }, options @@ -165781,11 +172323,12 @@ export namespace compute_alpha { } /** - * List all of the ordered rules present in a single specified policy. + * Deletes a rule at the specified priority. * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.get instead. + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.removeRule + * instead. * @example * ```js * // Before running the sample: @@ -165809,7 +172352,6 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', - * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -165818,38 +172360,58 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.get({ - * // Name of the security policy to get. + * const res = await compute.organizationSecurityPolicies.removeRule({ + * // The priority of the rule to remove from the security policy. + * priority: '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). + * requestId: 'placeholder-value', + * // Name of the security policy to update. * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "cloudArmorConfig": {}, + * // "clientOperationId": "my_clientOperationId", * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, * // "name": "my_name", - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" * // } * } * @@ -165865,53 +172427,53 @@ export namespace compute_alpha { * @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$Organizationsecuritypolicies$Get, + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Organizationsecuritypolicies$Get, + removeRule( + params?: Params$Resource$Organizationsecuritypolicies$Removerule, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizationsecuritypolicies$Get, + ): Promise>; + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizationsecuritypolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizationsecuritypolicies$Get, - callback: BodyResponseCallback + removeRule( + params: Params$Resource$Organizationsecuritypolicies$Removerule, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + removeRule(callback: BodyResponseCallback): void; + removeRule( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Get - | BodyResponseCallback + | Params$Resource$Organizationsecuritypolicies$Removerule + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Get; + {}) as Params$Resource$Organizationsecuritypolicies$Removerule; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Get; + params = {} as Params$Resource$Organizationsecuritypolicies$Removerule; options = {}; } @@ -165926,9 +172488,9 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}' + '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/removeRule' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -165939,180 +172501,547 @@ export namespace compute_alpha { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizationsecuritypolicies$Addassociation extends StandardParameters { /** - * Gets an association with the specified name. + * Indicates whether or not to replace it if an association of the attachment + * already exists. This is false by default, in which case an error will be + * returned if an association already exists. + */ + replaceExistingAssociation?: boolean; + /** + * 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. * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.getAssociation - * instead. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ npm install googleapis - * // ``` + * 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. * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyAssociation; + } + export interface Params$Resource$Organizationsecuritypolicies$Addrule extends StandardParameters { + /** + * 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. * - * 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', - * ], - * }); + * 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. * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyRule; + } + export interface Params$Resource$Organizationsecuritypolicies$Copyrules extends StandardParameters { + /** + * 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. * - * // Do the magic - * const res = await compute.organizationSecurityPolicies.getAssociation({ - * // The name of the association to get from the security policy. - * name: 'placeholder-value', - * // Name of the security policy to which the queried rule belongs. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * }); - * console.log(res.data); + * 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. * - * // Example response - * // { - * // "attachmentId": "my_attachmentId", - * // "displayName": "my_displayName", - * // "excludedFolders": [], - * // "excludedProjects": [], - * // "name": "my_name", - * // "securityPolicyId": "my_securityPolicyId", - * // "shortName": "my_shortName" - * // } - * } + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * The security policy from which to copy rules. + */ + sourceSecurityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Delete extends StandardParameters { + /** + * 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). + */ + requestId?: string; + /** + * Name of the security policy to delete. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Get extends StandardParameters { + /** + * Name of the security policy to get. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Getassociation extends StandardParameters { + /** + * The name of the association to get from the security policy. + */ + name?: string; + /** + * Name of the security policy to which the queried rule belongs. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Getrule extends StandardParameters { + /** + * The priority of the rule to get from the security policy. + */ + priority?: number; + /** + * Name of the security policy to which the queried rule belongs. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Insert extends StandardParameters { + /** + * Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" + * if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the + * parent is an organization. + */ + parentId?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicy; + } + export interface Params$Resource$Organizationsecuritypolicies$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Parent ID for this request. + */ + parentId?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Organizationsecuritypolicies$Listassociations extends StandardParameters { + /** + * The target resource to list associations. It is an organization, or a + * folder. + */ + targetResource?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Parent ID for this request. + */ + parentId?: string; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Organizationsecuritypolicies$Move extends StandardParameters { + /** + * The new parent of the security policy. + */ + parentId?: 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Patch extends StandardParameters { + /** + * 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * Indicates fields to be cleared as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicy; + } + export interface Params$Resource$Organizationsecuritypolicies$Patchrule extends StandardParameters { + /** + * The priority of the rule to patch. + */ + priority?: number; + /** + * 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). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + /** + * Indicates fields to be cleared as part of this request. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityPolicyRule; + } + export interface Params$Resource$Organizationsecuritypolicies$Removeassociation extends StandardParameters { + /** + * Name for the attachment that will be removed. + */ + name?: 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. * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } + export interface Params$Resource$Organizationsecuritypolicies$Removerule extends StandardParameters { + /** + * The priority of the rule to remove from the security policy. + */ + priority?: number; + /** + * 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, - options: StreamMethodOptions - ): Promise>; - getAssociation( - params?: Params$Resource$Organizationsecuritypolicies$Getassociation, - options?: MethodOptions - ): Promise>; - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getAssociation( - params: Params$Resource$Organizationsecuritypolicies$Getassociation, - callback: BodyResponseCallback - ): void; - getAssociation( - callback: BodyResponseCallback - ): void; - getAssociation( - paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Getassociation - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Getassociation; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsecuritypolicies$Getassociation; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + requestId?: string; + /** + * Name of the security policy to update. + */ + securityPolicy?: string; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/getAssociation' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } + export class Resource$Organizationsnapshotrecyclebinpolicy { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Gets a rule at the specified priority. - * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.getRule instead. + * Returns the specified SnapshotRecycleBinPolicy. * @example * ```js * // Before running the sample: @@ -166145,35 +173074,16 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.getRule({ - * // The priority of the rule to get from the security policy. - * priority: 'placeholder-value', - * // Name of the security policy to which the queried rule belongs. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * const res = await compute.organizationSnapshotRecycleBinPolicy.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * }); * console.log(res.data); * * // Example response * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "enableLogging": false, - * // "headerAction": {}, - * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {}, - * // "redirectTarget": "my_redirectTarget", - * // "ruleManagedProtectionTier": "my_ruleManagedProtectionTier", - * // "ruleNumber": "my_ruleNumber", - * // "ruleTupleCount": 0, - * // "targetResources": [], - * // "targetServiceAccounts": [] + * // "rules": {}, + * // "systemRules": {} * // } * } * @@ -166189,53 +173099,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, + get( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, options: StreamMethodOptions ): Promise>; - getRule( - params?: Params$Resource$Organizationsecuritypolicies$Getrule, + get( + params?: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, options?: MethodOptions - ): Promise>; - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, + ): Promise>; + get( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getRule( - params: Params$Resource$Organizationsecuritypolicies$Getrule, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, + callback: BodyResponseCallback ): void; - getRule(callback: BodyResponseCallback): void; - getRule( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Getrule - | BodyResponseCallback + | Params$Resource$Organizationsnapshotrecyclebinpolicy$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Getrule; + {}) as Params$Resource$Organizationsnapshotrecyclebinpolicy$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Getrule; + params = {} as Params$Resource$Organizationsnapshotrecyclebinpolicy$Get; options = {}; } @@ -166250,7 +173162,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/getRule' + '/compute/alpha/{+organization}/global/snapshotRecycleBinPolicy' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -166258,27 +173170,22 @@ export namespace compute_alpha { options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new policy in the specified organization using the data included - * in the request. - * - * Use this API to add Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to add firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.insert instead. + * Patches the SnapshotRecycleBinPolicy. * @example * ```js * // Before running the sample: @@ -166310,11 +173217,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.insert({ - * // Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" - * // if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the - * // parent is an organization. - * parentId: 'placeholder-value', + * const res = await compute.organizationSnapshotRecycleBinPolicy.patch({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // 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. @@ -166334,30 +173239,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "cloudArmorConfig": {}, - * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, - * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", - * // "id": "my_id", - * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, - * // "name": "my_name", - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] + * // "rules": {}, + * // "systemRules": {} * // } * }, * }); @@ -166408,32 +173291,32 @@ export namespace compute_alpha { * @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$Organizationsecuritypolicies$Insert, + patch( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, options: StreamMethodOptions ): Promise>; - insert( - params?: Params$Resource$Organizationsecuritypolicies$Insert, + patch( + params?: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, options?: MethodOptions ): Promise>; - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + patch( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + patch( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - insert( - params: Params$Resource$Organizationsecuritypolicies$Insert, + patch( + params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, callback: BodyResponseCallback ): void; - insert(callback: BodyResponseCallback): void; - insert( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Insert + | Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -166449,12 +173332,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Insert; + {}) as Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Insert; + params = + {} as Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch; options = {}; } @@ -166468,16 +173352,17 @@ export namespace compute_alpha { options: Object.assign( { url: ( - rootUrl + '/compute/alpha/locations/global/securityPolicies' + rootUrl + + '/compute/alpha/{+organization}/global/snapshotRecycleBinPolicy' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['organization'], + pathParams: ['organization'], context: this.context, }; if (callback) { @@ -166489,408 +173374,51 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizationsnapshotrecyclebinpolicy$Get extends StandardParameters { /** - * List all the policies that have been configured for the specified - * organization. - * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is now - * disabled for most organizations. Use firewallPolicies.list instead. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.organizationSecurityPolicies.list({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // Parent ID for this request. - * parentId: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "etag": "my_etag", - * // "id": "my_id", - * // "items": [], - * // "kind": "my_kind", - * // "nextPageToken": "my_nextPageToken", - * // "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. + * Organization ID for this request. */ - list( - params: Params$Resource$Organizationsecuritypolicies$List, - options: StreamMethodOptions - ): Promise>; - list( - params?: Params$Resource$Organizationsecuritypolicies$List, - options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Organizationsecuritypolicies$List, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Organizationsecuritypolicies$List, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Organizationsecuritypolicies$List, - callback: BodyResponseCallback - ): void; - list(callback: BodyResponseCallback): void; - list( - paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$List - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$List; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$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/alpha/locations/global/securityPolicies' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - + organization?: string; + } + export interface Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch extends StandardParameters { /** - * Lists associations of a specified target, i.e., organization or folder. - * - * Use this API to read Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to read firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.listAssociations - * instead. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.organizationSecurityPolicies.listAssociations({ - * // The target resource to list associations. It is an organization, or a - * // folder. - * targetResource: 'placeholder-value', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "associations": [], - * // "kind": "my_kind" - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); + * Organization ID for this request. + */ + organization?: 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. * - * @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. + * The request ID must be + * a valid UUID with the exception that zero UUID is not supported + * (00000000-0000-0000-0000-000000000000). */ - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, - options: StreamMethodOptions - ): Promise>; - listAssociations( - params?: Params$Resource$Organizationsecuritypolicies$Listassociations, - options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listAssociations( - params: Params$Resource$Organizationsecuritypolicies$Listassociations, - callback: BodyResponseCallback - ): void; - listAssociations( - callback: BodyResponseCallback - ): void; - listAssociations( - paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Listassociations - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise< - GaxiosResponseWithHTTP2 - > - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Listassociations; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsecuritypolicies$Listassociations; - options = {}; - } + requestId?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * Request body metadata + */ + requestBody?: Schema$SnapshotRecycleBinPolicy; + } - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/locations/global/securityPolicies/listAssociations' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: [], - pathParams: [], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + export class Resource$Organizationzonevmextensionpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Gets the current list of preconfigured Web Application Firewall (WAF) - * expressions. + * Retrieves details of a specific zone VM extension policy within an + * organization. * @example * ```js * // Before running the sample: @@ -166923,104 +173451,32 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await compute.organizationSecurityPolicies.listPreconfiguredExpressionSets({ - * // A filter expression that filters resources listed in the response. Most - * // Compute resources support two types of filter expressions: - * // expressions that support regular expressions and expressions that follow - * // API improvement proposal AIP-160. - * // These two types of filter expressions cannot be mixed in one request. - * // - * // If you want to use AIP-160, your expression must specify the field name, an - * // operator, and the value that you want to use for filtering. The value - * // must be a string, a number, or a boolean. The 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`. - * // - * // The `:*` comparison can be used to test whether a key has been defined. - * // For example, to find all objects with `owner` label use: - * // ``` - * // labels.owner:* - * // ``` - * // - * // 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 onresource 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) - * // ``` - * // - * // If you want to use a regular expression, use the `eq` (equal) or `ne` - * // (not equal) operator against a single un-parenthesized expression with or - * // without quotes or against multiple parenthesized expressions. Examples: - * // - * // `fieldname eq unquoted literal` - * // `fieldname eq 'single quoted literal'` - * // `fieldname eq "double quoted literal"` - * // `(fieldname1 eq literal) (fieldname2 ne "literal")` - * // - * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. - * // The literal value must match the entire field. - * // - * // For example, to filter for instances that do not end with name "instance", - * // you would use `name ne .*instance`. - * // - * // You cannot combine constraints on multiple fields using regular - * // expressions. - * 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', - * // Parent ID for this request. - * parentId: 'placeholder-value', - * // Opt-in for partial success behavior which provides partial results in case - * // of failure. The default value is false. - * // - * // For example, when partial success behavior is enabled, aggregatedList for a - * // single zone scope either returns all resources in the zone or no resources, - * // with an error code. - * returnPartialSuccess: 'placeholder-value', - * }); + * const res = await compute.organizationZoneVmExtensionPolicies.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the VM extension policy resource to return. + * vmExtensionPolicy: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); * console.log(res.data); * * // Example response * // { - * // "preconfiguredExpressionSets": {} + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * } * @@ -167036,62 +173492,53 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, options: StreamMethodOptions ): Promise>; - listPreconfiguredExpressionSets( - params?: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + get( + params?: Params$Resource$Organizationzonevmextensionpolicies$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, + ): Promise>; + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listPreconfiguredExpressionSets( - params: Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listPreconfiguredExpressionSets( - callback: BodyResponseCallback + get( + params: Params$Resource$Organizationzonevmextensionpolicies$Get, + callback: BodyResponseCallback ): void; - listPreconfiguredExpressionSets( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets; + params = {} as Params$Resource$Organizationzonevmextensionpolicies$Get; options = {}; } @@ -167106,7 +173553,7 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/listPreconfiguredExpressionSets' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', @@ -167114,28 +173561,22 @@ export namespace compute_alpha { options ), params, - requiredParams: [], - pathParams: [], + requiredParams: ['organization', 'zone', 'vmExtensionPolicy'], + pathParams: ['organization', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Moves the specified security policy. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.move instead. + * Retrieves details of a specific VM extension within an organization. * @example * ```js * // Before running the sample: @@ -167159,6 +173600,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -167167,58 +173609,19 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.move({ - * // The new parent of the security policy. - * parentId: '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). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * const res = await compute.organizationZoneVmExtensionPolicies.getVmExtension({ + * extensionName: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, - * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, - * // "kind": "my_kind", * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", - * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "versions": [] * // } * } * @@ -167234,53 +173637,54 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - move( - params: Params$Resource$Organizationsecuritypolicies$Move, + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions ): Promise>; - move( - params?: Params$Resource$Organizationsecuritypolicies$Move, + getVmExtension( + params?: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, options?: MethodOptions - ): Promise>; - move( - params: Params$Resource$Organizationsecuritypolicies$Move, + ): Promise>; + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Organizationsecuritypolicies$Move, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - move( - params: Params$Resource$Organizationsecuritypolicies$Move, - callback: BodyResponseCallback + getVmExtension( + params: Params$Resource$Organizationzonevmextensionpolicies$Getvmextension, + callback: BodyResponseCallback ): void; - move(callback: BodyResponseCallback): void; - move( + getVmExtension(callback: BodyResponseCallback): void; + getVmExtension( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Move - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Getvmextension + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Move; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Getvmextension; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Move; + params = + {} as Params$Resource$Organizationzonevmextensionpolicies$Getvmextension; options = {}; } @@ -167295,34 +173699,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/move' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensions/{extensionName}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone', 'extensionName'], + pathParams: ['extensionName', 'organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Patches the specified policy with the data included in the request. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.patch instead. + * Creates a new zone-level VM extension policy within an organization. * @example * ```js * // Before running the sample: @@ -167354,7 +173754,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.patch({ + * const res = await compute.organizationZoneVmExtensionPolicies.insert({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // 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. @@ -167369,39 +173771,27 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * // Indicates fields to be cleared as part of this request. - * updateMask: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * * // Request body metadata * requestBody: { * // request body parameters * // { - * // "adaptiveProtectionConfig": {}, - * // "advancedOptionsConfig": {}, - * // "associations": [], - * // "cloudArmorConfig": {}, * // "creationTimestamp": "my_creationTimestamp", - * // "ddosProtectionConfig": {}, * // "description": "my_description", - * // "displayName": "my_displayName", - * // "fingerprint": "my_fingerprint", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", * // "id": "my_id", + * // "instanceSelectors": [], * // "kind": "my_kind", - * // "labelFingerprint": "my_labelFingerprint", - * // "labels": {}, + * // "managedByGlobal": false, * // "name": "my_name", - * // "parent": "my_parent", - * // "recaptchaOptionsConfig": {}, - * // "region": "my_region", - * // "ruleTupleCount": 0, - * // "rules": [], + * // "priority": 0, * // "selfLink": "my_selfLink", * // "selfLinkWithId": "my_selfLinkWithId", - * // "shortName": "my_shortName", - * // "type": "my_type", - * // "userDefinedFields": [] + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" * // } * }, * }); @@ -167452,32 +173842,32 @@ export namespace compute_alpha { * @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$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params?: Params$Resource$Organizationzonevmextensionpolicies$Insert, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizationsecuritypolicies$Patch, + insert( + params: Params$Resource$Organizationzonevmextensionpolicies$Insert, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + insert(callback: BodyResponseCallback): void; + insert( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Patch + | Params$Resource$Organizationzonevmextensionpolicies$Insert | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -167493,12 +173883,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Patch; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Insert; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Patch; + params = + {} as Params$Resource$Organizationzonevmextensionpolicies$Insert; options = {}; } @@ -167513,16 +173904,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { @@ -167536,12 +173927,7 @@ export namespace compute_alpha { } /** - * Patches a rule at the specified priority. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.patchRule - * instead. + * Lists all VM extension policies within a specific zone for an organization. * @example * ```js * // Before running the sample: @@ -167565,6 +173951,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -167573,86 +173960,112 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.patchRule({ - * // The priority of the rule to patch. - * priority: '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. + * const res = await compute.organizationZoneVmExtensionPolicies.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. * // - * // For example, consider a situation where you make an initial request and - * // the request times out. If you make the request again with the same - * // request ID, the server can check if original operation with the same - * // request ID was received, and if so, will ignore the second request. This - * // prevents clients from accidentally creating duplicate commitments. + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The operator + * // must be either `=`, `!=`, `\>`, `<`, `<=`, `\>=` or `:`. * // - * // The request ID must be - * // a valid UUID with the exception that zero UUID is not supported - * // (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * // Indicates fields to be cleared as part of this request. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "description": "my_description", - * // "direction": "my_direction", - * // "enableLogging": false, - * // "headerAction": {}, - * // "kind": "my_kind", - * // "match": {}, - * // "networkMatch": {}, - * // "preconfiguredWafConfig": {}, - * // "preview": false, - * // "priority": 0, - * // "rateLimitOptions": {}, - * // "redirectOptions": {}, - * // "redirectTarget": "my_redirectTarget", - * // "ruleManagedProtectionTier": "my_ruleManagedProtectionTier", - * // "ruleNumber": "my_ruleNumber", - * // "ruleTupleCount": 0, - * // "targetResources": [], - * // "targetServiceAccounts": [] - * // } - * }, + * // For example, if you are filtering Compute Engine instances, you can + * // exclude instances named `example-instance` by specifying + * // `name != example-instance`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -167668,53 +174081,55 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, options: StreamMethodOptions ): Promise>; - patchRule( - params?: Params$Resource$Organizationsecuritypolicies$Patchrule, + list( + params?: Params$Resource$Organizationzonevmextensionpolicies$List, options?: MethodOptions - ): Promise>; - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, + ): Promise>; + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patchRule( - params: Params$Resource$Organizationsecuritypolicies$Patchrule, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizationzonevmextensionpolicies$List, + callback: BodyResponseCallback ): void; - patchRule(callback: BodyResponseCallback): void; - patchRule( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Patchrule - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Patchrule; + {}) as Params$Resource$Organizationzonevmextensionpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Patchrule; + params = {} as Params$Resource$Organizationzonevmextensionpolicies$List; options = {}; } @@ -167729,35 +174144,31 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/patchRule' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensionPolicies' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Removes an association for the specified security policy. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.removeAssociation - * instead. + * Lists all VM extensions within a specific zone for an organization. + * This is a read-only API. * @example * ```js * // Before running the sample: @@ -167781,6 +174192,7 @@ export namespace compute_alpha { * scopes: [ * 'https://www.googleapis.com/auth/cloud-platform', * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', * ], * }); * @@ -167789,58 +174201,113 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.removeAssociation({ - * // Name for the attachment that will be removed. - * name: '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). - * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', - * }); + * const res = + * await compute.organizationZoneVmExtensionPolicies.listVmExtensions({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * }); * console.log(res.data); * * // Example response * // { - * // "clientOperationId": "my_clientOperationId", - * // "creationTimestamp": "my_creationTimestamp", - * // "description": "my_description", - * // "endTime": "my_endTime", - * // "error": {}, - * // "getVersionOperationMetadata": {}, - * // "httpErrorMessage": "my_httpErrorMessage", - * // "httpErrorStatusCode": 0, + * // "etag": "my_etag", * // "id": "my_id", - * // "insertTime": "my_insertTime", - * // "instancesBulkInsertOperationMetadata": {}, + * // "items": [], * // "kind": "my_kind", - * // "name": "my_name", - * // "operationGroupId": "my_operationGroupId", - * // "operationType": "my_operationType", - * // "progress": 0, - * // "region": "my_region", + * // "nextPageToken": "my_nextPageToken", * // "selfLink": "my_selfLink", - * // "selfLinkWithId": "my_selfLinkWithId", - * // "setCommonInstanceMetadataOperationMetadata": {}, - * // "startTime": "my_startTime", - * // "status": "my_status", - * // "statusMessage": "my_statusMessage", - * // "targetId": "my_targetId", - * // "targetLink": "my_targetLink", - * // "user": "my_user", - * // "warnings": [], - * // "zone": "my_zone" + * // "unreachables": [], + * // "warning": {} * // } * } * @@ -167856,54 +174323,58 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions ): Promise>; - removeAssociation( - params?: Params$Resource$Organizationsecuritypolicies$Removeassociation, + listVmExtensions( + params?: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, options?: MethodOptions - ): Promise>; - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, + ): Promise>; + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeAssociation( - params: Params$Resource$Organizationsecuritypolicies$Removeassociation, - callback: BodyResponseCallback + listVmExtensions( + params: Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions, + callback: BodyResponseCallback ): void; - removeAssociation(callback: BodyResponseCallback): void; - removeAssociation( + listVmExtensions( + callback: BodyResponseCallback + ): void; + listVmExtensions( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Removeassociation - | BodyResponseCallback + | Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Removeassociation; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizationsecuritypolicies$Removeassociation; + {} as Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions; options = {}; } @@ -167918,35 +174389,30 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/removeAssociation' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensions' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone'], + pathParams: ['organization', 'zone'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a rule at the specified priority. - * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.removeRule - * instead. + * Modifies an existing zone VM extension policy within an organization. * @example * ```js * // Before running the sample: @@ -167978,9 +174444,9 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSecurityPolicies.removeRule({ - * // The priority of the rule to remove from the security policy. - * priority: 'placeholder-value', + * const res = await compute.organizationZoneVmExtensionPolicies.update({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', * // 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. @@ -167995,8 +174461,31 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * // Name of the security policy to update. - * securityPolicy: '(securityPolicies/)?[0-9]{0,20}', + * // Name of the zone VM extension policy to update. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "extensionPolicies": {}, + * // "globalResourceLink": "my_globalResourceLink", + * // "id": "my_id", + * // "instanceSelectors": [], + * // "kind": "my_kind", + * // "managedByGlobal": false, + * // "name": "my_name", + * // "priority": 0, + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "updateTimestamp": "my_updateTimestamp" + * // } + * }, * }); * console.log(res.data); * @@ -168045,32 +174534,32 @@ export namespace compute_alpha { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, options: StreamMethodOptions ): Promise>; - removeRule( - params?: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params?: Params$Resource$Organizationzonevmextensionpolicies$Update, options?: MethodOptions ): Promise>; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeRule( - params: Params$Resource$Organizationsecuritypolicies$Removerule, + update( + params: Params$Resource$Organizationzonevmextensionpolicies$Update, callback: BodyResponseCallback ): void; - removeRule(callback: BodyResponseCallback): void; - removeRule( + update(callback: BodyResponseCallback): void; + update( paramsOrCallback?: - | Params$Resource$Organizationsecuritypolicies$Removerule + | Params$Resource$Organizationzonevmextensionpolicies$Update | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -168086,12 +174575,13 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsecuritypolicies$Removerule; + {}) as Params$Resource$Organizationzonevmextensionpolicies$Update; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsecuritypolicies$Removerule; + params = + {} as Params$Resource$Organizationzonevmextensionpolicies$Update; options = {}; } @@ -168106,16 +174596,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/locations/global/securityPolicies/{securityPolicy}/removeRule' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['securityPolicy'], - pathParams: ['securityPolicy'], + requiredParams: ['organization', 'zone', 'vmExtensionPolicy'], + pathParams: ['organization', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { @@ -168129,93 +174619,39 @@ export namespace compute_alpha { } } - export interface Params$Resource$Organizationsecuritypolicies$Addassociation extends StandardParameters { - /** - * Indicates whether or not to replace it if an association of the attachment - * already exists. This is false by default, in which case an error will be - * returned if an association already exists. - */ - replaceExistingAssociation?: boolean; + export interface Params$Resource$Organizationzonevmextensionpolicies$Get extends StandardParameters { /** - * 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). + * Organization ID for this request. */ - requestId?: string; + organization?: string; /** - * Name of the security policy to update. + * Name of the VM extension policy resource to return. */ - securityPolicy?: string; - + vmExtensionPolicy?: string; /** - * Request body metadata + * Name of the zone for this request. */ - requestBody?: Schema$SecurityPolicyAssociation; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Addrule extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Getvmextension extends StandardParameters { /** - * 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). */ - requestId?: string; + extensionName?: string; /** - * Name of the security policy to update. + * Organization ID for this request. */ - securityPolicy?: string; - + organization?: string; /** - * Request body metadata + * Name of the zone for this request. */ - requestBody?: Schema$SecurityPolicyRule; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Copyrules extends StandardParameters { - /** - * 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; + export interface Params$Resource$Organizationzonevmextensionpolicies$Insert extends StandardParameters { /** - * The security policy from which to copy rules. + * Organization ID for this request. */ - sourceSecurityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Delete extends StandardParameters { + organization?: 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 @@ -168233,66 +174669,16 @@ export namespace compute_alpha { */ requestId?: string; /** - * Name of the security policy to delete. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Get extends StandardParameters { - /** - * Name of the security policy to get. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Getassociation extends StandardParameters { - /** - * The name of the association to get from the security policy. - */ - name?: string; - /** - * Name of the security policy to which the queried rule belongs. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Getrule extends StandardParameters { - /** - * The priority of the rule to get from the security policy. - */ - priority?: number; - /** - * Name of the security policy to which the queried rule belongs. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Insert extends StandardParameters { - /** - * Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" - * if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the - * parent is an organization. - */ - parentId?: 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). + * Name of the zone for this request. */ - requestId?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$SecurityPolicy; + requestBody?: Schema$VmExtensionPolicy; } - export interface Params$Resource$Organizationsecuritypolicies$List extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$List extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -168376,16 +174762,16 @@ export namespace compute_alpha { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: 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; - /** - * Parent ID for this request. - */ - parentId?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -168395,15 +174781,12 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - } - export interface Params$Resource$Organizationsecuritypolicies$Listassociations extends StandardParameters { /** - * The target resource to list associations. It is an organization, or a - * folder. + * Name of the zone for this request. */ - targetResource?: string; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Listpreconfiguredexpressionsets extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Listvmextensions extends StandardParameters { /** * A filter expression that filters resources listed in the response. Most * Compute resources support two types of filter expressions: @@ -168487,16 +174870,16 @@ export namespace compute_alpha { * `creationTimestamp desc` is supported. */ orderBy?: string; + /** + * Organization ID for this request. + */ + organization?: 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; - /** - * Parent ID for this request. - */ - parentId?: string; /** * Opt-in for partial success behavior which provides partial results in case * of failure. The default value is false. @@ -168506,69 +174889,16 @@ export namespace compute_alpha { * with an error code. */ returnPartialSuccess?: boolean; - } - export interface Params$Resource$Organizationsecuritypolicies$Move extends StandardParameters { - /** - * The new parent of the security policy. - */ - parentId?: 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Patch extends StandardParameters { - /** - * 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - /** - * Indicates fields to be cleared as part of this request. - */ - updateMask?: string; - /** - * Request body metadata + * Name of the zone for this request. */ - requestBody?: Schema$SecurityPolicy; + zone?: string; } - export interface Params$Resource$Organizationsecuritypolicies$Patchrule extends StandardParameters { + export interface Params$Resource$Organizationzonevmextensionpolicies$Update extends StandardParameters { /** - * The priority of the rule to patch. + * Organization ID for this request. */ - priority?: number; + organization?: 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 @@ -168586,223 +174916,28 @@ export namespace compute_alpha { */ requestId?: string; /** - * Name of the security policy to update. + * Name of the zone VM extension policy to update. */ - securityPolicy?: string; + vmExtensionPolicy?: string; /** - * Indicates fields to be cleared as part of this request. + * Name of the zone for this request. */ - updateMask?: string; + zone?: string; /** * Request body metadata */ - requestBody?: Schema$SecurityPolicyRule; - } - export interface Params$Resource$Organizationsecuritypolicies$Removeassociation extends StandardParameters { - /** - * Name for the attachment that will be removed. - */ - name?: 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; - } - export interface Params$Resource$Organizationsecuritypolicies$Removerule extends StandardParameters { - /** - * The priority of the rule to remove from the security policy. - */ - priority?: number; - /** - * 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). - */ - requestId?: string; - /** - * Name of the security policy to update. - */ - securityPolicy?: string; + requestBody?: Schema$VmExtensionPolicy; } - export class Resource$Organizationsnapshotrecyclebinpolicy { + export class Resource$Orgvmextensionpolicies { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Returns the specified SnapshotRecycleBinPolicy. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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', - * '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.organizationSnapshotRecycleBinPolicy.get({ - * // Organization ID for this request. - * organization: 'organizations/[0-9]{0,20}', - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "rules": {} - * // } - * } - * - * 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$Organizationsnapshotrecyclebinpolicy$Get, - options: StreamMethodOptions - ): Promise>; - get( - params?: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, - options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Get, - callback: BodyResponseCallback - ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Organizationsnapshotrecyclebinpolicy$Get - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | Promise> - | Promise> { - let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsnapshotrecyclebinpolicy$Get; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Organizationsnapshotrecyclebinpolicy$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/alpha/{+organization}/global/snapshotRecycleBinPolicy' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['organization'], - pathParams: ['organization'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest(parameters); - } - } - - /** - * Patches the SnapshotRecycleBinPolicy. + * Deletes a specified zone VM extension policy within an organization. * @example * ```js * // Before running the sample: @@ -168834,7 +174969,7 @@ export namespace compute_alpha { * google.options({auth: authClient}); * * // Do the magic - * const res = await compute.organizationSnapshotRecycleBinPolicy.patch({ + * const res = await compute.orgVmExtensionPolicies.delete({ * // Organization ID for this request. * organization: 'organizations/[0-9]{0,20}', * // An optional request ID to identify requests. Specify a unique request ID so @@ -168851,14 +174986,10 @@ export namespace compute_alpha { * // a valid UUID with the exception that zero UUID is not supported * // (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "rules": {} - * // } - * }, + * // Name of the zone VM extension policy to delete. + * vmExtensionPolicy: 'placeholder-value', + * // Name of the zone for this request. + * zone: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', * }); * console.log(res.data); * @@ -168907,32 +175038,32 @@ export namespace compute_alpha { * @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$Organizationsnapshotrecyclebinpolicy$Patch, + delete( + params: Params$Resource$Orgvmextensionpolicies$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, + delete( + params?: Params$Resource$Orgvmextensionpolicies$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, + delete( + params: Params$Resource$Orgvmextensionpolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, + delete( + params: Params$Resource$Orgvmextensionpolicies$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch, + delete( + params: Params$Resource$Orgvmextensionpolicies$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch + | Params$Resource$Orgvmextensionpolicies$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -168948,13 +175079,12 @@ export namespace compute_alpha { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch; + {}) as Params$Resource$Orgvmextensionpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch; + params = {} as Params$Resource$Orgvmextensionpolicies$Delete; options = {}; } @@ -168969,16 +175099,16 @@ export namespace compute_alpha { { url: ( rootUrl + - '/compute/alpha/{+organization}/global/snapshotRecycleBinPolicy' + '/compute/alpha/{+organization}/zones/{zone}/vmExtensionPolicies/{vmExtensionPolicy}' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['organization'], - pathParams: ['organization'], + requiredParams: ['organization', 'zone', 'vmExtensionPolicy'], + pathParams: ['organization', 'vmExtensionPolicy', 'zone'], context: this.context, }; if (callback) { @@ -168992,13 +175122,7 @@ export namespace compute_alpha { } } - export interface Params$Resource$Organizationsnapshotrecyclebinpolicy$Get extends StandardParameters { - /** - * Organization ID for this request. - */ - organization?: string; - } - export interface Params$Resource$Organizationsnapshotrecyclebinpolicy$Patch extends StandardParameters { + export interface Params$Resource$Orgvmextensionpolicies$Delete extends StandardParameters { /** * Organization ID for this request. */ @@ -169019,11 +175143,14 @@ export namespace compute_alpha { * (00000000-0000-0000-0000-000000000000). */ requestId?: string; - /** - * Request body metadata + * Name of the zone VM extension policy to delete. */ - requestBody?: Schema$SnapshotRecycleBinPolicy; + vmExtensionPolicy?: string; + /** + * Name of the zone for this request. + */ + zone?: string; } export class Resource$Packetmirrorings { @@ -206358,6 +212485,7 @@ export namespace compute_alpha { * // request body parameters * // { * // "allInstances": false, + * // "allowedActions": [], * // "disruptionMode": "my_disruptionMode", * // "instances": [], * // "maximalAction": "my_maximalAction", @@ -272901,7 +279029,8 @@ export namespace compute_alpha { * * // Example response * // { - * // "rules": {} + * // "rules": {}, + * // "systemRules": {} * // } * } * @@ -273058,7 +279187,8 @@ export namespace compute_alpha { * requestBody: { * // request body parameters * // { - * // "rules": {} + * // "rules": {}, + * // "systemRules": {} * // } * }, * }); diff --git a/src/apis/compute/beta.ts b/src/apis/compute/beta.ts index 52a8c66222..1c5ed0b705 100644 --- a/src/apis/compute/beta.ts +++ b/src/apis/compute/beta.ts @@ -170,6 +170,8 @@ export namespace compute_beta { nodeGroups: Resource$Nodegroups; nodeTemplates: Resource$Nodetemplates; nodeTypes: Resource$Nodetypes; + organizationRolloutPlans: Resource$Organizationrolloutplans; + organizationRollouts: Resource$Organizationrollouts; organizationSecurityPolicies: Resource$Organizationsecuritypolicies; packetMirrorings: Resource$Packetmirrorings; previewFeatures: Resource$Previewfeatures; @@ -331,6 +333,12 @@ export namespace compute_beta { this.nodeGroups = new Resource$Nodegroups(this.context); this.nodeTemplates = new Resource$Nodetemplates(this.context); this.nodeTypes = new Resource$Nodetypes(this.context); + this.organizationRolloutPlans = new Resource$Organizationrolloutplans( + this.context + ); + this.organizationRollouts = new Resource$Organizationrollouts( + this.context + ); this.organizationSecurityPolicies = new Resource$Organizationsecuritypolicies(this.context); this.packetMirrorings = new Resource$Packetmirrorings(this.context); @@ -4217,6 +4225,14 @@ export namespace compute_beta { * traffic served by this backend service. The default value is false. */ enable?: boolean | null; + /** + * The list of request headers that will be logged to Stackdriver. + */ + loggingHttpRequestHeaders?: Schema$BackendServiceLogConfigLoggingHttpHeader[]; + /** + * The list of response headers that will be logged to Stackdriver. + */ + loggingHttpResponseHeaders?: Schema$BackendServiceLogConfigLoggingHttpHeader[]; /** * This field can only be specified if logging is enabled for this backend * service and "logConfig.optionalMode" was set to CUSTOM. Contains a list @@ -4241,6 +4257,15 @@ export namespace compute_beta { */ sampleRate?: number | null; } + /** + * Determines which HTTP headers will be logged to Stackdriver. + */ + export interface Schema$BackendServiceLogConfigLoggingHttpHeader { + /** + * The name of the header to be logged. + */ + headerName?: string | null; + } export interface Schema$BackendServiceNetworkPassThroughLbTrafficPolicy { /** * When configured, new connections are load balanced across healthy backend @@ -6431,6 +6456,79 @@ export namespace compute_beta { */ year?: number | null; } + /** + * Represents civil time (or occasionally physical time). + * + * This type can represent a civil time in one of a few possible ways: + * + * * When utc_offset is set and time_zone is unset: a civil time on a calendar + * day with a particular offset from UTC. + * * When time_zone is set and utc_offset is unset: a civil time on a calendar + * day in a particular time zone. + * * When neither time_zone nor utc_offset is set: a civil time on a calendar + * day in local time. + * + * The date is relative to the Proleptic Gregorian Calendar. + * + * If year, month, or day are 0, the DateTime is considered not to have a + * specific year, month, or day respectively. + * + * This type may also be used to represent a physical time if all the date and + * time fields are set and either case of the `time_offset` oneof is set. + * Consider using `Timestamp` message for physical time instead. If your use + * case also would like to store the user's timezone, that can be done in + * another field. + * + * This type is more flexible than some applications may want. Make sure to + * document and validate your application's limitations. + */ + export interface Schema$DateTime { + /** + * Optional. Day of month. Must be from 1 to 31 and valid for the year and + * month, or 0 if specifying a datetime without a day. + */ + day?: number | null; + /** + * Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults + * to 0 (midnight). An API may choose to allow the value "24:00:00" for + * scenarios like business closing time. + */ + hours?: number | null; + /** + * Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0. + */ + minutes?: number | null; + /** + * Optional. Month of year. Must be from 1 to 12, or 0 if specifying a + * datetime without a month. + */ + month?: number | null; + /** + * Optional. Fractions of seconds in nanoseconds. Must be from 0 to + * 999,999,999, defaults to 0. + */ + nanos?: number | null; + /** + * Optional. Seconds of minutes of the time. Must normally be from 0 to 59, + * defaults to 0. An API may allow the value 60 if it allows leap-seconds. + */ + seconds?: number | null; + /** + * Time zone. + */ + timeZone?: Schema$TimeZone; + /** + * UTC offset. Must be whole seconds, between -18 hours and +18 hours. + * For example, a UTC offset of -4:00 would be represented as + * { seconds: -14400 \}. + */ + utcOffset?: string | null; + /** + * Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a + * datetime without a year. + */ + year?: number | null; + } /** * Deprecation status for a public resource. */ @@ -12074,6 +12172,13 @@ export namespace compute_beta { * balancing: Routing and traffic management features. */ faultInjectionPolicy?: Schema$HttpFaultInjection; + /** + * Image optimization policy for this URL Map's route. Available only for + * Global EXTERNAL_MANAGED load balancer schemes. + * Either Cloud CDN must be enabled on the backend service or backend bucket + * serving the route, or cache policy must be configured on the same route + */ + imageOptimizationPolicy?: Schema$ImageOptimizationPolicy; /** * Specifies the maximum duration (timeout) for streams on the selected route. * Unlike the timeout field where the timeout duration starts @@ -12934,6 +13039,20 @@ export namespace compute_beta { message?: string; } | null; } + /** + * The configuration for Cloud CDN's image optimization feature. This feature + * dynamically processes and delivers images from the network edge. + * Image Optimization is only available for Global External Application Load + * Balancers. + * Either Cloud CDN must be enabled on the backend service or backend bucket + * serving the route, or cache policy must be configured on the same route. + */ + export interface Schema$ImageOptimizationPolicy { + /** + * Specifies whether to interpret query parameters for image optimization. + */ + queryParameterInterpretation?: string | null; + } /** * Additional image params. */ @@ -13841,6 +13960,11 @@ export namespace compute_beta { * are scheduled to be restarted or are currently being restarted. */ restarting?: number | null; + /** + * Output only. The number of instances in the managed instance group that + * are scheduled to be restarted or are currently being restarted. + */ + restartingInPlace?: number | null; /** * Output only. The number of instances in the managed instance group that * are scheduled to be resumed or are currently being resumed. @@ -14301,6 +14425,10 @@ export namespace compute_beta { * in the request. */ allInstances?: boolean | null; + /** + * Actions that are allowed to update instances within MIG. + */ + allowedActions?: string[] | null; /** * The list of URLs of one or more instances for which you want to apply * updates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME]. @@ -14951,6 +15079,10 @@ export namespace compute_beta { mode?: string | null; } export interface Schema$InstanceGroupManagerUpdatePolicy { + /** + * Actions that are allowed to update instances within MIG. + */ + allowedActions?: string[] | null; /** * The * instance redistribution policy for regional managed instance groups. @@ -15238,34 +15370,33 @@ export namespace compute_beta { } export interface Schema$InstanceManagedByIgmError { /** - * Output only. [Output Only] Contents of the error. + * Output only. Contents of the error. */ error?: Schema$InstanceManagedByIgmErrorManagedInstanceError; /** - * Output only. [Output Only] Details of the instance action that triggered this error. + * Output only. Details of the instance action that triggered this error. * May be null, if the error was not caused by an action on an instance. * This field is optional. */ instanceActionDetails?: Schema$InstanceManagedByIgmErrorInstanceActionDetails; /** - * Output only. [Output Only] The time that this error occurred. - * This value is in RFC3339 text format. + * Output only. The time that this error occurred. This value is in RFC3339 text format. */ timestamp?: string | null; } export interface Schema$InstanceManagedByIgmErrorInstanceActionDetails { /** - * Output only. [Output Only] Action that managed instance group was executing on - * the instance when the error occurred. Possible values: + * Output only. Action that managed instance group was executing on the instance when the + * error occurred. Possible values: */ action?: string | null; /** - * Output only. [Output Only] The URL of the instance. - * The URL can be set even if the instance has not yet been created. + * Output only. The URL of the instance. The URL can be set even if the instance has not + * yet been created. */ instance?: string | null; /** - * Output only. [Output Only] Version this instance was created from, or was being + * Output only. Version this instance was created from, or was being * created from, but the creation failed. Corresponds to one of the versions * that were set on the Instance Group Manager resource at the time this * instance was being created. @@ -15274,11 +15405,11 @@ export namespace compute_beta { } export interface Schema$InstanceManagedByIgmErrorManagedInstanceError { /** - * Output only. [Output Only] Error code. + * Output only. Error code. */ code?: string | null; /** - * Output only. [Output Only] Error message. + * Output only. Error message. */ message?: string | null; } @@ -23560,6 +23691,42 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$OrganizationRolloutsListResponse { + etag?: string | null; + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of Rollout resources. + */ + items?: Schema$Rollout[]; + /** + * [Output Only] This token allows you to get the next page of results for + * list requests. If the number of results is larger thanmaxResults, 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. [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * Output only. [Output Only] Unreachable resources. + * end_interface: MixerListResponseWithEtagBuilder + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } export interface Schema$OrganizationSecurityPoliciesListAssociationsResponse { /** * A list of associations. @@ -24244,6 +24411,33 @@ export namespace compute_beta { */ status?: string | null; } + /** + * The periodic partial maintenance schedule includes 52 weeks worth of + * maintenance windows. + * LINT.IfChange(PeriodicPartialMaintenanceSchedule) + */ + export interface Schema$PeriodicPartialMaintenanceSchedule { + /** + * The maintenance type in which the zone is during the given window. + */ + subType?: string | null; + /** + * The target resource that the maintenance window is for. + * For example, "projects/my-project/zones/us-central1-a". + */ + targetResource?: string | null; + type?: string | null; + /** + * The end civil timestamp of the window (not inclusive). + * This contains a time zone. + */ + windowEndTime?: Schema$DateTime; + /** + * The start civil timestamp of the window. + * This contains a time zone. + */ + windowStartTime?: Schema$DateTime; + } /** * An Identity and Access Management (IAM) policy, which specifies access * controls for Google Cloud resources. @@ -25666,6 +25860,10 @@ export namespace compute_beta { * in the request. */ allInstances?: boolean | null; + /** + * Actions that are allowed to update instances within MIG. + */ + allowedActions?: string[] | null; /** * The list of URLs of one or more instances for which you want to apply * updates. Each URL can be a full URL or a partial URL, such aszones/[ZONE]/instances/[INSTANCE_NAME]. @@ -27507,6 +27705,10 @@ export namespace compute_beta { * running. */ export interface Schema$ResourceStatusPhysicalHostTopology { + /** + * Output only. [Output Only] Additional location information of the running instance. + */ + additionalAttributes?: Schema$ResourceStatusPhysicalHostTopologyAdditionalAttributes; /** * [Output Only] The ID of the block in which the running instance is * located. Instances within the same block experience low network latency. @@ -27530,6 +27732,18 @@ export namespace compute_beta { */ subblock?: string | null; } + /** + * Additional location information of the running instance. + */ + export interface Schema$ResourceStatusPhysicalHostTopologyAdditionalAttributes { + /** + * Output only. The IDs of the accelerator topologies the instance belongs to. For + * example + * The key will be topologies like "4x4", "2x2x2" and the value will be + * the location ID of the topologies. + */ + acceleratorTopologyIds?: {[key: string]: string} | null; + } /** * Reservation consumption information that the instance is consuming from. */ @@ -27539,6 +27753,16 @@ export namespace compute_beta { * instance is consuming from. */ consumedReservation?: string | null; + /** + * Output only. [Output Only] The full resource name of the reservation block that this + * instance is consuming from. + */ + consumedReservationBlock?: string | null; + /** + * Output only. [Output Only] The full resource name of the reservation sub-block that + * this instance is consuming from. + */ + consumedReservationSubBlock?: string | null; } export interface Schema$ResourceStatusScheduling { /** @@ -27631,6 +27855,14 @@ export namespace compute_beta { * the last character, which cannot be a dash. */ name?: string | null; + /** + * Output only. The timestamp at which the Rollout was paused. + */ + pauseTime?: string | null; + /** + * Output only. The timestamp at which the Rollout was resumed. + */ + resumeTime?: string | null; /** * Required. The resource being rolled out. */ @@ -28959,6 +29191,12 @@ export namespace compute_beta { * These IPs should be used for updating/patching a NAT only. */ drainNatIps?: string[] | null; + /** + * Output only. Effective timeout (in seconds) for TCP connections that are in TIME_WAIT + * state. This value is equal to tcp_time_wait_timeout_sec if it is set, + * otherwise it is equal to 120s. The field is output only. + */ + effectiveTcpTimeWaitTimeoutSec?: number | null; /** * Enable Dynamic Port Allocation. * @@ -35707,6 +35945,20 @@ export namespace compute_beta { */ permissions?: string[] | null; } + /** + * Represents a time zone from the + * [IANA Time Zone Database](https://www.iana.org/time-zones). + */ + export interface Schema$TimeZone { + /** + * IANA Time Zone Database time zone. For example "America/New_York". + */ + id?: string | null; + /** + * Optional. IANA Time Zone Database version number. For example "2019a". + */ + version?: string | null; + } export interface Schema$Uint128 { high?: string | null; low?: string | null; @@ -37840,6 +38092,7 @@ export namespace compute_beta { * [Output Only] Full URL reference to the region which hosts the zone. */ region?: string | null; + resourceStatus?: Schema$ZoneResourceStatus; /** * [Output Only] Server-defined URL for the resource. */ @@ -37890,6 +38143,12 @@ export namespace compute_beta { message?: string; } | null; } + export interface Schema$ZoneResourceStatus { + /** + * Output only. [Output Only] The upcoming maintenance schedule. + */ + upcomingMaintenances?: Schema$PeriodicPartialMaintenanceSchedule[]; + } export interface Schema$ZoneSetLabelsRequest { /** * The fingerprint of the previous set of labels for this resource, @@ -89292,6 +89551,7 @@ export namespace compute_beta { * // request body parameters * // { * // "allInstances": false, + * // "allowedActions": [], * // "instances": [], * // "minimalAction": "my_minimalAction", * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" @@ -152810,23 +153070,2565 @@ export namespace compute_beta { zone?: string; } - export class Resource$Organizationsecuritypolicies { + export class Resource$Organizationrolloutplans { context: APIRequestContext; constructor(context: APIRequestContext) { this.context = context; } /** - * Inserts an association for the specified security policy. + * Deletes an OrganizationRolloutPlan. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` * - * This has billing implications. Projects in the hierarchy with effective - * hierarchical security policies will be automatically enrolled into Cloud - * Armor Enterprise if not already enrolled. + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); * - * Use this API to modify Cloud Armor policies. Previously, alpha and beta - * versions of this API were used to modify firewall policies. This usage is - * now disabled for most organizations. Use firewallPolicies.addAssociation - * instead. + * 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.organizationRolloutPlans.delete({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // 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). + * requestId: 'placeholder-value', + * // Name of the OrganizationRolloutPlan resource to delete. + * rolloutPlan: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Organizationrolloutplans$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Organizationrolloutplans$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Organizationrolloutplans$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Organizationrolloutplans$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Organizationrolloutplans$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Organizationrolloutplans$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrolloutplans$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrolloutplans$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/beta/{+organization}/global/rolloutPlans/{rolloutPlan}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rolloutPlan'], + pathParams: ['organization', 'rolloutPlan'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single organization-scoped RolloutPlan. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRolloutPlans.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the persistent rollout plan to return. + * rolloutPlan: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "locationScope": "my_locationScope", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] + * // } + * } + * + * 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$Organizationrolloutplans$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Organizationrolloutplans$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Organizationrolloutplans$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizationrolloutplans$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizationrolloutplans$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Organizationrolloutplans$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrolloutplans$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrolloutplans$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/beta/{+organization}/global/rolloutPlans/{rolloutPlan}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rolloutPlan'], + pathParams: ['organization', 'rolloutPlan'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a new RolloutPlan in a given organization and location. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRolloutPlans.insert({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // 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). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "id": "my_id", + * // "kind": "my_kind", + * // "locationScope": "my_locationScope", + * // "name": "my_name", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "waves": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Organizationrolloutplans$Insert, + options: StreamMethodOptions + ): Promise>; + insert( + params?: Params$Resource$Organizationrolloutplans$Insert, + options?: MethodOptions + ): Promise>; + insert( + params: Params$Resource$Organizationrolloutplans$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Organizationrolloutplans$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Organizationrolloutplans$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Organizationrolloutplans$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrolloutplans$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrolloutplans$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/beta/{+organization}/global/rolloutPlans' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization'], + pathParams: ['organization'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists OrganizationRolloutPlans in a given organization and location. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRolloutPlans.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "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. + */ + list( + params: Params$Resource$Organizationrolloutplans$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Organizationrolloutplans$List, + options?: MethodOptions + ): Promise>; + list( + params: Params$Resource$Organizationrolloutplans$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Organizationrolloutplans$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Organizationrolloutplans$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Organizationrolloutplans$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrolloutplans$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrolloutplans$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/beta/{+organization}/global/rolloutPlans' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization'], + pathParams: ['organization'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Organizationrolloutplans$Delete extends StandardParameters { + /** + * Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Name of the OrganizationRolloutPlan resource to delete. + */ + rolloutPlan?: string; + } + export interface Params$Resource$Organizationrolloutplans$Get extends StandardParameters { + /** + * Organization ID for this request. + */ + organization?: string; + /** + * Name of the persistent rollout plan to return. + */ + rolloutPlan?: string; + } + export interface Params$Resource$Organizationrolloutplans$Insert extends StandardParameters { + /** + * Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RolloutPlan; + } + export interface Params$Resource$Organizationrolloutplans$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Organization ID for this request. + */ + organization?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Organizationrollouts { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Advances a Rollout to the next wave, or completes it if no waves remain. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.advance({ + * // Required. Wave number of the current wave. + * currentWaveNumber: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Required. Name of the Rollout resource to advance. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + advance( + params: Params$Resource$Organizationrollouts$Advance, + options: StreamMethodOptions + ): Promise>; + advance( + params?: Params$Resource$Organizationrollouts$Advance, + options?: MethodOptions + ): Promise>; + advance( + params: Params$Resource$Organizationrollouts$Advance, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + advance( + params: Params$Resource$Organizationrollouts$Advance, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + advance( + params: Params$Resource$Organizationrollouts$Advance, + callback: BodyResponseCallback + ): void; + advance(callback: BodyResponseCallback): void; + advance( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Advance + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Advance; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Advance; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/{+organization}/global/rollouts/{rollout}/advance' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Cancels a Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.cancel({ + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * // the rollout without taking any further actions. Note that products must + * // support at least one of these options, however, it does not need to support + * // both. + * rollback: 'placeholder-value', + * // Name of the Rollout resource to cancel. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + options: StreamMethodOptions + ): Promise>; + cancel( + params?: Params$Resource$Organizationrollouts$Cancel, + options?: MethodOptions + ): Promise>; + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Organizationrollouts$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/{+organization}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.delete({ + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Name of the Rollout resource to delete. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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$Organizationrollouts$Delete, + options: StreamMethodOptions + ): Promise>; + delete( + params?: Params$Resource$Organizationrollouts$Delete, + options?: MethodOptions + ): Promise>; + delete( + params: Params$Resource$Organizationrollouts$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Organizationrollouts$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Organizationrollouts$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$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/beta/{+organization}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single organization-scoped Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.get({ + * // Organization ID for this request. + * organization: 'organizations/[0-9]{0,20}', + * // Name of the persistent rollout to return. + * rollout: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "cancellationTime": "my_cancellationTime", + * // "completionTime": "my_completionTime", + * // "creationTimestamp": "my_creationTimestamp", + * // "currentWaveNumber": "my_currentWaveNumber", + * // "description": "my_description", + * // "etag": "my_etag", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "pauseTime": "my_pauseTime", + * // "resumeTime": "my_resumeTime", + * // "rolloutEntity": {}, + * // "rolloutPlan": "my_rolloutPlan", + * // "selfLink": "my_selfLink", + * // "selfLinkWithId": "my_selfLinkWithId", + * // "state": "my_state", + * // "waveDetails": [] + * // } + * } + * + * 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$Organizationrollouts$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Organizationrollouts$Get, + options?: MethodOptions + ): Promise>; + get( + params: Params$Resource$Organizationrollouts$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizationrollouts$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Organizationrollouts$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$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/beta/{+organization}/global/rollouts/{rollout}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists Rollouts in a given organization and location. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.list({ + * // A filter expression that filters resources listed in the response. Most + * // Compute resources support two types of filter expressions: + * // expressions that support regular expressions and expressions that follow + * // API improvement proposal AIP-160. + * // These two types of filter expressions cannot be mixed in one request. + * // + * // If you want to use AIP-160, your expression must specify the field name, an + * // operator, and the value that you want to use for filtering. The value + * // must be a string, a number, or a boolean. The 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`. + * // + * // The `:*` comparison can be used to test whether a key has been defined. + * // For example, to find all objects with `owner` label use: + * // ``` + * // labels.owner:* + * // ``` + * // + * // 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 onresource 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) + * // ``` + * // + * // If you want to use a regular expression, use the `eq` (equal) or `ne` + * // (not equal) operator against a single un-parenthesized expression with or + * // without quotes or against multiple parenthesized expressions. Examples: + * // + * // `fieldname eq unquoted literal` + * // `fieldname eq 'single quoted literal'` + * // `fieldname eq "double quoted literal"` + * // `(fieldname1 eq literal) (fieldname2 ne "literal")` + * // + * // The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * // The literal value must match the entire field. + * // + * // For example, to filter for instances that do not end with name "instance", + * // you would use `name ne .*instance`. + * // + * // You cannot combine constraints on multiple fields using regular + * // expressions. + * 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', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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', + * // Opt-in for partial success behavior which provides partial results in case + * // of failure. The default value is false. + * // + * // For example, when partial success behavior is enabled, aggregatedList for a + * // single zone scope either returns all resources in the zone or no resources, + * // with an error code. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "etag": "my_etag", + * // "id": "my_id", + * // "items": [], + * // "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. + */ + list( + params: Params$Resource$Organizationrollouts$List, + options: StreamMethodOptions + ): Promise>; + list( + params?: Params$Resource$Organizationrollouts$List, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Organizationrollouts$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Organizationrollouts$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Organizationrollouts$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$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/beta/{+organization}/global/rollouts' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization'], + pathParams: ['organization'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Pauses a Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.pause({ + * // The etag of the Rollout. + * // If this is provided, the request will only succeed if the etag matches + * // the current etag of the Rollout. + * etag: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Required. Name of the Rollout resource to pause. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + pause( + params: Params$Resource$Organizationrollouts$Pause, + options: StreamMethodOptions + ): Promise>; + pause( + params?: Params$Resource$Organizationrollouts$Pause, + options?: MethodOptions + ): Promise>; + pause( + params: Params$Resource$Organizationrollouts$Pause, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + pause( + params: Params$Resource$Organizationrollouts$Pause, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + pause( + params: Params$Resource$Organizationrollouts$Pause, + callback: BodyResponseCallback + ): void; + pause(callback: BodyResponseCallback): void; + pause( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Pause + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Pause; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Pause; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/{+organization}/global/rollouts/{rollout}/pause' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Resumes a Rollout. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ npm install googleapis + * // ``` + * + * const {google} = require('googleapis'); + * const compute = google.compute('beta'); + * + * 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.organizationRollouts.resume({ + * // The etag of the Rollout. + * // If this is provided, the request will only succeed if the etag matches + * // the current etag of the Rollout. + * etag: 'placeholder-value', + * // Required. Organization ID for this request. + * organization: 'organizations/[0-9]{1,19}', + * // 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). + * requestId: 'placeholder-value', + * // Required. Name of the Rollout resource to resume. + * rollout: '[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": {}, + * // "getVersionOperationMetadata": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "instancesBulkInsertOperationMetadata": {}, + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "setCommonInstanceMetadataOperationMetadata": {}, + * // "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. + */ + resume( + params: Params$Resource$Organizationrollouts$Resume, + options: StreamMethodOptions + ): Promise>; + resume( + params?: Params$Resource$Organizationrollouts$Resume, + options?: MethodOptions + ): Promise>; + resume( + params: Params$Resource$Organizationrollouts$Resume, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resume( + params: Params$Resource$Organizationrollouts$Resume, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + resume( + params: Params$Resource$Organizationrollouts$Resume, + callback: BodyResponseCallback + ): void; + resume(callback: BodyResponseCallback): void; + resume( + paramsOrCallback?: + | Params$Resource$Organizationrollouts$Resume + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Organizationrollouts$Resume; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Organizationrollouts$Resume; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/beta/{+organization}/global/rollouts/{rollout}/resume' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['organization', 'rollout'], + pathParams: ['organization', 'rollout'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Organizationrollouts$Advance extends StandardParameters { + /** + * Required. Wave number of the current wave. + */ + currentWaveNumber?: string; + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Required. Name of the Rollout resource to advance. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Cancel extends StandardParameters { + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Optional. If true, then the ongoing rollout must be rolled back. Else, just cancel + * the rollout without taking any further actions. Note that products must + * support at least one of these options, however, it does not need to support + * both. + */ + rollback?: boolean; + /** + * Name of the Rollout resource to cancel. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Delete extends StandardParameters { + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Name of the Rollout resource to delete. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Get extends StandardParameters { + /** + * Organization ID for this request. + */ + organization?: string; + /** + * Name of the persistent rollout to return. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$List extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. Most + * Compute resources support two types of filter expressions: + * expressions that support regular expressions and expressions that follow + * API improvement proposal AIP-160. + * These two types of filter expressions cannot be mixed in one request. + * + * If you want to use AIP-160, your expression must specify the field name, an + * operator, and the value that you want to use for filtering. The value + * must be a string, a number, or a boolean. The 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`. + * + * The `:*` comparison can be used to test whether a key has been defined. + * For example, to find all objects with `owner` label use: + * ``` + * labels.owner:* + * ``` + * + * 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 onresource 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) + * ``` + * + * If you want to use a regular expression, use the `eq` (equal) or `ne` + * (not equal) operator against a single un-parenthesized expression with or + * without quotes or against multiple parenthesized expressions. Examples: + * + * `fieldname eq unquoted literal` + * `fieldname eq 'single quoted literal'` + * `fieldname eq "double quoted literal"` + * `(fieldname1 eq literal) (fieldname2 ne "literal")` + * + * The literal value is interpreted as a regular expression using GoogleRE2 library syntax. + * The literal value must match the entire field. + * + * For example, to filter for instances that do not end with name "instance", + * you would use `name ne .*instance`. + * + * You cannot combine constraints on multiple fields using regular + * expressions. + */ + 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; + /** + * Required. Organization ID for this request. + */ + organization?: 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; + /** + * Opt-in for partial success behavior which provides partial results in case + * of failure. The default value is false. + * + * For example, when partial success behavior is enabled, aggregatedList for a + * single zone scope either returns all resources in the zone or no resources, + * with an error code. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Organizationrollouts$Pause extends StandardParameters { + /** + * The etag of the Rollout. + * If this is provided, the request will only succeed if the etag matches + * the current etag of the Rollout. + */ + etag?: string; + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Required. Name of the Rollout resource to pause. + */ + rollout?: string; + } + export interface Params$Resource$Organizationrollouts$Resume extends StandardParameters { + /** + * The etag of the Rollout. + * If this is provided, the request will only succeed if the etag matches + * the current etag of the Rollout. + */ + etag?: string; + /** + * Required. Organization ID for this request. + */ + organization?: 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). + */ + requestId?: string; + /** + * Required. Name of the Rollout resource to resume. + */ + rollout?: string; + } + + export class Resource$Organizationsecuritypolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Inserts an association for the specified security policy. + * + * This has billing implications. Projects in the hierarchy with effective + * hierarchical security policies will be automatically enrolled into Cloud + * Armor Enterprise if not already enrolled. + * + * Use this API to modify Cloud Armor policies. Previously, alpha and beta + * versions of this API were used to modify firewall policies. This usage is + * now disabled for most organizations. Use firewallPolicies.addAssociation + * instead. * @example * ```js * // Before running the sample: @@ -190588,6 +193390,7 @@ export namespace compute_beta { * // request body parameters * // { * // "allInstances": false, + * // "allowedActions": [], * // "instances": [], * // "minimalAction": "my_minimalAction", * // "mostDisruptiveAllowedAction": "my_mostDisruptiveAllowedAction" @@ -241297,6 +244100,8 @@ export namespace compute_beta { * // "id": "my_id", * // "kind": "my_kind", * // "name": "my_name", + * // "pauseTime": "my_pauseTime", + * // "resumeTime": "my_resumeTime", * // "rolloutEntity": {}, * // "rolloutPlan": "my_rolloutPlan", * // "selfLink": "my_selfLink", @@ -293885,6 +296690,7 @@ export namespace compute_beta { * // "kind": "my_kind", * // "name": "my_name", * // "region": "my_region", + * // "resourceStatus": {}, * // "selfLink": "my_selfLink", * // "status": "my_status", * // "supportsPzs": false From 352a9f5b529e619ca3e2354d62fe7f73b02ba6b0 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:09 +0000 Subject: [PATCH 12/29] feat(contactcenterinsights): update the API #### contactcenterinsights:v1 The following keys were added: - schemas.GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata.properties.conversationIds.description - schemas.GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata.properties.conversationIds.items.type - schemas.GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata.properties.conversationIds.readOnly - schemas.GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata.properties.conversationIds.type - schemas.GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata.properties.conversationIds.description - schemas.GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata.properties.conversationIds.items.type - schemas.GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata.properties.conversationIds.readOnly - schemas.GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata.properties.conversationIds.type - schemas.GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata.properties.conversationIds.description - schemas.GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata.properties.conversationIds.items.type - schemas.GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata.properties.conversationIds.readOnly - schemas.GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata.properties.conversationIds.type The following keys were changed: - resources.projects.resources.locations.resources.diagnostics.methods.list.parameters.appVersion.description - schemas.GoogleCloudContactcenterinsightsV1DiagnoseConversationsRequest.properties.appVersion.description - schemas.GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsRequest.properties.appVersion.description - schemas.GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsRequest.properties.appVersion.description --- discovery/contactcenterinsights-v1.json | 34 +++++++++++++++++++++---- src/apis/contactcenterinsights/v1.ts | 22 ++++++++++++---- 2 files changed, 46 insertions(+), 10 deletions(-) diff --git a/discovery/contactcenterinsights-v1.json b/discovery/contactcenterinsights-v1.json index ae760f2729..ea5129aa43 100644 --- a/discovery/contactcenterinsights-v1.json +++ b/discovery/contactcenterinsights-v1.json @@ -4574,7 +4574,7 @@ "type": "string" }, "appVersion": { - "description": "Optional. The CES App version to filter diagnostics by.", + "description": "Optional. The CES App version to filter diagnostics by. Setting to \"-\" filters to diagnostics created using \"-\" (the latest draft version). Note that reports created at different times may correspond to different draft instructions. Setting to \"\" (empty) retrieves all diagnostics for the app_id regardless of version.", "location": "query", "type": "string" }, @@ -6234,7 +6234,7 @@ } } }, - "revision": "20260521", + "revision": "20260527", "rootUrl": "https://contactcenterinsights.googleapis.com/", "schemas": { "GoogleCloudAiplatformV1Blob": { @@ -9344,6 +9344,14 @@ "description": "Metadata for a DiagnoseConversations operation.", "id": "GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata", "properties": { + "conversationIds": { + "description": "Output only. The list of conversation IDs that were selected for this diagnosis.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "createTime": { "description": "Output only. The time the operation was created.", "format": "google-datetime", @@ -9428,7 +9436,7 @@ "type": "string" }, "appVersion": { - "description": "Optional. Optional but highly recommended. ces app version. If provided, specific version of agent instruction will be retrieved. If empty or set to '-', will use the latest draft version of instruction.", + "description": "Required. The CES App version of the agent. Setting to \"-\" uses the latest draft version. Note that the agent active during the conversation history may have different instructions or tool definitions compared with the latest draft version.", "type": "string" }, "dryRun": { @@ -16060,6 +16068,14 @@ "description": "Metadata for a DiagnoseConversations operation.", "id": "GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata", "properties": { + "conversationIds": { + "description": "Output only. The list of conversation IDs that were selected for this diagnosis.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "createTime": { "description": "Output only. The time the operation was created.", "format": "google-datetime", @@ -16144,7 +16160,7 @@ "type": "string" }, "appVersion": { - "description": "Optional. Optional but highly recommended. ces app version. If provided, specific version of agent instruction will be retrieved. If empty or set to '-', will use the latest draft version of instruction.", + "description": "Required. The CES App version of the agent. Setting to \"-\" uses the latest draft version. Note that the agent active during the conversation history may have different instructions or tool definitions compared with the latest draft version.", "type": "string" }, "dryRun": { @@ -21288,6 +21304,14 @@ "description": "Metadata for a DiagnoseConversations operation.", "id": "GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata", "properties": { + "conversationIds": { + "description": "Output only. The list of conversation IDs that were selected for this diagnosis.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "createTime": { "description": "Output only. The time the operation was created.", "format": "google-datetime", @@ -21372,7 +21396,7 @@ "type": "string" }, "appVersion": { - "description": "Optional. Optional but highly recommended. ces app version. If provided, specific version of agent instruction will be retrieved. If empty or set to '-', will use the latest draft version of instruction.", + "description": "Required. The CES App version of the agent. Setting to \"-\" uses the latest draft version. Note that the agent active during the conversation history may have different instructions or tool definitions compared with the latest draft version.", "type": "string" }, "dryRun": { diff --git a/src/apis/contactcenterinsights/v1.ts b/src/apis/contactcenterinsights/v1.ts index bdfc4400d5..37bc1d7e25 100644 --- a/src/apis/contactcenterinsights/v1.ts +++ b/src/apis/contactcenterinsights/v1.ts @@ -1731,6 +1731,10 @@ export namespace contactcenterinsights_v1 { * Metadata for a DiagnoseConversations operation. */ export interface Schema$GoogleCloudContactcenterinsightsV1alpha1DiagnoseConversationsMetadata { + /** + * Output only. The list of conversation IDs that were selected for this diagnosis. + */ + conversationIds?: string[] | null; /** * Output only. The time the operation was created. */ @@ -1785,7 +1789,7 @@ export namespace contactcenterinsights_v1 { */ appId?: string | null; /** - * Optional. Optional but highly recommended. ces app version. If provided, specific version of agent instruction will be retrieved. If empty or set to '-', will use the latest draft version of instruction. + * Required. The CES App version of the agent. Setting to "-" uses the latest draft version. Note that the agent active during the conversation history may have different instructions or tool definitions compared with the latest draft version. */ appVersion?: string | null; /** @@ -6104,6 +6108,10 @@ export namespace contactcenterinsights_v1 { * Metadata for a DiagnoseConversations operation. */ export interface Schema$GoogleCloudContactcenterinsightsV1DiagnoseConversationsMetadata { + /** + * Output only. The list of conversation IDs that were selected for this diagnosis. + */ + conversationIds?: string[] | null; /** * Output only. The time the operation was created. */ @@ -6158,7 +6166,7 @@ export namespace contactcenterinsights_v1 { */ appId?: string | null; /** - * Optional. Optional but highly recommended. ces app version. If provided, specific version of agent instruction will be retrieved. If empty or set to '-', will use the latest draft version of instruction. + * Required. The CES App version of the agent. Setting to "-" uses the latest draft version. Note that the agent active during the conversation history may have different instructions or tool definitions compared with the latest draft version. */ appVersion?: string | null; /** @@ -9252,6 +9260,10 @@ export namespace contactcenterinsights_v1 { * Metadata for a DiagnoseConversations operation. */ export interface Schema$GoogleCloudContactcenterinsightsV1mainDiagnoseConversationsMetadata { + /** + * Output only. The list of conversation IDs that were selected for this diagnosis. + */ + conversationIds?: string[] | null; /** * Output only. The time the operation was created. */ @@ -9306,7 +9318,7 @@ export namespace contactcenterinsights_v1 { */ appId?: string | null; /** - * Optional. Optional but highly recommended. ces app version. If provided, specific version of agent instruction will be retrieved. If empty or set to '-', will use the latest draft version of instruction. + * Required. The CES App version of the agent. Setting to "-" uses the latest draft version. Note that the agent active during the conversation history may have different instructions or tool definitions compared with the latest draft version. */ appVersion?: string | null; /** @@ -37866,7 +37878,7 @@ export namespace contactcenterinsights_v1 { * const res = await contactcenterinsights.projects.locations.diagnostics.list({ * // Optional. The CES App ID to filter diagnostics by. * appId: 'placeholder-value', - * // Optional. The CES App version to filter diagnostics by. + * // Optional. The CES App version to filter diagnostics by. Setting to "-" filters to diagnostics created using "-" (the latest draft version). Note that reports created at different times may correspond to different draft instructions. Setting to "" (empty) retrieves all diagnostics for the app_id regardless of version. * appVersion: 'placeholder-value', * // Optional. A filter to apply to the list (e.g. `create_time \> "2023-01-01T00:00:00Z"`). * filter: 'placeholder-value', @@ -38011,7 +38023,7 @@ export namespace contactcenterinsights_v1 { */ appId?: string; /** - * Optional. The CES App version to filter diagnostics by. + * Optional. The CES App version to filter diagnostics by. Setting to "-" filters to diagnostics created using "-" (the latest draft version). Note that reports created at different times may correspond to different draft instructions. Setting to "" (empty) retrieves all diagnostics for the app_id regardless of version. */ appVersion?: string; /** From f6c6e77fa4d75a6f82030f242ca163462f106233 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 13/29] feat(container): update the API #### container:v1beta1 The following keys were added: - auth.oauth2.scopes.https://www.googleapis.com/auth/container.description - auth.oauth2.scopes.https://www.googleapis.com/auth/container.read-only.description - schemas.ClusterUpdate.properties.desiredImage.description - schemas.ClusterUpdate.properties.desiredImage.type - schemas.ClusterUpdate.properties.desiredImageProject.description - schemas.ClusterUpdate.properties.desiredImageProject.type - schemas.CustomImageConfig.description - schemas.CustomImageConfig.id - schemas.CustomImageConfig.properties.image.description - schemas.CustomImageConfig.properties.image.type - schemas.CustomImageConfig.properties.imageFamily.description - schemas.CustomImageConfig.properties.imageFamily.type - schemas.CustomImageConfig.properties.imageProject.description - schemas.CustomImageConfig.properties.imageProject.type - schemas.CustomImageConfig.type - schemas.DataplaneV2Config.description - schemas.DataplaneV2Config.id - schemas.DataplaneV2Config.properties.scalabilityMode.description - schemas.DataplaneV2Config.properties.scalabilityMode.enum - schemas.DataplaneV2Config.properties.scalabilityMode.enumDescriptions - schemas.DataplaneV2Config.properties.scalabilityMode.type - schemas.DataplaneV2Config.type - schemas.NetworkConfig.properties.dataplaneV2Config.$ref - schemas.NetworkConfig.properties.dataplaneV2Config.description - schemas.NodeConfig.properties.nodeImageConfig.$ref - schemas.NodeConfig.properties.nodeImageConfig.description - schemas.NodeNetworkConfig.properties.network.description - schemas.NodeNetworkConfig.properties.network.type - schemas.UpdateNodePoolRequest.properties.image.description - schemas.UpdateNodePoolRequest.properties.image.type - schemas.UpdateNodePoolRequest.properties.imageProject.description - schemas.UpdateNodePoolRequest.properties.imageProject.type The following keys were changed: - resources.projects.resources.aggregated.resources.usableSubnetworks.methods.list.scopes - resources.projects.resources.locations.methods.getServerConfig.scopes - resources.projects.resources.locations.methods.list.scopes - resources.projects.resources.locations.resources.clusters.methods.checkAutopilotCompatibility.scopes - resources.projects.resources.locations.resources.clusters.methods.completeControlPlaneUpgrade.scopes - resources.projects.resources.locations.resources.clusters.methods.completeIpRotation.scopes - resources.projects.resources.locations.resources.clusters.methods.create.scopes - resources.projects.resources.locations.resources.clusters.methods.delete.scopes - resources.projects.resources.locations.resources.clusters.methods.fetchClusterUpgradeInfo.scopes - resources.projects.resources.locations.resources.clusters.methods.get.scopes - resources.projects.resources.locations.resources.clusters.methods.list.scopes - resources.projects.resources.locations.resources.clusters.methods.setAddons.scopes - resources.projects.resources.locations.resources.clusters.methods.setLegacyAbac.scopes - resources.projects.resources.locations.resources.clusters.methods.setLocations.scopes - resources.projects.resources.locations.resources.clusters.methods.setLogging.scopes - resources.projects.resources.locations.resources.clusters.methods.setMaintenancePolicy.scopes - resources.projects.resources.locations.resources.clusters.methods.setMasterAuth.scopes - resources.projects.resources.locations.resources.clusters.methods.setMonitoring.scopes - resources.projects.resources.locations.resources.clusters.methods.setNetworkPolicy.scopes - resources.projects.resources.locations.resources.clusters.methods.setResourceLabels.scopes - resources.projects.resources.locations.resources.clusters.methods.startIpRotation.scopes - resources.projects.resources.locations.resources.clusters.methods.update.scopes - resources.projects.resources.locations.resources.clusters.methods.updateMaster.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.completeUpgrade.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.create.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.delete.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.fetchNodePoolUpgradeInfo.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.get.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.list.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.rollback.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.setAutoscaling.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.setManagement.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.setSize.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.update.scopes - resources.projects.resources.locations.resources.operations.methods.cancel.scopes - resources.projects.resources.locations.resources.operations.methods.get.scopes - resources.projects.resources.locations.resources.operations.methods.list.scopes - resources.projects.resources.zones.methods.getServerconfig.scopes - resources.projects.resources.zones.resources.clusters.methods.addons.scopes - resources.projects.resources.zones.resources.clusters.methods.completeControlPlaneUpgrade.scopes - resources.projects.resources.zones.resources.clusters.methods.completeIpRotation.scopes - resources.projects.resources.zones.resources.clusters.methods.create.scopes - resources.projects.resources.zones.resources.clusters.methods.delete.scopes - resources.projects.resources.zones.resources.clusters.methods.fetchClusterUpgradeInfo.scopes - resources.projects.resources.zones.resources.clusters.methods.get.scopes - resources.projects.resources.zones.resources.clusters.methods.legacyAbac.scopes - resources.projects.resources.zones.resources.clusters.methods.list.scopes - resources.projects.resources.zones.resources.clusters.methods.locations.scopes - resources.projects.resources.zones.resources.clusters.methods.logging.scopes - resources.projects.resources.zones.resources.clusters.methods.master.scopes - resources.projects.resources.zones.resources.clusters.methods.monitoring.scopes - resources.projects.resources.zones.resources.clusters.methods.resourceLabels.scopes - resources.projects.resources.zones.resources.clusters.methods.setMaintenancePolicy.scopes - resources.projects.resources.zones.resources.clusters.methods.setMasterAuth.scopes - resources.projects.resources.zones.resources.clusters.methods.setNetworkPolicy.scopes - resources.projects.resources.zones.resources.clusters.methods.startIpRotation.scopes - resources.projects.resources.zones.resources.clusters.methods.update.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.autoscaling.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.create.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.delete.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.fetchNodePoolUpgradeInfo.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.get.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.list.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.rollback.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.setManagement.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.setSize.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.update.scopes - resources.projects.resources.zones.resources.operations.methods.cancel.scopes - resources.projects.resources.zones.resources.operations.methods.get.scopes - resources.projects.resources.zones.resources.operations.methods.list.scopes - schemas.LinuxNodeConfig.properties.sysctls.description #### container:v1 The following keys were added: - auth.oauth2.scopes.https://www.googleapis.com/auth/container.description - auth.oauth2.scopes.https://www.googleapis.com/auth/container.read-only.description - schemas.AddonsConfig.properties.agentSandboxConfig.$ref - schemas.AddonsConfig.properties.agentSandboxConfig.description - schemas.AgentSandboxConfig.description - schemas.AgentSandboxConfig.id - schemas.AgentSandboxConfig.properties.enabled.description - schemas.AgentSandboxConfig.properties.enabled.type - schemas.AgentSandboxConfig.type - schemas.ClusterUpdate.properties.desiredImage.description - schemas.ClusterUpdate.properties.desiredImage.type - schemas.ClusterUpdate.properties.desiredImageProject.description - schemas.ClusterUpdate.properties.desiredImageProject.type - schemas.CustomImageConfig.description - schemas.CustomImageConfig.id - schemas.CustomImageConfig.properties.image.description - schemas.CustomImageConfig.properties.image.type - schemas.CustomImageConfig.properties.imageFamily.description - schemas.CustomImageConfig.properties.imageFamily.type - schemas.CustomImageConfig.properties.imageProject.description - schemas.CustomImageConfig.properties.imageProject.type - schemas.CustomImageConfig.type - schemas.DataplaneV2Config.description - schemas.DataplaneV2Config.id - schemas.DataplaneV2Config.properties.scalabilityMode.description - schemas.DataplaneV2Config.properties.scalabilityMode.enum - schemas.DataplaneV2Config.properties.scalabilityMode.enumDescriptions - schemas.DataplaneV2Config.properties.scalabilityMode.type - schemas.DataplaneV2Config.type - schemas.NetworkConfig.properties.dataplaneV2Config.$ref - schemas.NetworkConfig.properties.dataplaneV2Config.description - schemas.NodeConfig.properties.nodeImageConfig.$ref - schemas.NodeConfig.properties.nodeImageConfig.description - schemas.NodeNetworkConfig.properties.network.description - schemas.NodeNetworkConfig.properties.network.type - schemas.UpdateNodePoolRequest.properties.image.description - schemas.UpdateNodePoolRequest.properties.image.type - schemas.UpdateNodePoolRequest.properties.imageProject.description - schemas.UpdateNodePoolRequest.properties.imageProject.type The following keys were changed: - resources.projects.resources.aggregated.resources.usableSubnetworks.methods.list.scopes - resources.projects.resources.locations.methods.getServerConfig.scopes - resources.projects.resources.locations.resources.clusters.methods.checkAutopilotCompatibility.scopes - resources.projects.resources.locations.resources.clusters.methods.completeIpRotation.scopes - resources.projects.resources.locations.resources.clusters.methods.create.scopes - resources.projects.resources.locations.resources.clusters.methods.delete.scopes - resources.projects.resources.locations.resources.clusters.methods.fetchClusterUpgradeInfo.scopes - resources.projects.resources.locations.resources.clusters.methods.get.scopes - resources.projects.resources.locations.resources.clusters.methods.list.scopes - resources.projects.resources.locations.resources.clusters.methods.setAddons.scopes - resources.projects.resources.locations.resources.clusters.methods.setLegacyAbac.scopes - resources.projects.resources.locations.resources.clusters.methods.setLocations.scopes - resources.projects.resources.locations.resources.clusters.methods.setLogging.scopes - resources.projects.resources.locations.resources.clusters.methods.setMaintenancePolicy.scopes - resources.projects.resources.locations.resources.clusters.methods.setMasterAuth.scopes - resources.projects.resources.locations.resources.clusters.methods.setMonitoring.scopes - resources.projects.resources.locations.resources.clusters.methods.setNetworkPolicy.scopes - resources.projects.resources.locations.resources.clusters.methods.setResourceLabels.scopes - resources.projects.resources.locations.resources.clusters.methods.startIpRotation.scopes - resources.projects.resources.locations.resources.clusters.methods.update.scopes - resources.projects.resources.locations.resources.clusters.methods.updateMaster.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.completeUpgrade.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.create.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.delete.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.fetchNodePoolUpgradeInfo.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.get.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.list.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.rollback.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.setAutoscaling.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.setManagement.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.setSize.scopes - resources.projects.resources.locations.resources.clusters.resources.nodePools.methods.update.scopes - resources.projects.resources.locations.resources.operations.methods.cancel.scopes - resources.projects.resources.locations.resources.operations.methods.get.scopes - resources.projects.resources.locations.resources.operations.methods.list.scopes - resources.projects.resources.zones.methods.getServerconfig.scopes - resources.projects.resources.zones.resources.clusters.methods.addons.scopes - resources.projects.resources.zones.resources.clusters.methods.completeIpRotation.scopes - resources.projects.resources.zones.resources.clusters.methods.create.scopes - resources.projects.resources.zones.resources.clusters.methods.delete.scopes - resources.projects.resources.zones.resources.clusters.methods.fetchClusterUpgradeInfo.scopes - resources.projects.resources.zones.resources.clusters.methods.get.scopes - resources.projects.resources.zones.resources.clusters.methods.legacyAbac.scopes - resources.projects.resources.zones.resources.clusters.methods.list.scopes - resources.projects.resources.zones.resources.clusters.methods.locations.scopes - resources.projects.resources.zones.resources.clusters.methods.logging.scopes - resources.projects.resources.zones.resources.clusters.methods.master.scopes - resources.projects.resources.zones.resources.clusters.methods.monitoring.scopes - resources.projects.resources.zones.resources.clusters.methods.resourceLabels.scopes - resources.projects.resources.zones.resources.clusters.methods.setMaintenancePolicy.scopes - resources.projects.resources.zones.resources.clusters.methods.setMasterAuth.scopes - resources.projects.resources.zones.resources.clusters.methods.setNetworkPolicy.scopes - resources.projects.resources.zones.resources.clusters.methods.startIpRotation.scopes - resources.projects.resources.zones.resources.clusters.methods.update.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.autoscaling.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.create.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.delete.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.fetchNodePoolUpgradeInfo.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.get.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.list.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.rollback.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.setManagement.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.setSize.scopes - resources.projects.resources.zones.resources.clusters.resources.nodePools.methods.update.scopes - resources.projects.resources.zones.resources.operations.methods.cancel.scopes - resources.projects.resources.zones.resources.operations.methods.get.scopes - resources.projects.resources.zones.resources.operations.methods.list.scopes - schemas.LinuxNodeConfig.properties.sysctls.description --- discovery/container-v1.json | 314 +++++++++++++++++----- discovery/container-v1beta1.json | 308 ++++++++++++++++------ src/apis/container/v1.ts | 428 +++++++++++++++++++++++++----- src/apis/container/v1beta1.ts | 430 ++++++++++++++++++++++++++----- 4 files changed, 1200 insertions(+), 280 deletions(-) diff --git a/discovery/container-v1.json b/discovery/container-v1.json index 4e6e3968d7..75a26b7ae6 100644 --- a/discovery/container-v1.json +++ b/discovery/container-v1.json @@ -4,6 +4,12 @@ "scopes": { "https://www.googleapis.com/auth/cloud-platform": { "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + }, + "https://www.googleapis.com/auth/container": { + "description": "See, edit, configure, and delete your Google Kubernetes Engine data and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/container.read-only": { + "description": "See your Google Kubernetes Engine data and the email address of your Google Account" } } } @@ -149,7 +155,9 @@ "$ref": "ListUsableSubnetworksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } } @@ -192,7 +200,9 @@ "$ref": "ServerConfig" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } }, @@ -221,7 +231,9 @@ "$ref": "CheckAutopilotCompatibilityResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "completeIpRotation": { @@ -249,7 +261,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -277,7 +290,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -320,7 +334,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchClusterUpgradeInfo": { @@ -350,7 +365,9 @@ "$ref": "ClusterUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -393,7 +410,9 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "getJwks": { @@ -452,7 +471,9 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "setAddons": { @@ -480,7 +501,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setLegacyAbac": { @@ -508,7 +530,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setLocations": { @@ -537,7 +560,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setLogging": { @@ -565,7 +589,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMaintenancePolicy": { @@ -593,7 +618,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMasterAuth": { @@ -621,7 +647,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMonitoring": { @@ -649,7 +676,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setNetworkPolicy": { @@ -677,7 +705,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setResourceLabels": { @@ -705,7 +734,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "startIpRotation": { @@ -733,7 +763,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -761,7 +792,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "updateMaster": { @@ -789,7 +821,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } }, @@ -821,7 +854,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -849,7 +883,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -898,7 +933,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchNodePoolUpgradeInfo": { @@ -928,7 +964,9 @@ "$ref": "NodePoolUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -977,7 +1015,9 @@ "$ref": "NodePool" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -1020,7 +1060,9 @@ "$ref": "ListNodePoolsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "rollback": { @@ -1048,7 +1090,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setAutoscaling": { @@ -1076,7 +1119,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setManagement": { @@ -1104,7 +1148,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setSize": { @@ -1132,7 +1177,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -1160,7 +1206,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } } @@ -1220,7 +1267,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "get": { @@ -1263,7 +1311,9 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -1300,7 +1350,9 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } } @@ -1342,7 +1394,9 @@ "$ref": "ServerConfig" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } }, @@ -1387,7 +1441,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "completeIpRotation": { @@ -1428,7 +1483,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -1462,7 +1518,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -1505,7 +1562,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchClusterUpgradeInfo": { @@ -1535,7 +1593,9 @@ "$ref": "ClusterUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -1578,7 +1638,9 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "legacyAbac": { @@ -1619,7 +1681,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "list": { @@ -1655,7 +1718,9 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "locations": { @@ -1697,7 +1762,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "logging": { @@ -1738,7 +1804,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "master": { @@ -1779,7 +1846,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "monitoring": { @@ -1820,7 +1888,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "resourceLabels": { @@ -1861,7 +1930,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMaintenancePolicy": { @@ -1902,7 +1972,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMasterAuth": { @@ -1943,7 +2014,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setNetworkPolicy": { @@ -1984,7 +2056,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "startIpRotation": { @@ -2025,7 +2098,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -2066,7 +2140,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } }, @@ -2118,7 +2193,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -2159,7 +2235,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -2209,7 +2286,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchNodePoolUpgradeInfo": { @@ -2239,7 +2317,9 @@ "$ref": "NodePoolUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -2289,7 +2369,9 @@ "$ref": "NodePool" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -2332,7 +2414,9 @@ "$ref": "ListNodePoolsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "rollback": { @@ -2380,7 +2464,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setManagement": { @@ -2428,7 +2513,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setSize": { @@ -2476,7 +2562,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -2524,7 +2611,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } } @@ -2571,7 +2659,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "get": { @@ -2614,7 +2703,9 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -2650,7 +2741,9 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } } @@ -2660,7 +2753,7 @@ } } }, - "revision": "20260507", + "revision": "20260519", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2798,6 +2891,10 @@ "description": "Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality.", "id": "AddonsConfig", "properties": { + "agentSandboxConfig": { + "$ref": "AgentSandboxConfig", + "description": "Optional. Configuration for the AgentSandbox addon." + }, "cloudRunConfig": { "$ref": "CloudRunConfig", "description": "Configuration for the Cloud Run addon, which allows the user to use a managed Knative service." @@ -2945,6 +3042,17 @@ }, "type": "object" }, + "AgentSandboxConfig": { + "description": "Configuration for the AgentSandbox addon.", + "id": "AgentSandboxConfig", + "properties": { + "enabled": { + "description": "Optional. Whether AgentSandbox is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "AnonymousAuthenticationConfig": { "description": "AnonymousAuthenticationConfig defines the settings needed to limit endpoints that allow anonymous authentication.", "id": "AnonymousAuthenticationConfig", @@ -4143,6 +4251,14 @@ "$ref": "IdentityServiceConfig", "description": "The desired Identity Service component configuration." }, + "desiredImage": { + "description": "The desired name of the image to use for this node. This is used to create clusters using a custom image. NOTE: Set the \"desired_node_pool\" field as well.", + "type": "string" + }, + "desiredImageProject": { + "description": "The project containing the desired image to use for this node. This is used to create clusters using a custom image. NOTE: Set the \"desired_node_pool\" field as well.", + "type": "string" + }, "desiredImageType": { "description": "The desired image type for the node pool. NOTE: Set the \"desired_node_pool\" field as well.", "type": "string" @@ -4714,6 +4830,25 @@ }, "type": "object" }, + "CustomImageConfig": { + "description": "CustomImageConfig contains the information r", + "id": "CustomImageConfig", + "properties": { + "image": { + "description": "The name of the image to use for this node.", + "type": "string" + }, + "imageFamily": { + "description": "The name of the image family to use for this node.", + "type": "string" + }, + "imageProject": { + "description": "The project containing the image to use for this node.", + "type": "string" + } + }, + "type": "object" + }, "CustomNodeInit": { "description": "Support for running custom init code while bootstrapping nodes.", "id": "CustomNodeInit", @@ -4882,6 +5017,27 @@ }, "type": "object" }, + "DataplaneV2Config": { + "description": "DataplaneV2Config is the configuration for DPv2.", + "id": "DataplaneV2Config", + "properties": { + "scalabilityMode": { + "description": "Optional. Scalability mode for the cluster.", + "enum": [ + "SCALABILITY_MODE_UNSPECIFIED", + "DISABLED", + "SCALE_OPTIMIZED" + ], + "enumDescriptions": [ + "Default value.", + "Disables the scale optimized mode for DPv2.", + "Enables the scale optimized mode for DPv2." + ], + "type": "string" + } + }, + "type": "object" + }, "Date": { "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", "id": "Date", @@ -6061,7 +6217,7 @@ "additionalProperties": { "type": "string" }, - "description": "The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes", + "description": "The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.neigh.default.gc_thresh1 net.ipv4.neigh.default.gc_thresh2 net.ipv4.neigh.default.gc_thresh3 net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.keys.maxkeys kernel.keys.maxbytes kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes", "type": "object" }, "transparentHugepageDefrag": { @@ -6608,6 +6764,10 @@ ], "type": "string" }, + "dataplaneV2Config": { + "$ref": "DataplaneV2Config", + "description": "Optional. DataplaneV2Config specifies the DPv2 configuration." + }, "defaultEnablePrivateNodes": { "description": "Controls whether by default nodes have private IP addresses only. It is invalid to specify both PrivateClusterConfig.enablePrivateNodes and this field at the same time. To update the default setting, use ClusterUpdate.desired_default_enable_private_nodes", "type": "boolean" @@ -6979,6 +7139,10 @@ "description": "Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on [sole tenant nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).", "type": "string" }, + "nodeImageConfig": { + "$ref": "CustomImageConfig", + "description": "The node image configuration to use for this node pool. Note that this is only applicable for node pools using image_type=CUSTOM." + }, "oauthScopes": { "description": "The set of Google API scopes to be made available on all of the node VMs under the \"default\" service account. The following scopes are recommended, but not required, and by default are not included: * `https://www.googleapis.com/auth/compute` is required for mounting persistent storage on your nodes. * `https://www.googleapis.com/auth/devstorage.read_only` is required for communicating with **gcr.io** (the [Artifact Registry](https://cloud.google.com/artifact-registry/)). If unspecified, no scopes are added, unless Cloud Logging or Cloud Monitoring are enabled, in which case their required scopes will be added.", "items": { @@ -7331,6 +7495,10 @@ "description": "Whether nodes have internal IP addresses only. If enable_private_nodes is not specified, then the value is derived from Cluster.NetworkConfig.default_enable_private_nodes", "type": "boolean" }, + "network": { + "description": "Optional. Immutable. The VPC network for the node pool.", + "type": "string" + }, "networkPerformanceConfig": { "$ref": "NetworkPerformanceConfig", "description": "Network bandwidth tier configuration." @@ -9731,6 +9899,14 @@ "$ref": "VirtualNIC", "description": "Enable or disable gvnic on the node pool." }, + "image": { + "description": "The desired name of the image name to use for this node. This is used to create clusters using a custom image.", + "type": "string" + }, + "imageProject": { + "description": "The project containing the desired image to use for this node pool. This is used to create clusters using a custom image.", + "type": "string" + }, "imageType": { "description": "Required. The desired image type for the node pool. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types.", "type": "string" diff --git a/discovery/container-v1beta1.json b/discovery/container-v1beta1.json index 59b81bdeb9..29317eb0a7 100644 --- a/discovery/container-v1beta1.json +++ b/discovery/container-v1beta1.json @@ -4,6 +4,12 @@ "scopes": { "https://www.googleapis.com/auth/cloud-platform": { "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + }, + "https://www.googleapis.com/auth/container": { + "description": "See, edit, configure, and delete your Google Kubernetes Engine data and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/container.read-only": { + "description": "See your Google Kubernetes Engine data and the email address of your Google Account" } } } @@ -149,7 +155,9 @@ "$ref": "ListUsableSubnetworksResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } } @@ -192,7 +200,9 @@ "$ref": "ServerConfig" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -217,7 +227,8 @@ "$ref": "ListLocationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } }, @@ -246,7 +257,9 @@ "$ref": "CheckAutopilotCompatibilityResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "completeControlPlaneUpgrade": { @@ -274,7 +287,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "completeIpRotation": { @@ -302,7 +316,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -330,7 +345,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -373,7 +389,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchClusterUpgradeInfo": { @@ -403,7 +420,9 @@ "$ref": "ClusterUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -446,7 +465,9 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "getJwks": { @@ -505,7 +526,9 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "setAddons": { @@ -533,7 +556,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setLegacyAbac": { @@ -561,7 +585,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setLocations": { @@ -590,7 +615,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setLogging": { @@ -618,7 +644,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMaintenancePolicy": { @@ -646,7 +673,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMasterAuth": { @@ -674,7 +702,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMonitoring": { @@ -702,7 +731,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setNetworkPolicy": { @@ -730,7 +760,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setResourceLabels": { @@ -758,7 +789,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "startIpRotation": { @@ -786,7 +818,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -814,7 +847,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "updateMaster": { @@ -842,7 +876,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } }, @@ -874,7 +909,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -902,7 +938,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -951,7 +988,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchNodePoolUpgradeInfo": { @@ -981,7 +1019,9 @@ "$ref": "NodePoolUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -1030,7 +1070,9 @@ "$ref": "NodePool" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -1073,7 +1115,9 @@ "$ref": "ListNodePoolsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "rollback": { @@ -1101,7 +1145,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setAutoscaling": { @@ -1129,7 +1174,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setManagement": { @@ -1157,7 +1203,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setSize": { @@ -1185,7 +1232,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -1213,7 +1261,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } } @@ -1273,7 +1322,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "get": { @@ -1316,7 +1366,9 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -1353,7 +1405,9 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } } @@ -1395,7 +1449,9 @@ "$ref": "ServerConfig" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } }, @@ -1440,7 +1496,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "completeControlPlaneUpgrade": { @@ -1468,7 +1525,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "completeIpRotation": { @@ -1509,7 +1567,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -1543,7 +1602,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -1586,7 +1646,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchClusterUpgradeInfo": { @@ -1616,7 +1677,9 @@ "$ref": "ClusterUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -1659,7 +1722,9 @@ "$ref": "Cluster" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "legacyAbac": { @@ -1700,7 +1765,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "list": { @@ -1736,7 +1802,9 @@ "$ref": "ListClustersResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "locations": { @@ -1778,7 +1846,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "logging": { @@ -1819,7 +1888,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "master": { @@ -1860,7 +1930,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "monitoring": { @@ -1901,7 +1972,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "resourceLabels": { @@ -1942,7 +2014,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMaintenancePolicy": { @@ -1983,7 +2056,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setMasterAuth": { @@ -2024,7 +2098,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setNetworkPolicy": { @@ -2065,7 +2140,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "startIpRotation": { @@ -2106,7 +2182,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -2147,7 +2224,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } }, @@ -2199,7 +2277,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "create": { @@ -2240,7 +2319,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "delete": { @@ -2290,7 +2370,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "fetchNodePoolUpgradeInfo": { @@ -2320,7 +2401,9 @@ "$ref": "NodePoolUpgradeInfo" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "get": { @@ -2370,7 +2453,9 @@ "$ref": "NodePool" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -2413,7 +2498,9 @@ "$ref": "ListNodePoolsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "rollback": { @@ -2461,7 +2548,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setManagement": { @@ -2509,7 +2597,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "setSize": { @@ -2557,7 +2646,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "update": { @@ -2605,7 +2695,8 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] } } @@ -2652,7 +2743,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container" ] }, "get": { @@ -2695,7 +2787,9 @@ "$ref": "Operation" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] }, "list": { @@ -2731,7 +2825,9 @@ "$ref": "ListOperationsResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/container", + "https://www.googleapis.com/auth/container.read-only" ] } } @@ -2741,7 +2837,7 @@ } } }, - "revision": "20260507", + "revision": "20260519", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -4393,6 +4489,14 @@ "$ref": "IdentityServiceConfig", "description": "The desired Identity Service component configuration." }, + "desiredImage": { + "description": "The desired name of the image to use for this node. This is used to create clusters using a custom image.", + "type": "string" + }, + "desiredImageProject": { + "description": "The project containing the desired image to use for this node. This is used to create clusters using a custom image.", + "type": "string" + }, "desiredImageType": { "description": "The desired image type for the node pool. NOTE: Set the \"desired_node_pool\" field as well.", "type": "string" @@ -5040,6 +5144,25 @@ }, "type": "object" }, + "CustomImageConfig": { + "description": "CustomImageConfig contains the information r", + "id": "CustomImageConfig", + "properties": { + "image": { + "description": "The name of the image to use for this node.", + "type": "string" + }, + "imageFamily": { + "description": "The name of the image family to use for this node.", + "type": "string" + }, + "imageProject": { + "description": "The project containing the image to use for this node.", + "type": "string" + } + }, + "type": "object" + }, "CustomNodeInit": { "description": "Support for running custom init code while bootstrapping nodes.", "id": "CustomNodeInit", @@ -5208,6 +5331,27 @@ }, "type": "object" }, + "DataplaneV2Config": { + "description": "DataplaneV2Config is the configuration for DPv2.", + "id": "DataplaneV2Config", + "properties": { + "scalabilityMode": { + "description": "Optional. Scalability mode for the cluster.", + "enum": [ + "SCALABILITY_MODE_UNSPECIFIED", + "DISABLED", + "SCALE_OPTIMIZED" + ], + "enumDescriptions": [ + "Default value.", + "Disables the scale optimized mode for DPv2.", + "Enables the scale optimized mode for DPv2." + ], + "type": "string" + } + }, + "type": "object" + }, "Date": { "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", "id": "Date", @@ -6465,7 +6609,7 @@ "additionalProperties": { "type": "string" }, - "description": "The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes", + "description": "The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.neigh.default.gc_thresh1 net.ipv4.neigh.default.gc_thresh2 net.ipv4.neigh.default.gc_thresh3 net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.keys.maxkeys kernel.keys.maxbytes kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes", "type": "object" }, "transparentHugepageDefrag": { @@ -7091,6 +7235,10 @@ ], "type": "string" }, + "dataplaneV2Config": { + "$ref": "DataplaneV2Config", + "description": "Optional. DataplaneV2Config specifies the DPv2 configuration." + }, "defaultEnablePrivateNodes": { "description": "Controls whether by default nodes have private IP addresses only. It is invalid to specify both PrivateClusterConfig.enablePrivateNodes and this field at the same time. To update the default setting, use ClusterUpdate.desired_default_enable_private_nodes", "type": "boolean" @@ -7482,6 +7630,10 @@ "description": "Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on [sole tenant nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).", "type": "string" }, + "nodeImageConfig": { + "$ref": "CustomImageConfig", + "description": "The node image configuration to use for this node pool. Note that this is only applicable for node pools using image_type=CUSTOM." + }, "oauthScopes": { "description": "The set of Google API scopes to be made available on all of the node VMs under the \"default\" service account. The following scopes are recommended, but not required, and by default are not included: * `https://www.googleapis.com/auth/compute` is required for mounting persistent storage on your nodes. * `https://www.googleapis.com/auth/devstorage.read_only` is required for communicating with **gcr.io** (the [Artifact Registry](https://cloud.google.com/artifact-registry/)). If unspecified, no scopes are added, unless Cloud Logging or Cloud Monitoring are enabled, in which case their required scopes will be added.", "items": { @@ -7838,6 +7990,10 @@ "description": "Whether nodes have internal IP addresses only. If enable_private_nodes is not specified, then the value is derived from Cluster.NetworkConfig.default_enable_private_nodes", "type": "boolean" }, + "network": { + "description": "Optional. Immutable. The VPC network for the node pool.", + "type": "string" + }, "networkPerformanceConfig": { "$ref": "NetworkPerformanceConfig", "description": "Network bandwidth tier configuration." @@ -10399,6 +10555,14 @@ "$ref": "VirtualNIC", "description": "Enable or disable gvnic on the node pool." }, + "image": { + "description": "The desired name of the image name to use for this node. This is used to create clusters using a custom image.", + "type": "string" + }, + "imageProject": { + "description": "The project containing the desired image to use for this node pool. This is used to create clusters using a custom image.", + "type": "string" + }, "imageType": { "description": "Required. The desired image type for the node pool. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types.", "type": "string" diff --git a/src/apis/container/v1.ts b/src/apis/container/v1.ts index bab58bf3c8..9df33c45d7 100644 --- a/src/apis/container/v1.ts +++ b/src/apis/container/v1.ts @@ -226,6 +226,10 @@ export namespace container_v1 { * Configuration for the addons that can be automatically spun up in the cluster, enabling additional functionality. */ export interface Schema$AddonsConfig { + /** + * Optional. Configuration for the AgentSandbox addon. + */ + agentSandboxConfig?: Schema$AgentSandboxConfig; /** * Configuration for the Cloud Run addon, which allows the user to use a managed Knative service. */ @@ -341,6 +345,15 @@ export namespace container_v1 { */ threadsPerCore?: string | null; } + /** + * Configuration for the AgentSandbox addon. + */ + export interface Schema$AgentSandboxConfig { + /** + * Optional. Whether AgentSandbox is enabled for this cluster. + */ + enabled?: boolean | null; + } /** * AnonymousAuthenticationConfig defines the settings needed to limit endpoints that allow anonymous authentication. */ @@ -1258,6 +1271,14 @@ export namespace container_v1 { * The desired Identity Service component configuration. */ desiredIdentityServiceConfig?: Schema$IdentityServiceConfig; + /** + * The desired name of the image to use for this node. This is used to create clusters using a custom image. NOTE: Set the "desired_node_pool" field as well. + */ + desiredImage?: string | null; + /** + * The project containing the desired image to use for this node. This is used to create clusters using a custom image. NOTE: Set the "desired_node_pool" field as well. + */ + desiredImageProject?: string | null; /** * The desired image type for the node pool. NOTE: Set the "desired_node_pool" field as well. */ @@ -1673,6 +1694,23 @@ export namespace container_v1 { */ zone?: string | null; } + /** + * CustomImageConfig contains the information r + */ + export interface Schema$CustomImageConfig { + /** + * The name of the image to use for this node. + */ + image?: string | null; + /** + * The name of the image family to use for this node. + */ + imageFamily?: string | null; + /** + * The project containing the image to use for this node. + */ + imageProject?: string | null; + } /** * Support for running custom init code while bootstrapping nodes. */ @@ -1720,6 +1758,15 @@ export namespace container_v1 { */ state?: string | null; } + /** + * DataplaneV2Config is the configuration for DPv2. + */ + export interface Schema$DataplaneV2Config { + /** + * Optional. Scalability mode for the cluster. + */ + scalabilityMode?: string | null; + } /** * Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp */ @@ -2588,7 +2635,7 @@ export namespace container_v1 { */ swapConfig?: Schema$SwapConfig; /** - * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes + * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.neigh.default.gc_thresh1 net.ipv4.neigh.default.gc_thresh2 net.ipv4.neigh.default.gc_thresh3 net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.keys.maxkeys kernel.keys.maxbytes kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes */ sysctls?: {[key: string]: string} | null; /** @@ -2915,6 +2962,10 @@ export namespace container_v1 { * The desired datapath provider for this cluster. By default, uses the IPTables-based kube-proxy implementation. */ datapathProvider?: string | null; + /** + * Optional. DataplaneV2Config specifies the DPv2 configuration. + */ + dataplaneV2Config?: Schema$DataplaneV2Config; /** * Controls whether by default nodes have private IP addresses only. It is invalid to specify both PrivateClusterConfig.enablePrivateNodes and this field at the same time. To update the default setting, use ClusterUpdate.desired_default_enable_private_nodes */ @@ -3170,6 +3221,10 @@ export namespace container_v1 { * Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on [sole tenant nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). */ nodeGroup?: string | null; + /** + * The node image configuration to use for this node pool. Note that this is only applicable for node pools using image_type=CUSTOM. + */ + nodeImageConfig?: Schema$CustomImageConfig; /** * The set of Google API scopes to be made available on all of the node VMs under the "default" service account. The following scopes are recommended, but not required, and by default are not included: * `https://www.googleapis.com/auth/compute` is required for mounting persistent storage on your nodes. * `https://www.googleapis.com/auth/devstorage.read_only` is required for communicating with **gcr.io** (the [Artifact Registry](https://cloud.google.com/artifact-registry/)). If unspecified, no scopes are added, unless Cloud Logging or Cloud Monitoring are enabled, in which case their required scopes will be added. */ @@ -3446,6 +3501,10 @@ export namespace container_v1 { * Whether nodes have internal IP addresses only. If enable_private_nodes is not specified, then the value is derived from Cluster.NetworkConfig.default_enable_private_nodes */ enablePrivateNodes?: boolean | null; + /** + * Optional. Immutable. The VPC network for the node pool. + */ + network?: string | null; /** * Network bandwidth tier configuration. */ @@ -5104,6 +5163,14 @@ export namespace container_v1 { * Enable or disable gvnic on the node pool. */ gvnic?: Schema$VirtualNIC; + /** + * The desired name of the image name to use for this node. This is used to create clusters using a custom image. + */ + image?: string | null; + /** + * The project containing the desired image to use for this node pool. This is used to create clusters using a custom image. + */ + imageProject?: string | null; /** * Required. The desired image type for the node pool. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types. */ @@ -5564,7 +5631,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5746,7 +5817,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -5922,7 +5997,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6072,7 +6151,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6235,7 +6317,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6397,7 +6482,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6551,7 +6639,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6700,7 +6792,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7063,7 +7159,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7207,7 +7307,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7370,7 +7473,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7534,7 +7640,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7697,7 +7806,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7860,7 +7972,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8026,7 +8141,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8191,7 +8309,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8355,7 +8476,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8519,7 +8643,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8684,7 +8811,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8848,7 +8978,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9008,7 +9141,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9405,7 +9541,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9548,7 +9687,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9712,7 +9854,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9869,7 +10014,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10020,7 +10169,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10186,7 +10339,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10332,7 +10489,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10497,7 +10657,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10663,7 +10826,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10829,7 +10995,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10994,7 +11163,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11023,6 +11195,8 @@ export namespace container_v1 { * // "flexStart": false, * // "gcfsConfig": {}, * // "gvnic": {}, + * // "image": "my_image", + * // "imageProject": "my_imageProject", * // "imageType": "my_imageType", * // "kubeletConfig": {}, * // "labels": {}, @@ -11510,7 +11684,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11653,7 +11830,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11807,7 +11988,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12006,7 +12191,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12177,7 +12366,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12344,7 +12536,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12511,7 +12706,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12674,7 +12872,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12831,7 +13032,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12979,7 +13184,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13206,7 +13415,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13373,7 +13585,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13516,7 +13732,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13683,7 +13902,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13850,7 +14072,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14017,7 +14242,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14184,7 +14412,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14352,7 +14583,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14522,7 +14756,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14690,7 +14927,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14857,7 +15097,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15024,7 +15267,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15521,7 +15767,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15692,7 +15941,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15859,7 +16111,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16018,7 +16273,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16167,7 +16426,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16335,7 +16598,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16480,7 +16747,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16651,7 +16921,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16822,7 +17095,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16993,7 +17269,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17028,6 +17307,8 @@ export namespace container_v1 { * // "flexStart": false, * // "gcfsConfig": {}, * // "gvnic": {}, + * // "image": "my_image", + * // "imageProject": "my_imageProject", * // "imageType": "my_imageType", * // "kubeletConfig": {}, * // "labels": {}, @@ -17409,7 +17690,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17559,7 +17843,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17716,7 +18004,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls diff --git a/src/apis/container/v1beta1.ts b/src/apis/container/v1beta1.ts index ba508fa354..3a434aa9b8 100644 --- a/src/apis/container/v1beta1.ts +++ b/src/apis/container/v1beta1.ts @@ -1378,6 +1378,14 @@ export namespace container_v1beta1 { * The desired Identity Service component configuration. */ desiredIdentityServiceConfig?: Schema$IdentityServiceConfig; + /** + * The desired name of the image to use for this node. This is used to create clusters using a custom image. + */ + desiredImage?: string | null; + /** + * The project containing the desired image to use for this node. This is used to create clusters using a custom image. + */ + desiredImageProject?: string | null; /** * The desired image type for the node pool. NOTE: Set the "desired_node_pool" field as well. */ @@ -1859,6 +1867,23 @@ export namespace container_v1beta1 { */ zone?: string | null; } + /** + * CustomImageConfig contains the information r + */ + export interface Schema$CustomImageConfig { + /** + * The name of the image to use for this node. + */ + image?: string | null; + /** + * The name of the image family to use for this node. + */ + imageFamily?: string | null; + /** + * The project containing the image to use for this node. + */ + imageProject?: string | null; + } /** * Support for running custom init code while bootstrapping nodes. */ @@ -1906,6 +1931,15 @@ export namespace container_v1beta1 { */ state?: string | null; } + /** + * DataplaneV2Config is the configuration for DPv2. + */ + export interface Schema$DataplaneV2Config { + /** + * Optional. Scalability mode for the cluster. + */ + scalabilityMode?: string | null; + } /** * Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp */ @@ -2822,7 +2856,7 @@ export namespace container_v1beta1 { */ swapConfig?: Schema$SwapConfig; /** - * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes + * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes. The following parameters are supported. net.core.busy_poll net.core.busy_read net.core.netdev_max_backlog net.core.rmem_max net.core.rmem_default net.core.wmem_default net.core.wmem_max net.core.optmem_max net.core.somaxconn net.ipv4.neigh.default.gc_thresh1 net.ipv4.neigh.default.gc_thresh2 net.ipv4.neigh.default.gc_thresh3 net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_tw_reuse net.ipv4.tcp_mtu_probing net.ipv4.tcp_max_orphans net.ipv4.tcp_max_tw_buckets net.ipv4.tcp_syn_retries net.ipv4.tcp_ecn net.ipv4.tcp_congestion_control net.netfilter.nf_conntrack_max net.netfilter.nf_conntrack_buckets net.netfilter.nf_conntrack_tcp_timeout_close_wait net.netfilter.nf_conntrack_tcp_timeout_time_wait net.netfilter.nf_conntrack_tcp_timeout_established net.netfilter.nf_conntrack_acct kernel.keys.maxkeys kernel.keys.maxbytes kernel.shmmni kernel.shmmax kernel.shmall kernel.perf_event_paranoid kernel.sched_rt_runtime_us kernel.softlockup_panic kernel.yama.ptrace_scope kernel.kptr_restrict kernel.dmesg_restrict kernel.sysrq fs.aio-max-nr fs.file-max fs.inotify.max_user_instances fs.inotify.max_user_watches fs.nr_open vm.dirty_background_ratio vm.dirty_background_bytes vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_bytes vm.dirty_writeback_centisecs vm.max_map_count vm.overcommit_memory vm.overcommit_ratio vm.vfs_cache_pressure vm.swappiness vm.watermark_scale_factor vm.min_free_kbytes */ sysctls?: {[key: string]: string} | null; /** @@ -3188,6 +3222,10 @@ export namespace container_v1beta1 { * The desired datapath provider for this cluster. By default, uses the IPTables-based kube-proxy implementation. */ datapathProvider?: string | null; + /** + * Optional. DataplaneV2Config specifies the DPv2 configuration. + */ + dataplaneV2Config?: Schema$DataplaneV2Config; /** * Controls whether by default nodes have private IP addresses only. It is invalid to specify both PrivateClusterConfig.enablePrivateNodes and this field at the same time. To update the default setting, use ClusterUpdate.desired_default_enable_private_nodes */ @@ -3455,6 +3493,10 @@ export namespace container_v1beta1 { * Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on [sole tenant nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). */ nodeGroup?: string | null; + /** + * The node image configuration to use for this node pool. Note that this is only applicable for node pools using image_type=CUSTOM. + */ + nodeImageConfig?: Schema$CustomImageConfig; /** * The set of Google API scopes to be made available on all of the node VMs under the "default" service account. The following scopes are recommended, but not required, and by default are not included: * `https://www.googleapis.com/auth/compute` is required for mounting persistent storage on your nodes. * `https://www.googleapis.com/auth/devstorage.read_only` is required for communicating with **gcr.io** (the [Artifact Registry](https://cloud.google.com/artifact-registry/)). If unspecified, no scopes are added, unless Cloud Logging or Cloud Monitoring are enabled, in which case their required scopes will be added. */ @@ -3735,6 +3777,10 @@ export namespace container_v1beta1 { * Whether nodes have internal IP addresses only. If enable_private_nodes is not specified, then the value is derived from Cluster.NetworkConfig.default_enable_private_nodes */ enablePrivateNodes?: boolean | null; + /** + * Optional. Immutable. The VPC network for the node pool. + */ + network?: string | null; /** * Network bandwidth tier configuration. */ @@ -5505,6 +5551,14 @@ export namespace container_v1beta1 { * Enable or disable gvnic on the node pool. */ gvnic?: Schema$VirtualNIC; + /** + * The desired name of the image name to use for this node. This is used to create clusters using a custom image. + */ + image?: string | null; + /** + * The project containing the desired image to use for this node pool. This is used to create clusters using a custom image. + */ + imageProject?: string | null; /** * Required. The desired image type for the node pool. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types. */ @@ -6058,7 +6112,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6240,7 +6298,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6387,7 +6449,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6563,7 +6628,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6712,7 +6781,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -6874,7 +6946,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7037,7 +7112,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7199,7 +7277,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7353,7 +7434,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7503,7 +7588,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -7881,7 +7970,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8025,7 +8118,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8188,7 +8284,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8352,7 +8451,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8515,7 +8617,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8678,7 +8783,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -8844,7 +8952,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9009,7 +9120,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9173,7 +9287,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9337,7 +9454,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9502,7 +9622,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9666,7 +9789,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -9826,7 +9952,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10234,7 +10363,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10377,7 +10509,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10541,7 +10676,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10698,7 +10836,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -10848,7 +10990,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11014,7 +11160,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11160,7 +11310,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11325,7 +11478,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11491,7 +11647,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11657,7 +11816,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11822,7 +11984,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -11851,6 +12016,8 @@ export namespace container_v1beta1 { * // "flexStart": false, * // "gcfsConfig": {}, * // "gvnic": {}, + * // "image": "my_image", + * // "imageProject": "my_imageProject", * // "imageType": "my_imageType", * // "kubeletConfig": {}, * // "labels": {}, @@ -12338,7 +12505,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12484,7 +12654,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12638,7 +12812,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -12837,7 +13015,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13010,7 +13192,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13177,7 +13362,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13339,7 +13527,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13506,7 +13697,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13669,7 +13863,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13826,7 +14023,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -13975,7 +14176,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14214,7 +14419,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14381,7 +14589,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14524,7 +14736,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14691,7 +14906,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -14858,7 +15076,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15025,7 +15246,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15192,7 +15416,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15360,7 +15587,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15530,7 +15760,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15698,7 +15931,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -15865,7 +16101,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16032,7 +16271,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16540,7 +16782,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16711,7 +16956,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -16878,7 +17126,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17037,7 +17288,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17185,7 +17440,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17353,7 +17612,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17498,7 +17761,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17669,7 +17935,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -17840,7 +18109,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18011,7 +18283,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18046,6 +18321,8 @@ export namespace container_v1beta1 { * // "flexStart": false, * // "gcfsConfig": {}, * // "gvnic": {}, + * // "image": "my_image", + * // "imageProject": "my_imageProject", * // "imageType": "my_imageType", * // "kubeletConfig": {}, * // "labels": {}, @@ -18427,7 +18704,10 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18577,7 +18857,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls @@ -18734,7 +19018,11 @@ export namespace container_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'], + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/container', + * 'https://www.googleapis.com/auth/container.read-only', + * ], * }); * * // Acquire an auth client, and bind it to all future calls From 0956a6dd6c4e84938d4ed1df1350821be46fd708 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 14/29] feat(containeranalysis): update the API #### containeranalysis:v1beta1 The following keys were added: - schemas.CVSS.properties.attackRequirements.description - schemas.CVSS.properties.attackRequirements.enum - schemas.CVSS.properties.attackRequirements.enumDescriptions - schemas.CVSS.properties.attackRequirements.type - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.description - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.enum - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.enumDescriptions - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.type - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.description - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.enum - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.enumDescriptions - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.type - schemas.CVSS.properties.subsequentSystemIntegrityImpact.description - schemas.CVSS.properties.subsequentSystemIntegrityImpact.enum - schemas.CVSS.properties.subsequentSystemIntegrityImpact.enumDescriptions - schemas.CVSS.properties.subsequentSystemIntegrityImpact.type - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.description - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.enum - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.enumDescriptions - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.type - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.description - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.enum - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.enumDescriptions - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.type - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.description - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.enum - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.enumDescriptions - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.type The following keys were changed: - schemas.CVSS.description - schemas.CVSS.properties.attackComplexity.description - schemas.CVSS.properties.attackComplexity.enumDescriptions - schemas.CVSS.properties.attackVector.description - schemas.CVSS.properties.attackVector.enumDescriptions - schemas.CVSS.properties.authentication.description - schemas.CVSS.properties.authentication.enumDescriptions - schemas.CVSS.properties.availabilityImpact.description - schemas.CVSS.properties.availabilityImpact.enumDescriptions - schemas.CVSS.properties.confidentialityImpact.description - schemas.CVSS.properties.confidentialityImpact.enumDescriptions - schemas.CVSS.properties.integrityImpact.description - schemas.CVSS.properties.integrityImpact.enumDescriptions - schemas.CVSS.properties.privilegesRequired.description - schemas.CVSS.properties.privilegesRequired.enumDescriptions - schemas.CVSS.properties.scope.description - schemas.CVSS.properties.scope.enumDescriptions - schemas.CVSS.properties.userInteraction.description - schemas.CVSS.properties.userInteraction.enum - schemas.CVSS.properties.userInteraction.enumDescriptions - schemas.GrafeasV1beta1VulnerabilityDetails.properties.cvssVersion.enum - schemas.GrafeasV1beta1VulnerabilityDetails.properties.cvssVersion.enumDescriptions - schemas.Vulnerability.properties.cvssVersion.enum - schemas.Vulnerability.properties.cvssVersion.enumDescriptions #### containeranalysis:v1 The following keys were added: - schemas.CVSS.properties.attackComplexity.description - schemas.CVSS.properties.attackRequirements.description - schemas.CVSS.properties.attackRequirements.enum - schemas.CVSS.properties.attackRequirements.enumDescriptions - schemas.CVSS.properties.attackRequirements.type - schemas.CVSS.properties.authentication.description - schemas.CVSS.properties.availabilityImpact.description - schemas.CVSS.properties.confidentialityImpact.description - schemas.CVSS.properties.integrityImpact.description - schemas.CVSS.properties.privilegesRequired.description - schemas.CVSS.properties.scope.description - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.description - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.enum - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.enumDescriptions - schemas.CVSS.properties.subsequentSystemAvailabilityImpact.type - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.description - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.enum - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.enumDescriptions - schemas.CVSS.properties.subsequentSystemConfidentialityImpact.type - schemas.CVSS.properties.subsequentSystemIntegrityImpact.description - schemas.CVSS.properties.subsequentSystemIntegrityImpact.enum - schemas.CVSS.properties.subsequentSystemIntegrityImpact.enumDescriptions - schemas.CVSS.properties.subsequentSystemIntegrityImpact.type - schemas.CVSS.properties.userInteraction.description - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.description - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.enum - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.enumDescriptions - schemas.CVSS.properties.vulnerableSystemAvailabilityImpact.type - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.description - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.enum - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.enumDescriptions - schemas.CVSS.properties.vulnerableSystemConfidentialityImpact.type - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.description - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.enum - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.enumDescriptions - schemas.CVSS.properties.vulnerableSystemIntegrityImpact.type The following keys were changed: - schemas.CVSS.properties.attackComplexity.enumDescriptions - schemas.CVSS.properties.attackVector.description - schemas.CVSS.properties.attackVector.enumDescriptions - schemas.CVSS.properties.authentication.enumDescriptions - schemas.CVSS.properties.availabilityImpact.enumDescriptions - schemas.CVSS.properties.confidentialityImpact.enumDescriptions - schemas.CVSS.properties.integrityImpact.enumDescriptions - schemas.CVSS.properties.privilegesRequired.enumDescriptions - schemas.CVSS.properties.scope.enumDescriptions - schemas.CVSS.properties.userInteraction.enum - schemas.CVSS.properties.userInteraction.enumDescriptions - schemas.VulnerabilityNote.properties.cvssVersion.enum - schemas.VulnerabilityNote.properties.cvssVersion.enumDescriptions - schemas.VulnerabilityOccurrence.properties.cvssVersion.enum - schemas.VulnerabilityOccurrence.properties.cvssVersion.enumDescriptions --- discovery/containeranalysis-v1.json | 254 +++++++++++++++++----- discovery/containeranalysis-v1beta1.json | 264 +++++++++++++++++------ src/apis/containeranalysis/v1.ts | 54 ++++- src/apis/containeranalysis/v1beta1.ts | 48 ++++- 4 files changed, 496 insertions(+), 124 deletions(-) diff --git a/discovery/containeranalysis-v1.json b/discovery/containeranalysis-v1.json index e08ec614fc..e9a4220aaa 100644 --- a/discovery/containeranalysis-v1.json +++ b/discovery/containeranalysis-v1.json @@ -1715,7 +1715,7 @@ } } }, - "revision": "20260505", + "revision": "20260521", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AISkillAnalysisNote": { @@ -2329,6 +2329,7 @@ "id": "CVSS", "properties": { "attackComplexity": { + "description": "Attack Complexity (AC). Defined in CVSS v2, v3, v4.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", @@ -2336,15 +2337,29 @@ "ATTACK_COMPLEXITY_MEDIUM" ], "enumDescriptions": [ - "", - "", - "", - "" + "Unspecified.", + "Low attack complexity (AC:L). Defined in CVSS v2, v3, v4.", + "High attack complexity (AC:H). Defined in CVSS v2, v3, v4.", + "Medium attack complexity (AC:M). Defined in CVSS v2." + ], + "type": "string" + }, + "attackRequirements": { + "description": "Attack Requirements (AT). Defined in CVSS v4.", + "enum": [ + "ATTACK_REQUIREMENTS_UNSPECIFIED", + "ATTACK_REQUIREMENTS_NONE", + "ATTACK_REQUIREMENTS_PRESENT" + ], + "enumDescriptions": [ + "Unspecified.", + "No attack requirements (AT:N). Defined in CVSS v4.", + "Attack requirements: Present (AT:P). Defined in CVSS v4." ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments.", + "description": "Attack Vector (AV). Defined in CVSS v2, v3, v4.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -2353,15 +2368,16 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "", - "", - "", - "", - "" + "Unspecified.", + "Attack Vector: Network (AV:N). Defined in CVSS v2, v3, v4.", + "Attack Vector: Adjacent (AV:A). Defined in CVSS v2, v3, v4.", + "Attack Vector: Local (AV:L). Defined in CVSS v2, v3, v4.", + "Attack Vector: Physical (AV:P). Defined in CVSS v3, v4." ], "type": "string" }, "authentication": { + "description": "Authentication (Au). Defined in CVSS v2.", "enum": [ "AUTHENTICATION_UNSPECIFIED", "AUTHENTICATION_MULTIPLE", @@ -2369,14 +2385,15 @@ "AUTHENTICATION_NONE" ], "enumDescriptions": [ - "", - "", - "", - "" + "Unspecified.", + "Multiple authentication required (Au:M). Defined in CVSS v2.", + "Single authentication required (Au:S). Defined in CVSS v2.", + "No authentication required (Au:N). Defined in CVSS v2." ], "type": "string" }, "availabilityImpact": { + "description": "Availability Impact (A). Defined in CVSS v2, v3.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2386,12 +2403,12 @@ "IMPACT_COMPLETE" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, @@ -2401,6 +2418,7 @@ "type": "number" }, "confidentialityImpact": { + "description": "Confidentiality Impact (C). Defined in CVSS v2, v3.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2410,12 +2428,12 @@ "IMPACT_COMPLETE" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, @@ -2428,6 +2446,7 @@ "type": "number" }, "integrityImpact": { + "description": "Integrity Impact (I). Defined in CVSS v2, v3.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2437,16 +2456,17 @@ "IMPACT_COMPLETE" ], "enumDescriptions": [ - "", - "", - "", - "", - "", - "" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, "privilegesRequired": { + "description": "Privileges Required (PR). Defined in CVSS v3, v4.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -2454,36 +2474,162 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "", - "", - "", - "" + "Unspecified.", + "No privileges required (PR:N). Defined in CVSS v3, v4.", + "Low privileges required (PR:L). Defined in CVSS v3, v4.", + "High privileges required (PR:H). Defined in CVSS v3, v4." ], "type": "string" }, "scope": { + "description": "Scope (S). Defined in CVSS v3.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "", - "", - "" + "Unspecified.", + "Scope: Unchanged (S:U). Defined in CVSS v3.", + "Scope: Changed (S:C). Defined in CVSS v3." + ], + "type": "string" + }, + "subsequentSystemAvailabilityImpact": { + "description": "Subsequent System Availability Impact (SA). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "subsequentSystemConfidentialityImpact": { + "description": "Subsequent System Confidentiality Impact (SC). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "subsequentSystemIntegrityImpact": { + "description": "Subsequent System Integrity Impact (SI). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, "userInteraction": { + "description": "User Interaction (UI). Defined in CVSS v3, v4.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", - "USER_INTERACTION_REQUIRED" + "USER_INTERACTION_REQUIRED", + "USER_INTERACTION_PASSIVE", + "USER_INTERACTION_ACTIVE" ], "enumDescriptions": [ - "", - "", - "" + "Unspecified.", + "No user interaction required (UI:N). Defined in CVSS v3, v4.", + "User interaction required (UI:R). Defined in CVSS v3.", + "Passive user interaction required (UI:P). Defined in CVSS v4.", + "Active user interaction required (UI:A). Defined in CVSS v4." + ], + "type": "string" + }, + "vulnerableSystemAvailabilityImpact": { + "description": "Vulnerable System Availability Impact (VA). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "vulnerableSystemConfidentialityImpact": { + "description": "Vulnerable System Confidentiality Impact (VC). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "vulnerableSystemIntegrityImpact": { + "description": "Vulnerable System Integrity Impact (VI). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" } @@ -7294,12 +7440,14 @@ "enum": [ "CVSS_VERSION_UNSPECIFIED", "CVSS_VERSION_2", - "CVSS_VERSION_3" + "CVSS_VERSION_3", + "CVSS_VERSION_4" ], "enumDescriptions": [ - "", - "", - "" + "Unspecified.", + "CVSS v2.", + "CVSS v3.", + "CVSS v4." ], "type": "string" }, @@ -7363,12 +7511,14 @@ "enum": [ "CVSS_VERSION_UNSPECIFIED", "CVSS_VERSION_2", - "CVSS_VERSION_3" + "CVSS_VERSION_3", + "CVSS_VERSION_4" ], "enumDescriptions": [ - "", - "", - "" + "Unspecified.", + "CVSS v2.", + "CVSS v3.", + "CVSS v4." ], "type": "string" }, diff --git a/discovery/containeranalysis-v1beta1.json b/discovery/containeranalysis-v1beta1.json index 2dcd9bf413..8fa8006294 100644 --- a/discovery/containeranalysis-v1beta1.json +++ b/discovery/containeranalysis-v1beta1.json @@ -1771,7 +1771,7 @@ } } }, - "revision": "20260505", + "revision": "20260521", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AISkillAnalysisNote": { @@ -2388,11 +2388,11 @@ "type": "object" }, "CVSS": { - "description": "Common Vulnerability Scoring System. This message is compatible with CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator", + "description": "Common Vulnerability Scoring System. This message is compatible with CVSS v2, v3, and v4. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator For CVSS v4 details, see https://www.first.org/cvss/v4.0/user-guide CVSS v4 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v4-calculator", "id": "CVSS", "properties": { "attackComplexity": { - "description": "Defined in CVSS v3, CVSS v2", + "description": "Attack Complexity (AC). Defined in CVSS v2, v3, v4.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", @@ -2400,15 +2400,29 @@ "ATTACK_COMPLEXITY_MEDIUM" ], "enumDescriptions": [ - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v2" + "Unspecified.", + "Low attack complexity (AC:L). Defined in CVSS v2, v3, v4.", + "High attack complexity (AC:H). Defined in CVSS v2, v3, v4.", + "Medium attack complexity (AC:M). Defined in CVSS v2." + ], + "type": "string" + }, + "attackRequirements": { + "description": "Attack Requirements (AT). Defined in CVSS v4.", + "enum": [ + "ATTACK_REQUIREMENTS_UNSPECIFIED", + "ATTACK_REQUIREMENTS_NONE", + "ATTACK_REQUIREMENTS_PRESENT" + ], + "enumDescriptions": [ + "Unspecified.", + "No attack requirements (AT:N). Defined in CVSS v4.", + "Attack requirements: Present (AT:P). Defined in CVSS v4." ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. Defined in CVSS v3, CVSS v2", + "description": "Attack Vector (AV). Defined in CVSS v2, v3, v4.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -2417,16 +2431,16 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3" + "Unspecified.", + "Attack Vector: Network (AV:N). Defined in CVSS v2, v3, v4.", + "Attack Vector: Adjacent (AV:A). Defined in CVSS v2, v3, v4.", + "Attack Vector: Local (AV:L). Defined in CVSS v2, v3, v4.", + "Attack Vector: Physical (AV:P). Defined in CVSS v3, v4." ], "type": "string" }, "authentication": { - "description": "Defined in CVSS v2", + "description": "Authentication (Au). Defined in CVSS v2.", "enum": [ "AUTHENTICATION_UNSPECIFIED", "AUTHENTICATION_MULTIPLE", @@ -2434,15 +2448,15 @@ "AUTHENTICATION_NONE" ], "enumDescriptions": [ - "Defined in CVSS v2", - "Defined in CVSS v2", - "Defined in CVSS v2", - "Defined in CVSS v2" + "Unspecified.", + "Multiple authentication required (Au:M). Defined in CVSS v2.", + "Single authentication required (Au:S). Defined in CVSS v2.", + "No authentication required (Au:N). Defined in CVSS v2." ], "type": "string" }, "availabilityImpact": { - "description": "Defined in CVSS v3, CVSS v2", + "description": "Availability Impact (A). Defined in CVSS v2, v3.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2452,12 +2466,12 @@ "IMPACT_COMPLETE" ], "enumDescriptions": [ - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v2", - "Defined in CVSS v2" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, @@ -2467,7 +2481,7 @@ "type": "number" }, "confidentialityImpact": { - "description": "Defined in CVSS v3, CVSS v2", + "description": "Confidentiality Impact (C). Defined in CVSS v2, v3.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2477,12 +2491,12 @@ "IMPACT_COMPLETE" ], "enumDescriptions": [ - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v2", - "Defined in CVSS v2" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, @@ -2495,7 +2509,7 @@ "type": "number" }, "integrityImpact": { - "description": "Defined in CVSS v3, CVSS v2", + "description": "Integrity Impact (I). Defined in CVSS v2, v3.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2505,17 +2519,17 @@ "IMPACT_COMPLETE" ], "enumDescriptions": [ - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3, CVSS v2", - "Defined in CVSS v2", - "Defined in CVSS v2" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, "privilegesRequired": { - "description": "Defined in CVSS v3", + "description": "Privileges Required (PR). Defined in CVSS v3, v4.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -2523,38 +2537,162 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3" + "Unspecified.", + "No privileges required (PR:N). Defined in CVSS v3, v4.", + "Low privileges required (PR:L). Defined in CVSS v3, v4.", + "High privileges required (PR:H). Defined in CVSS v3, v4." ], "type": "string" }, "scope": { - "description": "Defined in CVSS v3", + "description": "Scope (S). Defined in CVSS v3.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3" + "Unspecified.", + "Scope: Unchanged (S:U). Defined in CVSS v3.", + "Scope: Changed (S:C). Defined in CVSS v3." + ], + "type": "string" + }, + "subsequentSystemAvailabilityImpact": { + "description": "Subsequent System Availability Impact (SA). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "subsequentSystemConfidentialityImpact": { + "description": "Subsequent System Confidentiality Impact (SC). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "subsequentSystemIntegrityImpact": { + "description": "Subsequent System Integrity Impact (SI). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" }, "userInteraction": { - "description": "Defined in CVSS v3", + "description": "User Interaction (UI). Defined in CVSS v3, v4.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", - "USER_INTERACTION_REQUIRED" + "USER_INTERACTION_REQUIRED", + "USER_INTERACTION_PASSIVE", + "USER_INTERACTION_ACTIVE" + ], + "enumDescriptions": [ + "Unspecified.", + "No user interaction required (UI:N). Defined in CVSS v3, v4.", + "User interaction required (UI:R). Defined in CVSS v3.", + "Passive user interaction required (UI:P). Defined in CVSS v4.", + "Active user interaction required (UI:A). Defined in CVSS v4." + ], + "type": "string" + }, + "vulnerableSystemAvailabilityImpact": { + "description": "Vulnerable System Availability Impact (VA). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" ], "enumDescriptions": [ - "Defined in CVSS v3", - "Defined in CVSS v3", - "Defined in CVSS v3" + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "vulnerableSystemConfidentialityImpact": { + "description": "Vulnerable System Confidentiality Impact (VC). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." + ], + "type": "string" + }, + "vulnerableSystemIntegrityImpact": { + "description": "Vulnerable System Integrity Impact (VI). Defined in CVSS v4.", + "enum": [ + "IMPACT_UNSPECIFIED", + "IMPACT_HIGH", + "IMPACT_LOW", + "IMPACT_NONE", + "IMPACT_PARTIAL", + "IMPACT_COMPLETE" + ], + "enumDescriptions": [ + "Unspecified.", + "High impact (H). Defined in CVSS v3, v4.", + "Low impact (L). Defined in CVSS v3, v4.", + "No impact (N). Defined in CVSS v2, v3, v4.", + "Partial impact (P). Defined in CVSS v2.", + "Complete impact (C). Defined in CVSS v2." ], "type": "string" } @@ -5442,12 +5580,14 @@ "enum": [ "CVSS_VERSION_UNSPECIFIED", "CVSS_VERSION_2", - "CVSS_VERSION_3" + "CVSS_VERSION_3", + "CVSS_VERSION_4" ], "enumDescriptions": [ - "", - "", - "" + "Unspecified.", + "CVSS v2.", + "CVSS v3.", + "CVSS v4." ], "type": "string" }, @@ -7584,12 +7724,14 @@ "enum": [ "CVSS_VERSION_UNSPECIFIED", "CVSS_VERSION_2", - "CVSS_VERSION_3" + "CVSS_VERSION_3", + "CVSS_VERSION_4" ], "enumDescriptions": [ - "", - "", - "" + "Unspecified.", + "CVSS v2.", + "CVSS v3.", + "CVSS v4." ], "type": "string" }, diff --git a/src/apis/containeranalysis/v1.ts b/src/apis/containeranalysis/v1.ts index 5db769f3d6..2c61208554 100644 --- a/src/apis/containeranalysis/v1.ts +++ b/src/apis/containeranalysis/v1.ts @@ -1796,24 +1796,76 @@ export namespace containeranalysis_v1 { * Common Vulnerability Scoring System. For details, see https://www.first.org/cvss/specification-document This is a message we will try to use for storing various versions of CVSS rather than making a separate proto for storing a specific version. */ export interface Schema$CVSS { + /** + * Attack Complexity (AC). Defined in CVSS v2, v3, v4. + */ attackComplexity?: string | null; /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. + * Attack Requirements (AT). Defined in CVSS v4. + */ + attackRequirements?: string | null; + /** + * Attack Vector (AV). Defined in CVSS v2, v3, v4. */ attackVector?: string | null; + /** + * Authentication (Au). Defined in CVSS v2. + */ authentication?: string | null; + /** + * Availability Impact (A). Defined in CVSS v2, v3. + */ availabilityImpact?: string | null; /** * The base score is a function of the base metric scores. */ baseScore?: number | null; + /** + * Confidentiality Impact (C). Defined in CVSS v2, v3. + */ confidentialityImpact?: string | null; exploitabilityScore?: number | null; impactScore?: number | null; + /** + * Integrity Impact (I). Defined in CVSS v2, v3. + */ integrityImpact?: string | null; + /** + * Privileges Required (PR). Defined in CVSS v3, v4. + */ privilegesRequired?: string | null; + /** + * Scope (S). Defined in CVSS v3. + */ scope?: string | null; + /** + * Subsequent System Availability Impact (SA). Defined in CVSS v4. + */ + subsequentSystemAvailabilityImpact?: string | null; + /** + * Subsequent System Confidentiality Impact (SC). Defined in CVSS v4. + */ + subsequentSystemConfidentialityImpact?: string | null; + /** + * Subsequent System Integrity Impact (SI). Defined in CVSS v4. + */ + subsequentSystemIntegrityImpact?: string | null; + /** + * User Interaction (UI). Defined in CVSS v3, v4. + */ userInteraction?: string | null; + /** + * Vulnerable System Availability Impact (VA). Defined in CVSS v4. + */ + vulnerableSystemAvailabilityImpact?: string | null; + /** + * Vulnerable System Confidentiality Impact (VC). Defined in CVSS v4. + */ + vulnerableSystemConfidentialityImpact?: string | null; + /** + * Vulnerable System Integrity Impact (VI). Defined in CVSS v4. + */ + vulnerableSystemIntegrityImpact?: string | null; } /** * Common Vulnerability Scoring System version 3. For details, see https://www.first.org/cvss/specification-document diff --git a/src/apis/containeranalysis/v1beta1.ts b/src/apis/containeranalysis/v1beta1.ts index 334d662343..1a0f503742 100644 --- a/src/apis/containeranalysis/v1beta1.ts +++ b/src/apis/containeranalysis/v1beta1.ts @@ -1690,23 +1690,27 @@ export namespace containeranalysis_v1beta1 { path?: string | null; } /** - * Common Vulnerability Scoring System. This message is compatible with CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator + * Common Vulnerability Scoring System. This message is compatible with CVSS v2, v3, and v4. For CVSS v2 details, see https://www.first.org/cvss/v2/guide CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator For CVSS v4 details, see https://www.first.org/cvss/v4.0/user-guide CVSS v4 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v4-calculator */ export interface Schema$CVSS { /** - * Defined in CVSS v3, CVSS v2 + * Attack Complexity (AC). Defined in CVSS v2, v3, v4. */ attackComplexity?: string | null; /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. Defined in CVSS v3, CVSS v2 + * Attack Requirements (AT). Defined in CVSS v4. + */ + attackRequirements?: string | null; + /** + * Attack Vector (AV). Defined in CVSS v2, v3, v4. */ attackVector?: string | null; /** - * Defined in CVSS v2 + * Authentication (Au). Defined in CVSS v2. */ authentication?: string | null; /** - * Defined in CVSS v3, CVSS v2 + * Availability Impact (A). Defined in CVSS v2, v3. */ availabilityImpact?: string | null; /** @@ -1714,27 +1718,51 @@ export namespace containeranalysis_v1beta1 { */ baseScore?: number | null; /** - * Defined in CVSS v3, CVSS v2 + * Confidentiality Impact (C). Defined in CVSS v2, v3. */ confidentialityImpact?: string | null; exploitabilityScore?: number | null; impactScore?: number | null; /** - * Defined in CVSS v3, CVSS v2 + * Integrity Impact (I). Defined in CVSS v2, v3. */ integrityImpact?: string | null; /** - * Defined in CVSS v3 + * Privileges Required (PR). Defined in CVSS v3, v4. */ privilegesRequired?: string | null; /** - * Defined in CVSS v3 + * Scope (S). Defined in CVSS v3. */ scope?: string | null; /** - * Defined in CVSS v3 + * Subsequent System Availability Impact (SA). Defined in CVSS v4. + */ + subsequentSystemAvailabilityImpact?: string | null; + /** + * Subsequent System Confidentiality Impact (SC). Defined in CVSS v4. + */ + subsequentSystemConfidentialityImpact?: string | null; + /** + * Subsequent System Integrity Impact (SI). Defined in CVSS v4. + */ + subsequentSystemIntegrityImpact?: string | null; + /** + * User Interaction (UI). Defined in CVSS v3, v4. */ userInteraction?: string | null; + /** + * Vulnerable System Availability Impact (VA). Defined in CVSS v4. + */ + vulnerableSystemAvailabilityImpact?: string | null; + /** + * Vulnerable System Confidentiality Impact (VC). Defined in CVSS v4. + */ + vulnerableSystemConfidentialityImpact?: string | null; + /** + * Vulnerable System Integrity Impact (VI). Defined in CVSS v4. + */ + vulnerableSystemIntegrityImpact?: string | null; } /** * Deprecated. Common Vulnerability Scoring System version 3. For details, see https://www.first.org/cvss/specification-document From ba866d09233801401d23bfd00b29794a5a73c8e8 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 15/29] feat(datamanager): update the API #### datamanager:v1 The following keys were added: - schemas.AdIdentifiers.properties.dclid.description - schemas.AdIdentifiers.properties.dclid.type - schemas.AdIdentifiers.properties.encryptedUserIds.description - schemas.AdIdentifiers.properties.encryptedUserIds.items.$ref - schemas.AdIdentifiers.properties.encryptedUserIds.type - schemas.AdIdentifiers.properties.impressionId.description - schemas.AdIdentifiers.properties.impressionId.type - schemas.AdIdentifiers.properties.matchId.description - schemas.AdIdentifiers.properties.matchId.type - schemas.AudienceMember.properties.compositeData.$ref - schemas.AudienceMember.properties.compositeData.description - schemas.CompositeData.description - schemas.CompositeData.id - schemas.CompositeData.properties.ipData.description - schemas.CompositeData.properties.ipData.items.$ref - schemas.CompositeData.properties.ipData.type - schemas.CompositeData.properties.userData.$ref - schemas.CompositeData.properties.userData.description - schemas.CompositeData.type - schemas.DataTypeCount.description - schemas.DataTypeCount.id - schemas.DataTypeCount.properties.count.description - schemas.DataTypeCount.properties.count.format - schemas.DataTypeCount.properties.count.type - schemas.DataTypeCount.properties.type.description - schemas.DataTypeCount.properties.type.enum - schemas.DataTypeCount.properties.type.enumDescriptions - schemas.DataTypeCount.properties.type.type - schemas.DataTypeCount.type - schemas.EncryptedUserId.description - schemas.EncryptedUserId.id - schemas.EncryptedUserId.properties.encryptedId.description - schemas.EncryptedUserId.properties.encryptedId.type - schemas.EncryptedUserId.properties.entityId.description - schemas.EncryptedUserId.properties.entityId.format - schemas.EncryptedUserId.properties.entityId.type - schemas.EncryptedUserId.properties.entityType.description - schemas.EncryptedUserId.properties.entityType.enum - schemas.EncryptedUserId.properties.entityType.enumDescriptions - schemas.EncryptedUserId.properties.entityType.type - schemas.EncryptedUserId.properties.source.description - schemas.EncryptedUserId.properties.source.enum - schemas.EncryptedUserId.properties.source.enumDescriptions - schemas.EncryptedUserId.properties.source.type - schemas.EncryptedUserId.type - schemas.Event.properties.conversionCount.description - schemas.Event.properties.conversionCount.format - schemas.Event.properties.conversionCount.type - schemas.IngestAudienceMembersStatus.properties.compositeDataIngestionStatus.$ref - schemas.IngestAudienceMembersStatus.properties.compositeDataIngestionStatus.description - schemas.IngestCompositeDataStatus.description - schemas.IngestCompositeDataStatus.id - schemas.IngestCompositeDataStatus.properties.dataTypeCounts.description - schemas.IngestCompositeDataStatus.properties.dataTypeCounts.items.$ref - schemas.IngestCompositeDataStatus.properties.dataTypeCounts.type - schemas.IngestCompositeDataStatus.properties.recordCount.description - schemas.IngestCompositeDataStatus.properties.recordCount.format - schemas.IngestCompositeDataStatus.properties.recordCount.type - schemas.IngestCompositeDataStatus.properties.uploadMatchRateRange.description - schemas.IngestCompositeDataStatus.properties.uploadMatchRateRange.enum - schemas.IngestCompositeDataStatus.properties.uploadMatchRateRange.enumDescriptions - schemas.IngestCompositeDataStatus.properties.uploadMatchRateRange.type - schemas.IngestCompositeDataStatus.type - schemas.IpData.description - schemas.IpData.id - schemas.IpData.properties.ipAddress.description - schemas.IpData.properties.ipAddress.type - schemas.IpData.properties.observeEndTime.description - schemas.IpData.properties.observeEndTime.format - schemas.IpData.properties.observeEndTime.type - schemas.IpData.properties.observeStartTime.description - schemas.IpData.properties.observeStartTime.format - schemas.IpData.properties.observeStartTime.type - schemas.IpData.type - schemas.RemoveAudienceMembersStatus.properties.compositeDataRemovalStatus.$ref - schemas.RemoveAudienceMembersStatus.properties.compositeDataRemovalStatus.description - schemas.RemoveCompositeDataStatus.description - schemas.RemoveCompositeDataStatus.id - schemas.RemoveCompositeDataStatus.properties.dataTypeCounts.description - schemas.RemoveCompositeDataStatus.properties.dataTypeCounts.items.$ref - schemas.RemoveCompositeDataStatus.properties.dataTypeCounts.type - schemas.RemoveCompositeDataStatus.properties.recordCount.description - schemas.RemoveCompositeDataStatus.properties.recordCount.format - schemas.RemoveCompositeDataStatus.properties.recordCount.type - schemas.RemoveCompositeDataStatus.type The following keys were changed: - schemas.ErrorCount.properties.reason.enum - schemas.ErrorCount.properties.reason.enumDescriptions - schemas.ProductAccount.properties.accountType.enum - schemas.ProductAccount.properties.accountType.enumDescriptions --- discovery/datamanager-v1.json | 267 +++++++++++++++++++++++++++++++++- src/apis/datamanager/v1.ts | 126 ++++++++++++++++ 2 files changed, 388 insertions(+), 5 deletions(-) diff --git a/discovery/datamanager-v1.json b/discovery/datamanager-v1.json index 1a9abfa6ae..531c6e1ac7 100644 --- a/discovery/datamanager-v1.json +++ b/discovery/datamanager-v1.json @@ -820,13 +820,24 @@ } } }, - "revision": "20260507", + "revision": "20260527", "rootUrl": "https://datamanager.googleapis.com/", "schemas": { "AdIdentifiers": { "description": "Identifiers and other information used to match the conversion event with other online activity (such as ad clicks).", "id": "AdIdentifiers", "properties": { + "dclid": { + "description": "Optional. The display click ID associated with this event.", + "type": "string" + }, + "encryptedUserIds": { + "description": "Optional. Any number of encrypted user IDs.", + "items": { + "$ref": "EncryptedUserId" + }, + "type": "array" + }, "gbraid": { "description": "Optional. The click identifier for clicks associated with app events and originating from iOS devices starting with iOS14.", "type": "string" @@ -835,10 +846,18 @@ "description": "Optional. The Google click ID (gclid) associated with this event.", "type": "string" }, + "impressionId": { + "description": "Optional. The impression ID associated with this event.", + "type": "string" + }, "landingPageDeviceInfo": { "$ref": "DeviceInfo", "description": "Optional. Information gathered about the device being used (if any) at the time of landing onto the advertiser’s site after interacting with the ad." }, + "matchId": { + "description": "Optional. The match ID field used to join this event with a previous event.", + "type": "string" + }, "mobileDeviceId": { "description": "Optional. The mobile identifier for advertisers. This would be IDFA on iOS, AdID on Android, or other platforms’ identifiers for advertisers.", "type": "string" @@ -881,6 +900,10 @@ "description": "The audience member to be operated on.", "id": "AudienceMember", "properties": { + "compositeData": { + "$ref": "CompositeData", + "description": "Group of multiple identifier types." + }, "consent": { "$ref": "Consent", "description": "Optional. The consent setting for the user." @@ -999,6 +1022,24 @@ }, "type": "object" }, + "CompositeData": { + "description": "Composite data holding identifiers and associated data for a user. At least one of `user_data` or `ip_data` is required.", + "id": "CompositeData", + "properties": { + "ipData": { + "description": "Optional. IP address data representing customer interaction used to build the audience.", + "items": { + "$ref": "IpData" + }, + "type": "array" + }, + "userData": { + "$ref": "UserData", + "description": "Optional. User-provided data that identifies the user." + } + }, + "type": "object" + }, "Consent": { "description": "[Digital Markets Act (DMA)](//digital-markets-act.ec.europa.eu/index_en) consent settings for the user.", "id": "Consent", @@ -1087,6 +1128,36 @@ }, "type": "object" }, + "DataTypeCount": { + "description": "The count for a specific data type.", + "id": "DataTypeCount", + "properties": { + "count": { + "description": "The count for this data type.", + "format": "int64", + "type": "string" + }, + "type": { + "description": "The type of data.", + "enum": [ + "DATA_TYPE_UNSPECIFIED", + "EMAIL", + "PHONE_NUMBER", + "ADDRESS", + "IP_ADDRESS" + ], + "enumDescriptions": [ + "The data type is unspecified.", + "The data is an email address.", + "The data is a phone number.", + "The data is a physical address.", + "The data is an IP address." + ], + "type": "string" + } + }, + "type": "object" + }, "Destination": { "description": "The Google product you're sending data to. For example, a Google Ads account.", "id": "Destination", @@ -1177,6 +1248,58 @@ "properties": {}, "type": "object" }, + "EncryptedUserId": { + "description": "A user identifier issued to be used for attribution. All fields are required if this is used.", + "id": "EncryptedUserId", + "properties": { + "encryptedId": { + "description": "Required. The alphanumeric encrypted id.", + "type": "string" + }, + "entityId": { + "description": "Required. The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", + "format": "int64", + "type": "string" + }, + "entityType": { + "description": "Required. The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", + "enum": [ + "ENCRYPTION_ENTITY_TYPE_UNSPECIFIED", + "CAMPAIGN_MANAGER_ACCOUNT", + "CAMPAIGN_MANAGER_ADVERTISER", + "DISPLAY_VIDEO_PARTNER", + "DISPLAY_VIDEO_ADVERTISER", + "GOOGLE_ADS_CUSTOMER", + "GOOGLE_AD_MANAGER_NETWORK_CODE" + ], + "enumDescriptions": [ + "Unspecified encryption entity type.", + "Campaign Manager 360 account.", + "Campaign Manager 360 advertiser.", + "Display & Video 360 partner.", + "Display & Video 360 advertiser.", + "Google Ads customer.", + "Google Ad Manager network code." + ], + "type": "string" + }, + "source": { + "description": "Required. Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", + "enum": [ + "ENCRYPTION_SOURCE_UNSPECIFIED", + "AD_SERVING", + "DATA_TRANSFER" + ], + "enumDescriptions": [ + "Unspecified encryption source.", + "Ad serving encryption source.", + "Data transfer encryption source." + ], + "type": "string" + } + }, + "type": "object" + }, "EncryptionInfo": { "description": "Encryption information for the data being ingested.", "id": "EncryptionInfo", @@ -1227,7 +1350,22 @@ "PROCESSING_ERROR_REASON_AWS_AUTH_FAILED", "PROCESSING_ERROR_REASON_USER_IDENTIFIER_DECRYPTION_ERROR", "PROCESSING_ERROR_OPERATING_ACCOUNT_MISMATCH_FOR_AD_IDENTIFIER", - "PROCESSING_ERROR_REASON_ONE_PER_CLICK_CONVERSION_ACTION_NOT_PERMITTED_WITH_BRAID" + "PROCESSING_ERROR_REASON_ONE_PER_CLICK_CONVERSION_ACTION_NOT_PERMITTED_WITH_BRAID", + "PROCESSING_ERROR_REASON_MATCH_ID_NOT_FOUND", + "PROCESSING_ERROR_REASON_USER_ID_NOT_FOUND_FOR_MATCH_ID", + "PROCESSING_ERROR_REASON_USER_ID_NOT_FOUND_FOR_GCLID", + "PROCESSING_ERROR_REASON_USER_ID_NOT_FOUND_FOR_DCLID", + "PROCESSING_ERROR_REASON_INVALID_AD_IDENTIFIERS", + "PROCESSING_ERROR_REASON_INVALID_MOBILE_ID_FORMAT", + "PROCESSING_ERROR_REASON_ORIGINAL_CONVERSIONS_NOT_FOUND", + "PROCESSING_ERROR_REASON_EVENT_ID_DECODE_ERROR", + "PROCESSING_ERROR_REASON_USER_ID_NOT_FOUND_FOR_IMPRESSION_ID", + "PROCESSING_ERROR_REASON_USER_ID_NOT_FOUND", + "PROCESSING_ERROR_REASON_CONVERSION_PRECEDES_CLICK", + "PROCESSING_ERROR_REASON_TOO_RECENT_CLICK", + "PROCESSING_ERROR_REASON_INVALID_CLICK", + "PROCESSING_ERROR_REASON_INVALID_OPERATING_ACCOUNT_FOR_CLICK", + "PROCESSING_ERROR_REASON_CLICK_NOT_FOUND" ], "enumDescriptions": [ "The processing error reason is unknown.", @@ -1258,7 +1396,22 @@ "The system failed to authenticate with AWS.", "Failed to decrypt the UserIdentifier data using the DEK.", "The user attempted to ingest events with an ad identifier that isn't from the operating account's ads.", - "One-per-click conversion actions cannot be used with BRAIDs." + "One-per-click conversion actions cannot be used with BRAIDs.", + "The match ID can not be found.", + "The user ID can not be found for the match ID.", + "The user ID can not be found for the GCLID.", + "The user ID can not be found for the DCLID.", + "There are ad identifiers that are invalid.", + "The mobile ID format is invalid.", + "The original conversions can't be found.", + "The event ID (dclid or impression ID) cannot be decoded.", + "The user ID cannot be found for the given impression ID.", + "The user ID cannot be found.", + "The event timestamp on the event was earlier than the associated click.", + "The click occurred too recently.", + "The event can't be attributed to a click (GCLID). This may be because the click did not come from a Google Ads campaign, for example.", + "The click from the event isn't associated with the `operating_account` of the destination.", + "A corresponding click can't be found that matches the provided attributes." ], "type": "string" }, @@ -1315,6 +1468,11 @@ "$ref": "Consent", "description": "Optional. Information about whether the associated user has provided different types of consent." }, + "conversionCount": { + "description": "Optional. The conversion quantity associated with the event, for counting-based conversions.", + "format": "double", + "type": "number" + }, "conversionValue": { "description": "Optional. The conversion value associated with the event, for value-based conversions.", "format": "double", @@ -1570,6 +1728,10 @@ "description": "The status of the ingest audience members request.", "id": "IngestAudienceMembersStatus", "properties": { + "compositeDataIngestionStatus": { + "$ref": "IngestCompositeDataStatus", + "description": "The status of the composite data ingestion to the destination." + }, "mobileDataIngestionStatus": { "$ref": "IngestMobileDataStatus", "description": "The status of the mobile data ingestion to the destination." @@ -1593,6 +1755,55 @@ }, "type": "object" }, + "IngestCompositeDataStatus": { + "description": "The status of the composite data ingestion to the destination containing stats related to the ingestion.", + "id": "IngestCompositeDataStatus", + "properties": { + "dataTypeCounts": { + "description": "The total count of data types sent in the upload request for the destination, broken down by data type. Includes all data types in the request, regardless of whether they were successfully ingested or not.", + "items": { + "$ref": "DataTypeCount" + }, + "type": "array" + }, + "recordCount": { + "description": "The total count of audience members sent in the upload request for the destination. Includes all audience members in the request, regardless of whether they were successfully ingested or not.", + "format": "int64", + "type": "string" + }, + "uploadMatchRateRange": { + "description": "The match rate range of the upload.", + "enum": [ + "MATCH_RATE_RANGE_UNKNOWN", + "MATCH_RATE_RANGE_NOT_ELIGIBLE", + "MATCH_RATE_RANGE_LESS_THAN_20", + "MATCH_RATE_RANGE_20_TO_30", + "MATCH_RATE_RANGE_31_TO_40", + "MATCH_RATE_RANGE_41_TO_50", + "MATCH_RATE_RANGE_51_TO_60", + "MATCH_RATE_RANGE_61_TO_70", + "MATCH_RATE_RANGE_71_TO_80", + "MATCH_RATE_RANGE_81_TO_90", + "MATCH_RATE_RANGE_91_TO_100" + ], + "enumDescriptions": [ + "The match rate range is unknown.", + "The match rate range is not eligible.", + "The match rate range is less than 20% (in the interval `[0, 20)`).", + "The match rate range is between 20% and 30% (in the interval `[20, 31)`).", + "The match rate range is between 31% and 40% (in the interval `[31, 41)`).", + "The match rate range is between 41% and 50% (in the interval `[41, 51)`).", + "The match rate range is between 51% and 60% (in the interval `[51, 61)`.", + "The match rate range is between 61% and 70% (in the interval `[61, 71)`).", + "The match rate range is between 71% and 80% (in the interval `[71, 81)`).", + "The match rate range is between 81% and 90% (in the interval `[81, 91)`).", + "The match rate range is between 91% and 100% (in the interval `[91, 100]`)." + ], + "type": "string" + } + }, + "type": "object" + }, "IngestEventsRequest": { "description": "Request to upload audience members to the provided destinations. Returns an IngestEventsResponse.", "id": "IngestEventsRequest", @@ -1832,6 +2043,27 @@ }, "type": "object" }, + "IpData": { + "description": "IP address information for a user. We recommend including observe_start_time and observe_end_time to help improve Customer Match match rates.", + "id": "IpData", + "properties": { + "ipAddress": { + "description": "Required. IP address captured at the time of customer interaction. Accepts standard string formats for both IPv4 and IPv6.", + "type": "string" + }, + "observeEndTime": { + "description": "Optional. Last recorded interaction time from this IP address in a session.", + "format": "google-datetime", + "type": "string" + }, + "observeStartTime": { + "description": "Optional. First recorded interaction time from this IP address in a session.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "Item": { "description": "Represents an item in the cart associated with the event.", "id": "Item", @@ -2285,7 +2517,8 @@ "DISPLAY_VIDEO_ADVERTISER", "DATA_PARTNER", "GOOGLE_ANALYTICS_PROPERTY", - "GOOGLE_AD_MANAGER_AUDIENCE_LINK" + "GOOGLE_AD_MANAGER_AUDIENCE_LINK", + "FLOODLIGHT_CONFIG" ], "enumDescriptions": [ "Unspecified product. Should never be used.", @@ -2294,7 +2527,8 @@ "Display & Video 360 advertiser.", "Data Partner.", "Google Analytics.", - "Google Ad Manager audience link." + "Google Ad Manager audience link.", + "Floodlight configuration." ], "type": "string" }, @@ -2407,6 +2641,10 @@ "description": "The status of the remove audience members request.", "id": "RemoveAudienceMembersStatus", "properties": { + "compositeDataRemovalStatus": { + "$ref": "RemoveCompositeDataStatus", + "description": "The status of the composite data removal from the destination." + }, "mobileDataRemovalStatus": { "$ref": "RemoveMobileDataStatus", "description": "The status of the mobile data removal from the destination." @@ -2430,6 +2668,25 @@ }, "type": "object" }, + "RemoveCompositeDataStatus": { + "description": "The status of the composite data removal from the destination.", + "id": "RemoveCompositeDataStatus", + "properties": { + "dataTypeCounts": { + "description": "The total count of data types sent in the removal request, broken down by data type. Includes all data types in the request, regardless of whether they were successfully removed or not.", + "items": { + "$ref": "DataTypeCount" + }, + "type": "array" + }, + "recordCount": { + "description": "The total count of audience members sent in the removal request. Includes all audience members in the request, regardless of whether they were successfully removed or not.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "RemoveMobileDataStatus": { "description": "The status of the mobile data removal from the destination.", "id": "RemoveMobileDataStatus", diff --git a/src/apis/datamanager/v1.ts b/src/apis/datamanager/v1.ts index d249368eee..b16f2aae44 100644 --- a/src/apis/datamanager/v1.ts +++ b/src/apis/datamanager/v1.ts @@ -155,6 +155,14 @@ export namespace datamanager_v1 { * Identifiers and other information used to match the conversion event with other online activity (such as ad clicks). */ export interface Schema$AdIdentifiers { + /** + * Optional. The display click ID associated with this event. + */ + dclid?: string | null; + /** + * Optional. Any number of encrypted user IDs. + */ + encryptedUserIds?: Schema$EncryptedUserId[]; /** * Optional. The click identifier for clicks associated with app events and originating from iOS devices starting with iOS14. */ @@ -163,10 +171,18 @@ export namespace datamanager_v1 { * Optional. The Google click ID (gclid) associated with this event. */ gclid?: string | null; + /** + * Optional. The impression ID associated with this event. + */ + impressionId?: string | null; /** * Optional. Information gathered about the device being used (if any) at the time of landing onto the advertiser’s site after interacting with the ad. */ landingPageDeviceInfo?: Schema$DeviceInfo; + /** + * Optional. The match ID field used to join this event with a previous event. + */ + matchId?: string | null; /** * Optional. The mobile identifier for advertisers. This would be IDFA on iOS, AdID on Android, or other platforms’ identifiers for advertisers. */ @@ -184,6 +200,10 @@ export namespace datamanager_v1 { * The audience member to be operated on. */ export interface Schema$AudienceMember { + /** + * Group of multiple identifier types. + */ + compositeData?: Schema$CompositeData; /** * Optional. The consent setting for the user. */ @@ -276,6 +296,19 @@ export namespace datamanager_v1 { */ transactionDiscount?: number | null; } + /** + * Composite data holding identifiers and associated data for a user. At least one of `user_data` or `ip_data` is required. + */ + export interface Schema$CompositeData { + /** + * Optional. IP address data representing customer interaction used to build the audience. + */ + ipData?: Schema$IpData[]; + /** + * Optional. User-provided data that identifies the user. + */ + userData?: Schema$UserData; + } /** * [Digital Markets Act (DMA)](//digital-markets-act.ec.europa.eu/index_en) consent settings for the user. */ @@ -319,6 +352,19 @@ export namespace datamanager_v1 { */ variable?: string | null; } + /** + * The count for a specific data type. + */ + export interface Schema$DataTypeCount { + /** + * The count for this data type. + */ + count?: string | null; + /** + * The type of data. + */ + type?: string | null; + } /** * The Google product you're sending data to. For example, a Google Ads account. */ @@ -401,6 +447,27 @@ export namespace datamanager_v1 { * 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); \} */ export interface Schema$Empty {} + /** + * A user identifier issued to be used for attribution. All fields are required if this is used. + */ + export interface Schema$EncryptedUserId { + /** + * Required. The alphanumeric encrypted id. + */ + encryptedId?: string | null; + /** + * Required. The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer. + */ + entityId?: string | null; + /** + * Required. The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer. + */ + entityType?: string | null; + /** + * Required. Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer. + */ + source?: string | null; + } /** * Encryption information for the data being ingested. */ @@ -464,6 +531,10 @@ export namespace datamanager_v1 { * Optional. Information about whether the associated user has provided different types of consent. */ consent?: Schema$Consent; + /** + * Optional. The conversion quantity associated with the event, for counting-based conversions. + */ + conversionCount?: number | null; /** * Optional. The conversion value associated with the event, for value-based conversions. */ @@ -651,6 +722,10 @@ export namespace datamanager_v1 { * The status of the ingest audience members request. */ export interface Schema$IngestAudienceMembersStatus { + /** + * The status of the composite data ingestion to the destination. + */ + compositeDataIngestionStatus?: Schema$IngestCompositeDataStatus; /** * The status of the mobile data ingestion to the destination. */ @@ -672,6 +747,23 @@ export namespace datamanager_v1 { */ userIdDataIngestionStatus?: Schema$IngestUserIdDataStatus; } + /** + * The status of the composite data ingestion to the destination containing stats related to the ingestion. + */ + export interface Schema$IngestCompositeDataStatus { + /** + * The total count of data types sent in the upload request for the destination, broken down by data type. Includes all data types in the request, regardless of whether they were successfully ingested or not. + */ + dataTypeCounts?: Schema$DataTypeCount[]; + /** + * The total count of audience members sent in the upload request for the destination. Includes all audience members in the request, regardless of whether they were successfully ingested or not. + */ + recordCount?: string | null; + /** + * The match rate range of the upload. + */ + uploadMatchRateRange?: string | null; + } /** * Represents a user list that is populated by user provided data. */ @@ -821,6 +913,23 @@ export namespace datamanager_v1 { */ userIdCount?: string | null; } + /** + * IP address information for a user. We recommend including observe_start_time and observe_end_time to help improve Customer Match match rates. + */ + export interface Schema$IpData { + /** + * Required. IP address captured at the time of customer interaction. Accepts standard string formats for both IPv4 and IPv6. + */ + ipAddress?: string | null; + /** + * Optional. Last recorded interaction time from this IP address in a session. + */ + observeEndTime?: string | null; + /** + * Optional. First recorded interaction time from this IP address in a session. + */ + observeStartTime?: string | null; + } /** * Represents an item in the cart associated with the event. */ @@ -1162,6 +1271,10 @@ export namespace datamanager_v1 { * The status of the remove audience members request. */ export interface Schema$RemoveAudienceMembersStatus { + /** + * The status of the composite data removal from the destination. + */ + compositeDataRemovalStatus?: Schema$RemoveCompositeDataStatus; /** * The status of the mobile data removal from the destination. */ @@ -1183,6 +1296,19 @@ export namespace datamanager_v1 { */ userIdDataRemovalStatus?: Schema$RemoveUserIdDataStatus; } + /** + * The status of the composite data removal from the destination. + */ + export interface Schema$RemoveCompositeDataStatus { + /** + * The total count of data types sent in the removal request, broken down by data type. Includes all data types in the request, regardless of whether they were successfully removed or not. + */ + dataTypeCounts?: Schema$DataTypeCount[]; + /** + * The total count of audience members sent in the removal request. Includes all audience members in the request, regardless of whether they were successfully removed or not. + */ + recordCount?: string | null; + } /** * The status of the mobile data removal from the destination. */ From 8aa4f6bc631ec89cfab3d53ea3dfe0ab5362ab43 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 16/29] feat(developerconnect): update the API #### developerconnect:v1 The following keys were added: - schemas.ArtifactDeployment.properties.sourceCodeUris.description - schemas.ArtifactDeployment.properties.sourceCodeUris.items.type - schemas.ArtifactDeployment.properties.sourceCodeUris.readOnly - schemas.ArtifactDeployment.properties.sourceCodeUris.type --- discovery/developerconnect-v1.json | 10 +++++++++- src/apis/developerconnect/v1.ts | 4 ++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/discovery/developerconnect-v1.json b/discovery/developerconnect-v1.json index 2f06c2cf25..17fe92c47d 100644 --- a/discovery/developerconnect-v1.json +++ b/discovery/developerconnect-v1.json @@ -1795,7 +1795,7 @@ } } }, - "revision": "20260426", + "revision": "20260527", "rootUrl": "https://developerconnect.googleapis.com/", "schemas": { "AccountConnector": { @@ -1954,6 +1954,14 @@ "readOnly": true, "type": "string" }, + "sourceCodeUris": { + "description": "Output only. The URIs of the source code, if available. For Cloud Run source deploy for example: `gs://my-bucket/my-folder/1234567890.abcde-fdbe.zip#1234567890`", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, "sourceCommitUris": { "description": "Output only. The source commits at which this artifact was built. Extracted from provenance.", "items": { diff --git a/src/apis/developerconnect/v1.ts b/src/apis/developerconnect/v1.ts index d948ed0940..43c2074ca6 100644 --- a/src/apis/developerconnect/v1.ts +++ b/src/apis/developerconnect/v1.ts @@ -248,6 +248,10 @@ export namespace developerconnect_v1 { * Output only. Unique identifier of `ArtifactDeployment`. */ id?: string | null; + /** + * Output only. The URIs of the source code, if available. For Cloud Run source deploy for example: `gs://my-bucket/my-folder/1234567890.abcde-fdbe.zip#1234567890` + */ + sourceCodeUris?: string[] | null; /** * Output only. The source commits at which this artifact was built. Extracted from provenance. */ From f762d51da742e97ea214692f862058fe26956338 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 17/29] feat(developerknowledge): update the API #### developerknowledge:v1alpha The following keys were added: - schemas.Answer.properties.citations.description - schemas.Answer.properties.citations.items.$ref - schemas.Answer.properties.citations.readOnly - schemas.Answer.properties.citations.type - schemas.Answer.properties.references.description - schemas.Answer.properties.references.items.$ref - schemas.Answer.properties.references.readOnly - schemas.Answer.properties.references.type - schemas.AnswerCitation.description - schemas.AnswerCitation.id - schemas.AnswerCitation.properties.endIndex.description - schemas.AnswerCitation.properties.endIndex.format - schemas.AnswerCitation.properties.endIndex.readOnly - schemas.AnswerCitation.properties.endIndex.type - schemas.AnswerCitation.properties.sources.description - schemas.AnswerCitation.properties.sources.items.$ref - schemas.AnswerCitation.properties.sources.readOnly - schemas.AnswerCitation.properties.sources.type - schemas.AnswerCitation.properties.startIndex.description - schemas.AnswerCitation.properties.startIndex.format - schemas.AnswerCitation.properties.startIndex.readOnly - schemas.AnswerCitation.properties.startIndex.type - schemas.AnswerCitation.type - schemas.AnswerReference.description - schemas.AnswerReference.id - schemas.AnswerReference.properties.documentReference.$ref - schemas.AnswerReference.properties.documentReference.description - schemas.AnswerReference.properties.documentReference.readOnly - schemas.AnswerReference.type - schemas.CitationSource.description - schemas.CitationSource.id - schemas.CitationSource.properties.referenceIndex.description - schemas.CitationSource.properties.referenceIndex.format - schemas.CitationSource.properties.referenceIndex.readOnly - schemas.CitationSource.properties.referenceIndex.type - schemas.CitationSource.type - schemas.DocumentReference.description - schemas.DocumentReference.id - schemas.DocumentReference.properties.documentChunk.$ref - schemas.DocumentReference.properties.documentChunk.description - schemas.DocumentReference.properties.documentChunk.readOnly - schemas.DocumentReference.type The following keys were changed: - resources.documents.methods.batchGet.parameters.names.description #### developerknowledge:v1 The following keys were changed: - resources.documents.methods.batchGet.parameters.names.description --- discovery/developerknowledge-v1.json | 4 +- discovery/developerknowledge-v1alpha.json | 84 ++++++++++++++++++++++- src/apis/developerknowledge/v1.ts | 4 +- src/apis/developerknowledge/v1alpha.ts | 56 ++++++++++++++- 4 files changed, 140 insertions(+), 8 deletions(-) diff --git a/discovery/developerknowledge-v1.json b/discovery/developerknowledge-v1.json index 18f1785199..5d83869ca2 100644 --- a/discovery/developerknowledge-v1.json +++ b/discovery/developerknowledge-v1.json @@ -115,7 +115,7 @@ "parameterOrder": [], "parameters": { "names": { - "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go", + "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` ", "location": "query", "repeated": true, "type": "string" @@ -228,7 +228,7 @@ } } }, - "revision": "20260510", + "revision": "20260524", "rootUrl": "https://developerknowledge.googleapis.com/", "schemas": { "BatchGetDocumentsResponse": { diff --git a/discovery/developerknowledge-v1alpha.json b/discovery/developerknowledge-v1alpha.json index a8c41e1df0..efe010f5d0 100644 --- a/discovery/developerknowledge-v1alpha.json +++ b/discovery/developerknowledge-v1alpha.json @@ -115,7 +115,7 @@ "parameterOrder": [], "parameters": { "names": { - "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go", + "description": "Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` ", "location": "query", "repeated": true, "type": "string" @@ -250,7 +250,7 @@ } } }, - "revision": "20260510", + "revision": "20260524", "rootUrl": "https://developerknowledge.googleapis.com/", "schemas": { "Answer": { @@ -260,6 +260,49 @@ "answerText": { "description": "Contains the text of the answer.", "type": "string" + }, + "citations": { + "description": "Output only. Contains citations for the answer.", + "items": { + "$ref": "AnswerCitation" + }, + "readOnly": true, + "type": "array" + }, + "references": { + "description": "Output only. Contains references for the answer.", + "items": { + "$ref": "AnswerReference" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "AnswerCitation": { + "description": "Citation info for a segment.", + "id": "AnswerCitation", + "properties": { + "endIndex": { + "description": "Output only. Indicates the end of the segment, measured in bytes (UTF-8 unicode), exclusive. If there are multi-byte characters, such as non-ASCII characters, the index measurement is longer than the string length.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "sources": { + "description": "Output only. Contains citation sources for the attributed segment.", + "items": { + "$ref": "CitationSource" + }, + "readOnly": true, + "type": "array" + }, + "startIndex": { + "description": "Output only. Indicates the start of the segment, measured in bytes (UTF-8 unicode), inclusive. If there are multi-byte characters, such as non-ASCII characters, the index measurement is longer than the string length.", + "format": "int32", + "readOnly": true, + "type": "integer" } }, "type": "object" @@ -286,6 +329,18 @@ }, "type": "object" }, + "AnswerReference": { + "description": "Represents a reference to a source.", + "id": "AnswerReference", + "properties": { + "documentReference": { + "$ref": "DocumentReference", + "description": "Output only. The reference document.", + "readOnly": true + } + }, + "type": "object" + }, "BatchGetDocumentsResponse": { "description": "Response message for DeveloperKnowledge.BatchGetDocuments.", "id": "BatchGetDocumentsResponse", @@ -300,6 +355,19 @@ }, "type": "object" }, + "CitationSource": { + "description": "Citation source.", + "id": "CitationSource", + "properties": { + "referenceIndex": { + "description": "Output only. Contains the index of the Answer.AnswerReference in the `references` repeated field.", + "format": "int32", + "readOnly": true, + "type": "integer" + } + }, + "type": "object" + }, "Document": { "description": "A Document represents a piece of content from the Developer Knowledge corpus.", "id": "Document", @@ -386,6 +454,18 @@ }, "type": "object" }, + "DocumentReference": { + "description": "Represents a reference to a document.", + "id": "DocumentReference", + "properties": { + "documentChunk": { + "$ref": "DocumentChunk", + "description": "Output only. Contains the document chunk. The `document_chunk.id` field is not set and will be empty.", + "readOnly": true + } + }, + "type": "object" + }, "SearchDocumentChunksResponse": { "description": "Response message for DeveloperKnowledge.SearchDocumentChunks.", "id": "SearchDocumentChunksResponse", diff --git a/src/apis/developerknowledge/v1.ts b/src/apis/developerknowledge/v1.ts index bd4b3ed94c..51fe8173f7 100644 --- a/src/apis/developerknowledge/v1.ts +++ b/src/apis/developerknowledge/v1.ts @@ -242,7 +242,7 @@ export namespace developerknowledge_v1 { * * // Do the magic * const res = await developerknowledge.documents.batchGet({ - * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go + * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` * names: 'placeholder-value', * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. * view: 'placeholder-value', @@ -652,7 +652,7 @@ export namespace developerknowledge_v1 { export interface Params$Resource$Documents$Batchget extends StandardParameters { /** - * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go + * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` */ names?: string[]; /** diff --git a/src/apis/developerknowledge/v1alpha.ts b/src/apis/developerknowledge/v1alpha.ts index 9402943efc..43e101e52e 100644 --- a/src/apis/developerknowledge/v1alpha.ts +++ b/src/apis/developerknowledge/v1alpha.ts @@ -134,6 +134,31 @@ export namespace developerknowledge_v1alpha { * Contains the text of the answer. */ answerText?: string | null; + /** + * Output only. Contains citations for the answer. + */ + citations?: Schema$AnswerCitation[]; + /** + * Output only. Contains references for the answer. + */ + references?: Schema$AnswerReference[]; + } + /** + * Citation info for a segment. + */ + export interface Schema$AnswerCitation { + /** + * Output only. Indicates the end of the segment, measured in bytes (UTF-8 unicode), exclusive. If there are multi-byte characters, such as non-ASCII characters, the index measurement is longer than the string length. + */ + endIndex?: number | null; + /** + * Output only. Contains citation sources for the attributed segment. + */ + sources?: Schema$CitationSource[]; + /** + * Output only. Indicates the start of the segment, measured in bytes (UTF-8 unicode), inclusive. If there are multi-byte characters, such as non-ASCII characters, the index measurement is longer than the string length. + */ + startIndex?: number | null; } /** * Request message for DeveloperKnowledge.AnswerQuery. @@ -153,6 +178,15 @@ export namespace developerknowledge_v1alpha { */ answer?: Schema$Answer; } + /** + * Represents a reference to a source. + */ + export interface Schema$AnswerReference { + /** + * Output only. The reference document. + */ + documentReference?: Schema$DocumentReference; + } /** * Response message for DeveloperKnowledge.BatchGetDocuments. */ @@ -162,6 +196,15 @@ export namespace developerknowledge_v1alpha { */ documents?: Schema$Document[]; } + /** + * Citation source. + */ + export interface Schema$CitationSource { + /** + * Output only. Contains the index of the Answer.AnswerReference in the `references` repeated field. + */ + referenceIndex?: number | null; + } /** * A Document represents a piece of content from the Developer Knowledge corpus. */ @@ -220,6 +263,15 @@ export namespace developerknowledge_v1alpha { */ parent?: string | null; } + /** + * Represents a reference to a document. + */ + export interface Schema$DocumentReference { + /** + * Output only. Contains the document chunk. The `document_chunk.id` field is not set and will be empty. + */ + documentChunk?: Schema$DocumentChunk; + } /** * Response message for DeveloperKnowledge.SearchDocumentChunks. */ @@ -271,7 +323,7 @@ export namespace developerknowledge_v1alpha { * * // Do the magic * const res = await developerknowledge.documents.batchGet({ - * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go + * // Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` * names: 'placeholder-value', * // Optional. Specifies the DocumentView of the document. If unspecified, DeveloperKnowledge.BatchGetDocuments defaults to `DOCUMENT_VIEW_CONTENT`. * view: 'placeholder-value', @@ -681,7 +733,7 @@ export namespace developerknowledge_v1alpha { export interface Params$Resource$Documents$Batchget extends StandardParameters { /** - * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` If you are changing the batch size, consider the value of `maxConcurrentGCSFetches` constant in the service implementation: http://cs///depot/google3/devrel/boq/developerknowledge/service/developerknowledge.go + * Required. Specifies the names of the documents to retrieve. A maximum of 20 documents can be retrieved in a batch. The documents are returned in the same order as the `names` in the request. Format: `documents/{uri_without_scheme\}` Example: `documents/docs.cloud.google.com/storage/docs/creating-buckets` */ names?: string[]; /** From 431051c51e61b4f43d051e1758fe61eee2cb08cf Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 18/29] feat(dlp): update the API #### dlp:v2 The following keys were added: - schemas.GooglePrivacyDlpV2BatchContentItem.description - schemas.GooglePrivacyDlpV2BatchContentItem.id - schemas.GooglePrivacyDlpV2BatchContentItem.properties.stringValueBatch.$ref - schemas.GooglePrivacyDlpV2BatchContentItem.properties.stringValueBatch.description - schemas.GooglePrivacyDlpV2BatchContentItem.type - schemas.GooglePrivacyDlpV2BatchContentLocation.description - schemas.GooglePrivacyDlpV2BatchContentLocation.id - schemas.GooglePrivacyDlpV2BatchContentLocation.properties.itemIndex.description - schemas.GooglePrivacyDlpV2BatchContentLocation.properties.itemIndex.format - schemas.GooglePrivacyDlpV2BatchContentLocation.properties.itemIndex.type - schemas.GooglePrivacyDlpV2BatchContentLocation.type - schemas.GooglePrivacyDlpV2ContentItem.properties.batchContentItem.$ref - schemas.GooglePrivacyDlpV2ContentItem.properties.batchContentItem.description - schemas.GooglePrivacyDlpV2ContentLocation.properties.batchContentLocation.$ref - schemas.GooglePrivacyDlpV2ContentLocation.properties.batchContentLocation.description - schemas.GooglePrivacyDlpV2StringValueBatch.description - schemas.GooglePrivacyDlpV2StringValueBatch.id - schemas.GooglePrivacyDlpV2StringValueBatch.properties.values.description - schemas.GooglePrivacyDlpV2StringValueBatch.properties.values.items.type - schemas.GooglePrivacyDlpV2StringValueBatch.properties.values.type - schemas.GooglePrivacyDlpV2StringValueBatch.type --- discovery/dlp-v2.json | 47 ++++++++++++++++++++++++++++++++++++++++++- src/apis/dlp/v2.ts | 35 ++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+), 1 deletion(-) diff --git a/discovery/dlp-v2.json b/discovery/dlp-v2.json index 2897d94ed3..9f080418f4 100644 --- a/discovery/dlp-v2.json +++ b/discovery/dlp-v2.json @@ -5128,7 +5128,7 @@ } } }, - "revision": "20260516", + "revision": "20260528", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -5512,6 +5512,29 @@ }, "type": "object" }, + "GooglePrivacyDlpV2BatchContentItem": { + "description": "Represents a batch of content to inspect or redact.", + "id": "GooglePrivacyDlpV2BatchContentItem", + "properties": { + "stringValueBatch": { + "$ref": "GooglePrivacyDlpV2StringValueBatch", + "description": "Optional. Represents a batch of string values to inspect or redact." + } + }, + "type": "object" + }, + "GooglePrivacyDlpV2BatchContentLocation": { + "description": "Location within a batch of content.", + "id": "GooglePrivacyDlpV2BatchContentLocation", + "properties": { + "itemIndex": { + "description": "Matches an index of a batch item in the batch provided in the request.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GooglePrivacyDlpV2BigQueryDiscoveryTarget": { "description": "Target used to match against for discovery with BigQuery tables", "id": "GooglePrivacyDlpV2BigQueryDiscoveryTarget", @@ -6523,6 +6546,10 @@ "description": "Type of content to inspect.", "id": "GooglePrivacyDlpV2ContentItem", "properties": { + "batchContentItem": { + "$ref": "GooglePrivacyDlpV2BatchContentItem", + "description": "Represents a batch of items to inspect." + }, "byteItem": { "$ref": "GooglePrivacyDlpV2ByteContentItem", "description": "Content data to inspect or redact. Replaces `type` and `data`." @@ -6550,6 +6577,10 @@ "description": "Precise location of the finding within a document, record, image, or metadata container.", "id": "GooglePrivacyDlpV2ContentLocation", "properties": { + "batchContentLocation": { + "$ref": "GooglePrivacyDlpV2BatchContentLocation", + "description": "Location within a batch of content." + }, "containerName": { "description": "Name of the container where the finding is located. The top level name is the source file name or table name. Names of some common storage containers are formatted as follows: * BigQuery tables: `{project_id}:{dataset_id}.{table_id}` * Cloud Storage files: `gs://{bucket}/{path}` * Datastore namespace: {namespace} Nested names could be absent if the embedded object has no string identifier (for example, an image contained within a document).", "type": "string" @@ -12348,6 +12379,20 @@ }, "type": "object" }, + "GooglePrivacyDlpV2StringValueBatch": { + "description": "Represents a batch of string values to inspect or redact.", + "id": "GooglePrivacyDlpV2StringValueBatch", + "properties": { + "values": { + "description": "Optional. Represents string data to inspect or redact.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GooglePrivacyDlpV2SummaryResult": { "description": "A collection that informs the user the number of times a particular `TransformationResultCode` and error details occurred.", "id": "GooglePrivacyDlpV2SummaryResult", diff --git a/src/apis/dlp/v2.ts b/src/apis/dlp/v2.ts index c5873fd2f4..a0a8fbfbc8 100644 --- a/src/apis/dlp/v2.ts +++ b/src/apis/dlp/v2.ts @@ -383,6 +383,24 @@ export namespace dlp_v2 { */ allAssetInventoryAssets?: boolean | null; } + /** + * Represents a batch of content to inspect or redact. + */ + export interface Schema$GooglePrivacyDlpV2BatchContentItem { + /** + * Optional. Represents a batch of string values to inspect or redact. + */ + stringValueBatch?: Schema$GooglePrivacyDlpV2StringValueBatch; + } + /** + * Location within a batch of content. + */ + export interface Schema$GooglePrivacyDlpV2BatchContentLocation { + /** + * Matches an index of a batch item in the batch provided in the request. + */ + itemIndex?: number | null; + } /** * Target used to match against for discovery with BigQuery tables */ @@ -1012,6 +1030,10 @@ export namespace dlp_v2 { * Type of content to inspect. */ export interface Schema$GooglePrivacyDlpV2ContentItem { + /** + * Represents a batch of items to inspect. + */ + batchContentItem?: Schema$GooglePrivacyDlpV2BatchContentItem; /** * Content data to inspect or redact. Replaces `type` and `data`. */ @@ -1037,6 +1059,10 @@ export namespace dlp_v2 { * Precise location of the finding within a document, record, image, or metadata container. */ export interface Schema$GooglePrivacyDlpV2ContentLocation { + /** + * Location within a batch of content. + */ + batchContentLocation?: Schema$GooglePrivacyDlpV2BatchContentLocation; /** * Name of the container where the finding is located. The top level name is the source file name or table name. Names of some common storage containers are formatted as follows: * BigQuery tables: `{project_id\}:{dataset_id\}.{table_id\}` * Cloud Storage files: `gs://{bucket\}/{path\}` * Datastore namespace: {namespace\} Nested names could be absent if the embedded object has no string identifier (for example, an image contained within a document). */ @@ -5021,6 +5047,15 @@ export namespace dlp_v2 { */ name?: string | null; } + /** + * Represents a batch of string values to inspect or redact. + */ + export interface Schema$GooglePrivacyDlpV2StringValueBatch { + /** + * Optional. Represents string data to inspect or redact. + */ + values?: string[] | null; + } /** * A collection that informs the user the number of times a particular `TransformationResultCode` and error details occurred. */ From ee69cfd78089b262eb45442a5d3567643697ae73 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:10 +0000 Subject: [PATCH 19/29] feat(health): update the API #### health:v4 The following keys were added: - auth.oauth2.scopes.https://www.googleapis.com/auth/googlehealth.ecg.readonly.description - schemas.GoogleDevicesandservicesHealthV4User.description - schemas.GoogleDevicesandservicesHealthV4User.id - schemas.GoogleDevicesandservicesHealthV4User.properties.name.description - schemas.GoogleDevicesandservicesHealthV4User.properties.name.type - schemas.GoogleDevicesandservicesHealthV4User.type The following keys were changed: - resources.projects.resources.subscribers.resources.subscriptions.methods.list.parameters.filter.description - resources.users.methods.getIdentity.scopes - schemas.Subscription.properties.dataTypes.description --- discovery/health-v4.json | 22 +++++++++++++++++++--- src/apis/health/v4.ts | 17 ++++++++++++++--- 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/discovery/health-v4.json b/discovery/health-v4.json index 287fc013dd..c218d4b2c4 100644 --- a/discovery/health-v4.json +++ b/discovery/health-v4.json @@ -8,6 +8,9 @@ "https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly": { "description": "See your Google Health activity and fitness data" }, + "https://www.googleapis.com/auth/googlehealth.ecg.readonly": { + "description": "See your Google Health ECG data" + }, "https://www.googleapis.com/auth/googlehealth.health_metrics_and_measurements.readonly": { "description": "See your Google Health health metrics and measurement data" }, @@ -335,7 +338,7 @@ ], "parameters": { "filter": { - "description": "Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - `user` - `data_type` The `user` identifier (e.g., `user1` in `users/user1`) refers to the public `healthUserId` Example: user = \"users/user1\" Example: user = \"users/user1\" OR user = \"users/user2\" Example: user = \"users/user1\" AND (data_type = \"sleep\" OR data_type = \"weight\")", + "description": "Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - `user` - `data_type` The `user` identifier (e.g., `user1` in `users/user1`) refers to the public `health_user_id` Example: user = \"users/user1\" Example: user = \"users/user1\" OR user = \"users/user2\" Example: user = \"users/user1\" AND (data_type = \"sleep\" OR data_type = \"weight\")", "location": "query", "type": "string" }, @@ -431,7 +434,9 @@ }, "scopes": [ "https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly", + "https://www.googleapis.com/auth/googlehealth.ecg.readonly", "https://www.googleapis.com/auth/googlehealth.health_metrics_and_measurements.readonly", + "https://www.googleapis.com/auth/googlehealth.irn.readonly", "https://www.googleapis.com/auth/googlehealth.profile.readonly", "https://www.googleapis.com/auth/googlehealth.settings.readonly", "https://www.googleapis.com/auth/googlehealth.sleep.readonly" @@ -943,7 +948,7 @@ } } }, - "revision": "20260525", + "revision": "20260527", "rootUrl": "https://health.googleapis.com/", "schemas": { "ActiveEnergyBurned": { @@ -2901,6 +2906,17 @@ }, "type": "object" }, + "GoogleDevicesandservicesHealthV4User": { + "description": "Represents a user in the Google Health API. It matches the parent resource of collections owned by the user. Clients currently do not need to interact with this resource directly.", + "id": "GoogleDevicesandservicesHealthV4User", + "properties": { + "name": { + "description": "Identifier. The resource name of the user. The `{user}` ID is a system-generated identifier, as described in Identity.health_user_id. Format: `users/{user}`", + "type": "string" + } + }, + "type": "object" + }, "GoogleDevicesandservicesHealthV4WebhookNotificationCloudLog": { "description": "Log message for a webhook notification sent by the Google Health API to a subscriber's endpoint. Includes the HTTP response received from the endpoint.", "id": "GoogleDevicesandservicesHealthV4WebhookNotificationCloudLog", @@ -5143,7 +5159,7 @@ "id": "Subscription", "properties": { "dataTypes": { - "description": "Optional. Data types subscribed to. A subscriber will only receive notifications for data types that are declared here. A subscription can only subscribe to the data types of the subscriber. Supported data types are: \"altitude\", \"distance\", \"floors\", \"sleep\", \"steps\", \"weight\".", + "description": "Optional. Data types subscribed to. A subscriber will only receive notifications for data types that are declared here. A subscription can only subscribe to the data types of the subscriber. The values should be in the format \"users/{health_user_id}/dataTypes/{data_type}\" where `{data_type}` is one of \"altitude\", \"distance\", \"floors\", \"sleep\", \"steps\", \"weight\".", "items": { "type": "string" }, diff --git a/src/apis/health/v4.ts b/src/apis/health/v4.ts index 62d0593b18..5cc09fa570 100644 --- a/src/apis/health/v4.ts +++ b/src/apis/health/v4.ts @@ -1419,6 +1419,15 @@ export namespace health_v4 { */ name?: string | null; } + /** + * Represents a user in the Google Health API. It matches the parent resource of collections owned by the user. Clients currently do not need to interact with this resource directly. + */ + export interface Schema$GoogleDevicesandservicesHealthV4User { + /** + * Identifier. The resource name of the user. The `{user\}` ID is a system-generated identifier, as described in Identity.health_user_id. Format: `users/{user\}` + */ + name?: string | null; + } /** * Log message for a webhook notification sent by the Google Health API to a subscriber's endpoint. Includes the HTTP response received from the endpoint. */ @@ -2881,7 +2890,7 @@ export namespace health_v4 { */ export interface Schema$Subscription { /** - * Optional. Data types subscribed to. A subscriber will only receive notifications for data types that are declared here. A subscription can only subscribe to the data types of the subscriber. Supported data types are: "altitude", "distance", "floors", "sleep", "steps", "weight". + * Optional. Data types subscribed to. A subscriber will only receive notifications for data types that are declared here. A subscription can only subscribe to the data types of the subscriber. The values should be in the format "users/{health_user_id\}/dataTypes/{data_type\}" where `{data_type\}` is one of "altitude", "distance", "floors", "sleep", "steps", "weight". */ dataTypes?: string[] | null; /** @@ -4102,7 +4111,7 @@ export namespace health_v4 { * * // Do the magic * const res = await health.projects.subscribers.subscriptions.list({ - * // Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - `user` - `data_type` The `user` identifier (e.g., `user1` in `users/user1`) refers to the public `healthUserId` Example: user = "users/user1" Example: user = "users/user1" OR user = "users/user2" Example: user = "users/user1" AND (data_type = "sleep" OR data_type = "weight") + * // Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - `user` - `data_type` The `user` identifier (e.g., `user1` in `users/user1`) refers to the public `health_user_id` Example: user = "users/user1" Example: user = "users/user1" OR user = "users/user2" Example: user = "users/user1" AND (data_type = "sleep" OR data_type = "weight") * filter: 'placeholder-value', * // Optional. The maximum number of subscriptions to return. The service may return fewer than this value. If unspecified, at most 50 subscriptions will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', @@ -4391,7 +4400,7 @@ export namespace health_v4 { } export interface Params$Resource$Projects$Subscribers$Subscriptions$List extends StandardParameters { /** - * Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - `user` - `data_type` The `user` identifier (e.g., `user1` in `users/user1`) refers to the public `healthUserId` Example: user = "users/user1" Example: user = "users/user1" OR user = "users/user2" Example: user = "users/user1" AND (data_type = "sleep" OR data_type = "weight") + * Optional. A filter to apply to the list of subscriptions. The filter syntax is described in https://google.aip.dev/160. The filter can be applied to the following fields: - `user` - `data_type` The `user` identifier (e.g., `user1` in `users/user1`) refers to the public `health_user_id` Example: user = "users/user1" Example: user = "users/user1" OR user = "users/user2" Example: user = "users/user1" AND (data_type = "sleep" OR data_type = "weight") */ filter?: string; /** @@ -4457,7 +4466,9 @@ export namespace health_v4 { * // Scopes can be specified either as an array or as a single, space-delimited string. * scopes: [ * 'https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly', + * 'https://www.googleapis.com/auth/googlehealth.ecg.readonly', * 'https://www.googleapis.com/auth/googlehealth.health_metrics_and_measurements.readonly', + * 'https://www.googleapis.com/auth/googlehealth.irn.readonly', * 'https://www.googleapis.com/auth/googlehealth.profile.readonly', * 'https://www.googleapis.com/auth/googlehealth.settings.readonly', * 'https://www.googleapis.com/auth/googlehealth.sleep.readonly', From c0ae9fd558d203d8cd2c92f94066534f7611768a Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:11 +0000 Subject: [PATCH 20/29] feat(logging): update the API #### logging:v2 The following keys were added: - schemas.ProjectedField.properties.virtualField.$ref - schemas.ProjectedField.properties.virtualField.description - schemas.VirtualField.description - schemas.VirtualField.id - schemas.VirtualField.properties.underlyingFieldSources.description - schemas.VirtualField.properties.underlyingFieldSources.items.$ref - schemas.VirtualField.properties.underlyingFieldSources.type - schemas.VirtualField.properties.virtualFieldType.description - schemas.VirtualField.properties.virtualFieldType.enum - schemas.VirtualField.properties.virtualFieldType.enumDescriptions - schemas.VirtualField.properties.virtualFieldType.type - schemas.VirtualField.type --- discovery/logging-v2.json | 32 +++++++++++++++++++++++++++++++- src/apis/logging/v2.ts | 17 +++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/discovery/logging-v2.json b/discovery/logging-v2.json index e7ff7bc1fb..3d7052d8e9 100644 --- a/discovery/logging-v2.json +++ b/discovery/logging-v2.json @@ -9167,7 +9167,7 @@ } } }, - "revision": "20260501", + "revision": "20260522", "rootUrl": "https://logging.googleapis.com/", "schemas": { "AppHub": { @@ -11429,6 +11429,10 @@ "truncationGranularity": { "description": "The truncation granularity when grouping by a time/date field. This will be used to truncate the field to the granularity specified. This can be either a date or a time granularity found at https://cloud.google.com/bigquery/docs/reference/standard-sql/timestamp_functions#timestamp_trunc_granularity_date and https://cloud.google.com/bigquery/docs/reference/standard-sql/timestamp_functions#timestamp_trunc_granularity_time respectively.", "type": "string" + }, + "virtualField": { + "$ref": "VirtualField", + "description": "Optional. A virtual field definition, used in place of field to define a field that is computed from other fields rather than being directly present in the data schema.For example, a virtual field can be defined using COALESCE to select the first non-null value from a list of fields.If virtual_field is set, field must not be set." } }, "type": "object" @@ -11990,6 +11994,32 @@ }, "type": "object" }, + "VirtualField": { + "description": "A virtual field is a field that is not physically present in the underlying data schema, but is created through specific operations within the query builder model based on other fields in the schema.", + "id": "VirtualField", + "properties": { + "underlyingFieldSources": { + "description": "The field sources that will be used to create the virtual field, based on the semantics of the virtual field type.The field sources must follow these rules, based on the virtual field type: - For VIRTUAL_FIELD_TYPE_UNSPECIFIED, this field must be empty. - For COALESCE, this field must be non-empty and include a minimum of two field sources. The underlying field sources must be actual projected fields that represent actual schema fields and that must not be transformed and aggregated in any way, except for casting. The type of all the underlying field sources must be equivalent so that picking one of them would result in the same value type.", + "items": { + "$ref": "FieldSource" + }, + "type": "array" + }, + "virtualFieldType": { + "description": "Required. The type of the virtual field.", + "enum": [ + "VIRTUAL_FIELD_TYPE_UNSPECIFIED", + "COALESCE" + ], + "enumDescriptions": [ + "Invalid value, do not use.", + "Creates a virtual field by selecting the first non-null value from the list of fields specified in underlying_field_sources, similar to a COALESCE function in SQL." + ], + "type": "string" + } + }, + "type": "object" + }, "WriteLogEntriesRequest": { "description": "The parameters to WriteLogEntries.", "id": "WriteLogEntriesRequest", diff --git a/src/apis/logging/v2.ts b/src/apis/logging/v2.ts index 7c9bfec513..b0f4031e22 100644 --- a/src/apis/logging/v2.ts +++ b/src/apis/logging/v2.ts @@ -1687,6 +1687,10 @@ export namespace logging_v2 { * The truncation granularity when grouping by a time/date field. This will be used to truncate the field to the granularity specified. This can be either a date or a time granularity found at https://cloud.google.com/bigquery/docs/reference/standard-sql/timestamp_functions#timestamp_trunc_granularity_date and https://cloud.google.com/bigquery/docs/reference/standard-sql/timestamp_functions#timestamp_trunc_granularity_time respectively. */ truncationGranularity?: string | null; + /** + * Optional. A virtual field definition, used in place of field to define a field that is computed from other fields rather than being directly present in the data schema.For example, a virtual field can be defined using COALESCE to select the first non-null value from a list of fields.If virtual_field is set, field must not be set. + */ + virtualField?: Schema$VirtualField; } /** * Defines a structured query configuration that can be used instead of writing raw SQL. This configuration represents the components of a SQL query (FROM, SELECT, WHERE, ORDER BY, LIMIT) and is typically converted into an executable query (e.g., BigQuery SQL) by the backend service to retrieve data for analysis or visualization. @@ -2113,6 +2117,19 @@ export namespace logging_v2 { */ updateMask?: string | null; } + /** + * A virtual field is a field that is not physically present in the underlying data schema, but is created through specific operations within the query builder model based on other fields in the schema. + */ + export interface Schema$VirtualField { + /** + * The field sources that will be used to create the virtual field, based on the semantics of the virtual field type.The field sources must follow these rules, based on the virtual field type: - For VIRTUAL_FIELD_TYPE_UNSPECIFIED, this field must be empty. - For COALESCE, this field must be non-empty and include a minimum of two field sources. The underlying field sources must be actual projected fields that represent actual schema fields and that must not be transformed and aggregated in any way, except for casting. The type of all the underlying field sources must be equivalent so that picking one of them would result in the same value type. + */ + underlyingFieldSources?: Schema$FieldSource[]; + /** + * Required. The type of the virtual field. + */ + virtualFieldType?: string | null; + } /** * The parameters to WriteLogEntries. */ From c359841a8a199472377e8f0c6ff1398b5f1b57be Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:11 +0000 Subject: [PATCH 21/29] feat(mybusinessverifications)!: update the API BREAKING CHANGE: This release has breaking changes. #### mybusinessverifications:v1 The following keys were deleted: - schemas.GenerateInstantVerificationTokenRequest.properties.locationData.$ref - schemas.GenerateInstantVerificationTokenRequest.properties.locationData.deprecated - schemas.GenerateInstantVerificationTokenRequest.properties.locationData.description - schemas.LocationData.description - schemas.LocationData.id - schemas.LocationData.properties.address.$ref - schemas.LocationData.properties.address.description - schemas.LocationData.properties.name.description - schemas.LocationData.properties.name.type - schemas.LocationData.type --- discovery/mybusinessverifications-v1.json | 22 +--------------------- src/apis/mybusinessverifications/v1.ts | 18 ------------------ 2 files changed, 1 insertion(+), 39 deletions(-) diff --git a/discovery/mybusinessverifications-v1.json b/discovery/mybusinessverifications-v1.json index b2db14e20f..9325833234 100644 --- a/discovery/mybusinessverifications-v1.json +++ b/discovery/mybusinessverifications-v1.json @@ -256,7 +256,7 @@ } } }, - "revision": "20260524", + "revision": "20260527", "rootUrl": "https://mybusinessverifications.googleapis.com/", "schemas": { "AddressVerificationData": { @@ -374,11 +374,6 @@ "description": "Request message for Verifications.GenerateInstantVerificationToken.", "id": "GenerateInstantVerificationTokenRequest", "properties": { - "locationData": { - "$ref": "LocationData", - "deprecated": true, - "description": "Immutable. Deprecated: Please use location_id instead. The address and other details of the location to generate an instant verification token for." - }, "locationId": { "description": "The location identifier associated with an unverified listing. This is the location id generated at the time that the listing was originally created. It is the final portion of a location resource name as generated by the Google My Business API. Note: the caller must be an owner or manager of this listing in order to generate a verification token. See the [location resource](/my-business/reference/rest/v4/accounts.locations) documentation for more information.", "type": "string" @@ -430,21 +425,6 @@ }, "type": "object" }, - "LocationData": { - "description": "The address and other details of the location to generate an instant verification token for.", - "id": "LocationData", - "properties": { - "address": { - "$ref": "PostalAddress", - "description": "Immutable. A precise, accurate address to describe your business location. PO boxes or mailboxes located at remote locations are not acceptable. At this time, you can specify a maximum of five `address_lines` values in the address." - }, - "name": { - "description": "Immutable. Name should reflect your business's real-world name, as used consistently on your storefront, website, and stationery, and as known to customers. Any additional information, when relevant, can be included in other fields of the resource (for example, `Address`, `Categories`). Don't add unnecessary information to your name (for example, prefer \"Google\" over \"Google Inc. - Mountain View Corporate Headquarters\"). Don't include marketing taglines, store codes, special characters, hours or closed/open status, phone numbers, website URLs, service/product information, location/address or directions, or containment information (for example, \"Chase ATM in Duane Reade\").", - "type": "string" - } - }, - "type": "object" - }, "PostalAddress": { "description": "Represents a postal address, such as for postal delivery or payments addresses. With a postal address, a postal service can deliver items to a premise, P.O. box, or similar. A postal address is not intended to model geographical locations like roads, towns, or mountains. In typical usage, an address would be created by user input or from importing existing data, depending on the type of process. Advice on address input or editing: - Use an internationalization-ready address widget such as https://github.com/google/libaddressinput. - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, see: https://support.google.com/business/answer/6397478.", "id": "PostalAddress", diff --git a/src/apis/mybusinessverifications/v1.ts b/src/apis/mybusinessverifications/v1.ts index 289e4de948..fe2f203942 100644 --- a/src/apis/mybusinessverifications/v1.ts +++ b/src/apis/mybusinessverifications/v1.ts @@ -213,10 +213,6 @@ export namespace mybusinessverifications_v1 { * Request message for Verifications.GenerateInstantVerificationToken. */ export interface Schema$GenerateInstantVerificationTokenRequest { - /** - * Immutable. Deprecated: Please use location_id instead. The address and other details of the location to generate an instant verification token for. - */ - locationData?: Schema$LocationData; /** * The location identifier associated with an unverified listing. This is the location id generated at the time that the listing was originally created. It is the final portion of a location resource name as generated by the Google My Business API. Note: the caller must be an owner or manager of this listing in order to generate a verification token. See the [location resource](/my-business/reference/rest/v4/accounts.locations) documentation for more information. */ @@ -248,19 +244,6 @@ export namespace mybusinessverifications_v1 { */ verifications?: Schema$Verification[]; } - /** - * The address and other details of the location to generate an instant verification token for. - */ - export interface Schema$LocationData { - /** - * Immutable. A precise, accurate address to describe your business location. PO boxes or mailboxes located at remote locations are not acceptable. At this time, you can specify a maximum of five `address_lines` values in the address. - */ - address?: Schema$PostalAddress; - /** - * Immutable. Name should reflect your business's real-world name, as used consistently on your storefront, website, and stationery, and as known to customers. Any additional information, when relevant, can be included in other fields of the resource (for example, `Address`, `Categories`). Don't add unnecessary information to your name (for example, prefer "Google" over "Google Inc. - Mountain View Corporate Headquarters"). Don't include marketing taglines, store codes, special characters, hours or closed/open status, phone numbers, website URLs, service/product information, location/address or directions, or containment information (for example, "Chase ATM in Duane Reade"). - */ - name?: string | null; - } /** * Represents a postal address, such as for postal delivery or payments addresses. With a postal address, a postal service can deliver items to a premise, P.O. box, or similar. A postal address is not intended to model geographical locations like roads, towns, or mountains. In typical usage, an address would be created by user input or from importing existing data, depending on the type of process. Advice on address input or editing: - Use an internationalization-ready address widget such as https://github.com/google/libaddressinput. - Users should not be presented with UI elements for input or editing of fields outside countries where that field is used. For more guidance on how to use this schema, see: https://support.google.com/business/answer/6397478. */ @@ -1337,7 +1320,6 @@ export namespace mybusinessverifications_v1 { * requestBody: { * // request body parameters * // { - * // "locationData": {}, * // "locationId": "my_locationId" * // } * }, From 822088e7fd1ae72e76e21cc35b57d5775ee3dca1 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:11 +0000 Subject: [PATCH 22/29] feat(networksecurity): update the API #### networksecurity:v1beta1 The following keys were added: - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.flatPath - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.httpMethod - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.id - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameterOrder - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.location - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.pattern - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.required - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.type - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.path - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.request.$ref - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.response.$ref - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.scopes - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.flatPath - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.httpMethod - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.id - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameterOrder - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.location - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.pattern - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.required - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.type - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.path - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.response.$ref - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.scopes - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.flatPath - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.httpMethod - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.id - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameterOrder - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.filter.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.filter.location - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.filter.type - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.format - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.location - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.type - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageToken.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageToken.location - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageToken.type - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.description - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.location - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.pattern - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.required - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.type - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.path - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.response.$ref - resources.organizations.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.scopes - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.flatPath - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.httpMethod - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.id - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameterOrder - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.location - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.pattern - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.required - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.parameters.parent.type - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.path - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.request.$ref - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.response.$ref - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.create.scopes - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.flatPath - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.httpMethod - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.id - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameterOrder - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.location - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.pattern - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.required - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.parameters.name.type - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.path - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.response.$ref - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.get.scopes - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.flatPath - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.httpMethod - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.id - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameterOrder - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.filter.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.filter.location - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.filter.type - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.format - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.location - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageSize.type - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageToken.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageToken.location - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.pageToken.type - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.description - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.location - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.pattern - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.required - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.parameters.parent.type - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.path - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.response.$ref - resources.projects.resources.locations.resources.firewallEndpoints.resources.wildfireVerdictChangeRequests.methods.list.scopes - schemas.FirewallEndpoint.properties.wildfireSettings.$ref - schemas.FirewallEndpoint.properties.wildfireSettings.description - schemas.FirewallEndpointEndpointSettings.properties.contentCloudRegion.description - schemas.FirewallEndpointEndpointSettings.properties.contentCloudRegion.enum - schemas.FirewallEndpointEndpointSettings.properties.contentCloudRegion.enumDescriptions - schemas.FirewallEndpointEndpointSettings.properties.contentCloudRegion.type - schemas.FirewallEndpointEndpointSettings.properties.httpPartialResponseBlocked.description - schemas.FirewallEndpointEndpointSettings.properties.httpPartialResponseBlocked.type - schemas.FirewallEndpointWildfireSettings.description - schemas.FirewallEndpointWildfireSettings.id - schemas.FirewallEndpointWildfireSettings.properties.enabled.description - schemas.FirewallEndpointWildfireSettings.properties.enabled.type - schemas.FirewallEndpointWildfireSettings.properties.wildfireInlineCloudAnalysisSettings.$ref - schemas.FirewallEndpointWildfireSettings.properties.wildfireInlineCloudAnalysisSettings.description - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupDuration.description - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupDuration.format - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupDuration.type - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupTimeoutAction.description - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupTimeoutAction.enum - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupTimeoutAction.enumDescriptions - schemas.FirewallEndpointWildfireSettings.properties.wildfireRealtimeLookupTimeoutAction.type - schemas.FirewallEndpointWildfireSettings.properties.wildfireRegion.description - schemas.FirewallEndpointWildfireSettings.properties.wildfireRegion.enum - schemas.FirewallEndpointWildfireSettings.properties.wildfireRegion.enumDescriptions - schemas.FirewallEndpointWildfireSettings.properties.wildfireRegion.type - schemas.FirewallEndpointWildfireSettings.type - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.description - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.id - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.maxAnalysisDuration.description - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.maxAnalysisDuration.format - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.maxAnalysisDuration.type - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.submissionTimeoutLoggingDisabled.description - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.submissionTimeoutLoggingDisabled.type - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.timeoutAction.description - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.timeoutAction.enum - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.timeoutAction.enumDescriptions - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.properties.timeoutAction.type - schemas.FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings.type - schemas.ListWildfireVerdictChangeRequestsResponse.description - schemas.ListWildfireVerdictChangeRequestsResponse.id - schemas.ListWildfireVerdictChangeRequestsResponse.properties.nextPageToken.description - schemas.ListWildfireVerdictChangeRequestsResponse.properties.nextPageToken.type - schemas.ListWildfireVerdictChangeRequestsResponse.properties.unreachable.description - schemas.ListWildfireVerdictChangeRequestsResponse.properties.unreachable.items.type - schemas.ListWildfireVerdictChangeRequestsResponse.properties.unreachable.type - schemas.ListWildfireVerdictChangeRequestsResponse.properties.wildfireVerdictChangeRequests.description - schemas.ListWildfireVerdictChangeRequestsResponse.properties.wildfireVerdictChangeRequests.items.$ref - schemas.ListWildfireVerdictChangeRequestsResponse.properties.wildfireVerdictChangeRequests.type - schemas.ListWildfireVerdictChangeRequestsResponse.type - schemas.SecurityProfile.properties.wildfireAnalysisProfile.$ref - schemas.SecurityProfile.properties.wildfireAnalysisProfile.description - schemas.SecurityProfileGroup.properties.wildfireAnalysisProfile.description - schemas.SecurityProfileGroup.properties.wildfireAnalysisProfile.type - schemas.WildfireAnalysisProfile.description - schemas.WildfireAnalysisProfile.id - schemas.WildfireAnalysisProfile.properties.wildfireInlineCloudAnalysisRules.description - schemas.WildfireAnalysisProfile.properties.wildfireInlineCloudAnalysisRules.items.$ref - schemas.WildfireAnalysisProfile.properties.wildfireInlineCloudAnalysisRules.type - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlOverrides.description - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlOverrides.items.$ref - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlOverrides.type - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlSetting.$ref - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlSetting.description - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlSettings.deprecated - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlSettings.description - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlSettings.items.$ref - schemas.WildfireAnalysisProfile.properties.wildfireInlineMlSettings.type - schemas.WildfireAnalysisProfile.properties.wildfireOverrides.description - schemas.WildfireAnalysisProfile.properties.wildfireOverrides.items.$ref - schemas.WildfireAnalysisProfile.properties.wildfireOverrides.type - schemas.WildfireAnalysisProfile.properties.wildfireRealtimeLookup.description - schemas.WildfireAnalysisProfile.properties.wildfireRealtimeLookup.type - schemas.WildfireAnalysisProfile.properties.wildfireSubmissionRules.description - schemas.WildfireAnalysisProfile.properties.wildfireSubmissionRules.items.$ref - schemas.WildfireAnalysisProfile.properties.wildfireSubmissionRules.type - schemas.WildfireAnalysisProfile.properties.wildfireThreatOverrides.description - schemas.WildfireAnalysisProfile.properties.wildfireThreatOverrides.items.$ref - schemas.WildfireAnalysisProfile.properties.wildfireThreatOverrides.type - schemas.WildfireAnalysisProfile.type - schemas.WildfireInlineCloudAnalysisRule.description - schemas.WildfireInlineCloudAnalysisRule.id - schemas.WildfireInlineCloudAnalysisRule.properties.action.description - schemas.WildfireInlineCloudAnalysisRule.properties.action.enum - schemas.WildfireInlineCloudAnalysisRule.properties.action.enumDescriptions - schemas.WildfireInlineCloudAnalysisRule.properties.action.type - schemas.WildfireInlineCloudAnalysisRule.properties.customFileTypes.$ref - schemas.WildfireInlineCloudAnalysisRule.properties.customFileTypes.description - schemas.WildfireInlineCloudAnalysisRule.properties.direction.description - schemas.WildfireInlineCloudAnalysisRule.properties.direction.enum - schemas.WildfireInlineCloudAnalysisRule.properties.direction.enumDescriptions - schemas.WildfireInlineCloudAnalysisRule.properties.direction.type - schemas.WildfireInlineCloudAnalysisRule.properties.fileSelectionMode.description - schemas.WildfireInlineCloudAnalysisRule.properties.fileSelectionMode.enum - schemas.WildfireInlineCloudAnalysisRule.properties.fileSelectionMode.enumDescriptions - schemas.WildfireInlineCloudAnalysisRule.properties.fileSelectionMode.type - schemas.WildfireInlineCloudAnalysisRule.type - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.description - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.id - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.properties.fileTypes.description - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.properties.fileTypes.items.enum - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.properties.fileTypes.items.enumDescriptions - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.properties.fileTypes.items.type - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.properties.fileTypes.type - schemas.WildfireInlineCloudAnalysisRuleCustomFileTypes.type - schemas.WildfireInlineMlFileException.description - schemas.WildfireInlineMlFileException.id - schemas.WildfireInlineMlFileException.properties.filename.description - schemas.WildfireInlineMlFileException.properties.filename.type - schemas.WildfireInlineMlFileException.properties.partialHash.description - schemas.WildfireInlineMlFileException.properties.partialHash.type - schemas.WildfireInlineMlFileException.type - schemas.WildfireInlineMlOverride.description - schemas.WildfireInlineMlOverride.id - schemas.WildfireInlineMlOverride.properties.action.description - schemas.WildfireInlineMlOverride.properties.action.enum - schemas.WildfireInlineMlOverride.properties.action.enumDescriptions - schemas.WildfireInlineMlOverride.properties.action.type - schemas.WildfireInlineMlOverride.properties.protocol.description - schemas.WildfireInlineMlOverride.properties.protocol.enum - schemas.WildfireInlineMlOverride.properties.protocol.enumDescriptions - schemas.WildfireInlineMlOverride.properties.protocol.type - schemas.WildfireInlineMlOverride.type - schemas.WildfireInlineMlSettings.description - schemas.WildfireInlineMlSettings.id - schemas.WildfireInlineMlSettings.properties.fileExceptions.description - schemas.WildfireInlineMlSettings.properties.fileExceptions.items.$ref - schemas.WildfireInlineMlSettings.properties.fileExceptions.type - schemas.WildfireInlineMlSettings.properties.inlineMlConfigs.description - schemas.WildfireInlineMlSettings.properties.inlineMlConfigs.items.$ref - schemas.WildfireInlineMlSettings.properties.inlineMlConfigs.type - schemas.WildfireInlineMlSettings.type - schemas.WildfireInlineMlSettingsInlineMlConfig.description - schemas.WildfireInlineMlSettingsInlineMlConfig.id - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.action.description - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.action.enum - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.action.enumDescriptions - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.action.type - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.fileType.description - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.fileType.enum - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.fileType.enumDescriptions - schemas.WildfireInlineMlSettingsInlineMlConfig.properties.fileType.type - schemas.WildfireInlineMlSettingsInlineMlConfig.type - schemas.WildfireOverride.description - schemas.WildfireOverride.id - schemas.WildfireOverride.properties.action.description - schemas.WildfireOverride.properties.action.enum - schemas.WildfireOverride.properties.action.enumDescriptions - schemas.WildfireOverride.properties.action.type - schemas.WildfireOverride.properties.protocol.description - schemas.WildfireOverride.properties.protocol.enum - schemas.WildfireOverride.properties.protocol.enumDescriptions - schemas.WildfireOverride.properties.protocol.type - schemas.WildfireOverride.type - schemas.WildfireSubmissionRule.description - schemas.WildfireSubmissionRule.id - schemas.WildfireSubmissionRule.properties.customFileTypes.$ref - schemas.WildfireSubmissionRule.properties.customFileTypes.description - schemas.WildfireSubmissionRule.properties.direction.description - schemas.WildfireSubmissionRule.properties.direction.enum - schemas.WildfireSubmissionRule.properties.direction.enumDescriptions - schemas.WildfireSubmissionRule.properties.direction.type - schemas.WildfireSubmissionRule.properties.fileSelectionMode.description - schemas.WildfireSubmissionRule.properties.fileSelectionMode.enum - schemas.WildfireSubmissionRule.properties.fileSelectionMode.enumDescriptions - schemas.WildfireSubmissionRule.properties.fileSelectionMode.type - schemas.WildfireSubmissionRule.type - schemas.WildfireSubmissionRuleCustomFileTypes.description - schemas.WildfireSubmissionRuleCustomFileTypes.id - schemas.WildfireSubmissionRuleCustomFileTypes.properties.fileTypes.description - schemas.WildfireSubmissionRuleCustomFileTypes.properties.fileTypes.items.enum - schemas.WildfireSubmissionRuleCustomFileTypes.properties.fileTypes.items.enumDescriptions - schemas.WildfireSubmissionRuleCustomFileTypes.properties.fileTypes.items.type - schemas.WildfireSubmissionRuleCustomFileTypes.properties.fileTypes.type - schemas.WildfireSubmissionRuleCustomFileTypes.type - schemas.WildfireThreatOverride.description - schemas.WildfireThreatOverride.id - schemas.WildfireThreatOverride.properties.action.description - schemas.WildfireThreatOverride.properties.action.enum - schemas.WildfireThreatOverride.properties.action.enumDescriptions - schemas.WildfireThreatOverride.properties.action.type - schemas.WildfireThreatOverride.properties.threatId.description - schemas.WildfireThreatOverride.properties.threatId.type - schemas.WildfireThreatOverride.type - schemas.WildfireVerdictChangeRequest.description - schemas.WildfireVerdictChangeRequest.id - schemas.WildfireVerdictChangeRequest.properties.comment.description - schemas.WildfireVerdictChangeRequest.properties.comment.type - schemas.WildfireVerdictChangeRequest.properties.createTime.description - schemas.WildfireVerdictChangeRequest.properties.createTime.format - schemas.WildfireVerdictChangeRequest.properties.createTime.readOnly - schemas.WildfireVerdictChangeRequest.properties.createTime.type - schemas.WildfireVerdictChangeRequest.properties.fileName.description - schemas.WildfireVerdictChangeRequest.properties.fileName.readOnly - schemas.WildfireVerdictChangeRequest.properties.fileName.type - schemas.WildfireVerdictChangeRequest.properties.fileType.description - schemas.WildfireVerdictChangeRequest.properties.fileType.readOnly - schemas.WildfireVerdictChangeRequest.properties.fileType.type - schemas.WildfireVerdictChangeRequest.properties.finalVerdict.description - schemas.WildfireVerdictChangeRequest.properties.finalVerdict.enum - schemas.WildfireVerdictChangeRequest.properties.finalVerdict.enumDescriptions - schemas.WildfireVerdictChangeRequest.properties.finalVerdict.readOnly - schemas.WildfireVerdictChangeRequest.properties.finalVerdict.type - schemas.WildfireVerdictChangeRequest.properties.name.description - schemas.WildfireVerdictChangeRequest.properties.name.readOnly - schemas.WildfireVerdictChangeRequest.properties.name.type - schemas.WildfireVerdictChangeRequest.properties.newVerdict.description - schemas.WildfireVerdictChangeRequest.properties.newVerdict.enum - schemas.WildfireVerdictChangeRequest.properties.newVerdict.enumDescriptions - schemas.WildfireVerdictChangeRequest.properties.newVerdict.type - schemas.WildfireVerdictChangeRequest.properties.oldVerdict.description - schemas.WildfireVerdictChangeRequest.properties.oldVerdict.enum - schemas.WildfireVerdictChangeRequest.properties.oldVerdict.enumDescriptions - schemas.WildfireVerdictChangeRequest.properties.oldVerdict.readOnly - schemas.WildfireVerdictChangeRequest.properties.oldVerdict.type - schemas.WildfireVerdictChangeRequest.properties.resolutionTime.description - schemas.WildfireVerdictChangeRequest.properties.resolutionTime.format - schemas.WildfireVerdictChangeRequest.properties.resolutionTime.readOnly - schemas.WildfireVerdictChangeRequest.properties.resolutionTime.type - schemas.WildfireVerdictChangeRequest.properties.sha256.description - schemas.WildfireVerdictChangeRequest.properties.sha256.type - schemas.WildfireVerdictChangeRequest.properties.sourceRegion.description - schemas.WildfireVerdictChangeRequest.properties.sourceRegion.readOnly - schemas.WildfireVerdictChangeRequest.properties.sourceRegion.type - schemas.WildfireVerdictChangeRequest.properties.state.description - schemas.WildfireVerdictChangeRequest.properties.state.enum - schemas.WildfireVerdictChangeRequest.properties.state.enumDescriptions - schemas.WildfireVerdictChangeRequest.properties.state.readOnly - schemas.WildfireVerdictChangeRequest.properties.state.type - schemas.WildfireVerdictChangeRequest.properties.updateTime.description - schemas.WildfireVerdictChangeRequest.properties.updateTime.format - schemas.WildfireVerdictChangeRequest.properties.updateTime.readOnly - schemas.WildfireVerdictChangeRequest.properties.updateTime.type - schemas.WildfireVerdictChangeRequest.properties.wildfireVerdictChangeRequestId.description - schemas.WildfireVerdictChangeRequest.properties.wildfireVerdictChangeRequestId.readOnly - schemas.WildfireVerdictChangeRequest.properties.wildfireVerdictChangeRequestId.type - schemas.WildfireVerdictChangeRequest.type The following keys were changed: - schemas.ListMirroringDeploymentsResponse.properties.unreachable.description - schemas.SecurityProfile.properties.type.enum - schemas.SecurityProfile.properties.type.enumDescriptions --- discovery/networksecurity-v1beta1.json | 966 ++- src/apis/networksecurity/v1beta1.ts | 10145 +++++++++++++---------- 2 files changed, 6747 insertions(+), 4364 deletions(-) diff --git a/discovery/networksecurity-v1beta1.json b/discovery/networksecurity-v1beta1.json index cb6b2f9dc3..323fc2da20 100644 --- a/discovery/networksecurity-v1beta1.json +++ b/discovery/networksecurity-v1beta1.json @@ -688,6 +688,106 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "wildfireVerdictChangeRequests": { + "methods": { + "create": { + "description": "Create WildfireVerdictChangeRequest in a given Firewall Endpoint in an organization and location.", + "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/firewallEndpoints/{firewallEndpointsId}/wildfireVerdictChangeRequests", + "httpMethod": "POST", + "id": "networksecurity.organizations.locations.firewallEndpoints.wildfireVerdictChangeRequests.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent value for CreateWildfireVerdictChangeRequestRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/firewallEndpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/wildfireVerdictChangeRequests", + "request": { + "$ref": "WildfireVerdictChangeRequest" + }, + "response": { + "$ref": "WildfireVerdictChangeRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Get WildfireVerdictChangeRequest in a given Firewall Endpoint in an organization and location.", + "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/firewallEndpoints/{firewallEndpointsId}/wildfireVerdictChangeRequests/{wildfireVerdictChangeRequestsId}", + "httpMethod": "GET", + "id": "networksecurity.organizations.locations.firewallEndpoints.wildfireVerdictChangeRequests.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the WildfireVerdictChangeRequest to retrieve. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id} Where {wildfire_verdict_change_request_id} is the ID in the format: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/firewallEndpoints/[^/]+/wildfireVerdictChangeRequests/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "WildfireVerdictChangeRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists WildfireVerdictChangeRequests in a given Firewall Endpoint in an organization and location.", + "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/firewallEndpoints/{firewallEndpointsId}/wildfireVerdictChangeRequests", + "httpMethod": "GET", + "id": "networksecurity.organizations.locations.firewallEndpoints.wildfireVerdictChangeRequests.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression to filter the results. See AIP-160 for filtering syntax. Supported fields are: - `sha256` (string, equality only, e.g. `sha256 = \"...\"`) - `state` (enum, equality only, e.g. `state = \"ACTIVE\"`) - `create_time` (timestamp, comparisons, e.g. `create_time > \"2026-01-01T00:00:00Z\"`)", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListWildfireVerdictChangeRequestsRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/firewallEndpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/wildfireVerdictChangeRequests", + "response": { + "$ref": "ListWildfireVerdictChangeRequestsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } }, "operations": { @@ -3046,6 +3146,106 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "wildfireVerdictChangeRequests": { + "methods": { + "create": { + "description": "Create WildfireVerdictChangeRequest in a given Firewall Endpoint in a project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/firewallEndpoints/{firewallEndpointsId}/wildfireVerdictChangeRequests", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.firewallEndpoints.wildfireVerdictChangeRequests.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent value for CreateWildfireVerdictChangeRequestRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/firewallEndpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/wildfireVerdictChangeRequests", + "request": { + "$ref": "WildfireVerdictChangeRequest" + }, + "response": { + "$ref": "WildfireVerdictChangeRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Get WildfireVerdictChangeRequest in a given Firewall Endpoint in a project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/firewallEndpoints/{firewallEndpointsId}/wildfireVerdictChangeRequests/{wildfireVerdictChangeRequestsId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.firewallEndpoints.wildfireVerdictChangeRequests.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the WildfireVerdictChangeRequest to retrieve. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id} Where {wildfire_verdict_change_request_id} is the ID in the format: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/firewallEndpoints/[^/]+/wildfireVerdictChangeRequests/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "WildfireVerdictChangeRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists WildfireVerdictChangeRequests in a given Firewall Endpoint in a project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/firewallEndpoints/{firewallEndpointsId}/wildfireVerdictChangeRequests", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.firewallEndpoints.wildfireVerdictChangeRequests.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter expression to filter the results. See AIP-160 for filtering syntax. Supported fields are: - `sha256` (string, equality only, e.g. `sha256 = \"...\"`) - `state` (enum, equality only, e.g. `state = \"ACTIVE\"`) - `create_time` (timestamp, comparisons, e.g. `create_time > \"2026-01-01T00:00:00Z\"`)", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for ListWildfireVerdictChangeRequestsRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/firewallEndpoints/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/wildfireVerdictChangeRequests", + "response": { + "$ref": "ListWildfireVerdictChangeRequestsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } }, "gatewaySecurityPolicies": { @@ -6131,7 +6331,7 @@ } } }, - "revision": "20260518", + "revision": "20260524", "rootUrl": "https://networksecurity.googleapis.com/", "schemas": { "AddAddressGroupItemsRequest": { @@ -7160,6 +7360,10 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "wildfireSettings": { + "$ref": "FirewallEndpointWildfireSettings", + "description": "Optional. Settings for WildFire analysis." } }, "type": "object" @@ -7257,6 +7461,54 @@ "description": "Settings for the endpoint.", "id": "FirewallEndpointEndpointSettings", "properties": { + "contentCloudRegion": { + "description": "Optional. The content cloud region of the endpoint.", + "enum": [ + "CONTENT_CLOUD_REGION_UNSPECIFIED", + "US_CENTRAL", + "APAC", + "INDIA", + "UK", + "FRANCE", + "JAPAN", + "AUSTRALIA", + "CANADA", + "SWITZERLAND", + "NETHERLANDS", + "INDONESIA", + "QATAR", + "TAIWAN", + "POLAND", + "SOUTH_KOREA", + "SAUDI_ARABIA", + "ITALY" + ], + "enumDescriptions": [ + "PAN content cloud region not specified.", + "us.hawkeye.services-edge.paloaltonetworks.com", + "APAC content cloud portal: apac.hawkeye.services-edge.paloaltonetworks.com", + "India content cloud portal: in.hawkeye.services-edge.paloaltonetworks.com", + "UK content cloud portal: uk.hawkeye.services-edge.paloaltonetworks.com", + "France content cloud portal: fr.hawkeye.services-edge.paloaltonetworks.com", + "Japan content cloud portal: jp.hawkeye.services-edge.paloaltonetworks.com", + "Australia content cloud portal: au.hawkeye.services-edge.paloaltonetworks.com", + "Canada content cloud portal: ca.hawkeye.services-edge.paloaltonetworks.com", + "Switzerland content cloud portal: ch.hawkeye.services-edge.paloaltonetworks.com", + "Netherlands content cloud portal: nl.hawkeye.services-edge.paloaltonetworks.com", + "Indonesia content cloud portal: id.hawkeye.services-edge.paloaltonetworks.com", + "Qatar content cloud portal: qa.hawkeye.services-edge.paloaltonetworks.com", + "Taiwan content cloud portal: tw.hawkeye.services-edge.paloaltonetworks.com", + "Poland content cloud portal: pl.hawkeye.services-edge.paloaltonetworks.com", + "South Korea content cloud portal: kr.hawkeye.services-edge.paloaltonetworks.com", + "Saudi Arabia content cloud portal: sa.hawkeye.services-edge.paloaltonetworks.com", + "Italy content cloud portal: it.hawkeye.services-edge.paloaltonetworks.com" + ], + "type": "string" + }, + "httpPartialResponseBlocked": { + "description": "Optional. Whether to block HTTP partial responses for the endpoint. When this is true, resumption of blocked malicious HTTP file downloads will be blocked by the firewall. False provides maximum availability, true provides maximum security.", + "type": "boolean" + }, "jumboFramesEnabled": { "description": "Optional. Immutable. Indicates whether Jumbo Frames are enabled. Default value is false.", "type": "boolean" @@ -7264,6 +7516,116 @@ }, "type": "object" }, + "FirewallEndpointWildfireSettings": { + "description": "Settings for WildFire analysis.", + "id": "FirewallEndpointWildfireSettings", + "properties": { + "enabled": { + "description": "Optional. Indicates whether WildFire analysis is enabled. Default value is false.", + "type": "boolean" + }, + "wildfireInlineCloudAnalysisSettings": { + "$ref": "FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings", + "description": "Optional. Settings for WildFire inline cloud analysis." + }, + "wildfireRealtimeLookupDuration": { + "description": "Optional. Duration in milliseconds on a file being held while the WildFire real time signature cloud performs a signature lookup. Value between 1 to 5000 is valid. Default value is 1000.", + "format": "google-duration", + "type": "string" + }, + "wildfireRealtimeLookupTimeoutAction": { + "description": "Optional. Action to take on WildFire real time signature lookup timeout. Default value is ALLOW.", + "enum": [ + "WILDFIRE_REALTIME_SIGNATURE_LOOKUP_TIMEOUT_ACTION_UNSPECIFIED", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "WildFire real time signature lookup timeout action not specified.", + "The files that timed out in the signature lookup will be allowed to transmit.", + "The files that timed out in the signature lookup will be denied to transmit." + ], + "type": "string" + }, + "wildfireRegion": { + "description": "Optional. The region where WildFire analysis will be performed. PAN supports regions: https://docs.paloaltonetworks.com/advanced-wildfire/administration/advanced-wildfire-overview/advanced-wildfire-deployments/advanced-wildfire-global-cloud", + "enum": [ + "WILDFIRE_REGION_UNSPECIFIED", + "CANADA", + "UNITED_STATES", + "JAPAN", + "SINGAPORE", + "UNITED_KINGDOM", + "AUSTRALIA", + "GERMANY", + "INDIA", + "SWITZERLAND", + "POLAND", + "INDONESIA", + "TAIWAN", + "FRANCE", + "QATAR", + "SOUTH_KOREA", + "ISRAEL", + "SAUDI_ARABIA", + "SPAIN" + ], + "enumDescriptions": [ + "WildFire region not specified.", + "Canada cloud portal: ca.wildfire.paloaltonetworks.com", + "United States cloud portal: us-native.wildfire.paloaltonetworks.com", + "Japan cloud portal: jp.wildfire.paloaltonetworks.com", + "Singapore cloud portal: sg.wildfire.paloaltonetworks.com", + "United Kingdom cloud portal: uk.wildfire.paloaltonetworks.com", + "Australia cloud portal: au.wildfire.paloaltonetworks.com", + "Germany cloud portal: de.wildfire.paloaltonetworks.com", + "India cloud portal: in.wildfire.paloaltonetworks.com", + "Switzerland cloud portal: ch.wildfire.paloaltonetworks.com", + "Poland cloud portal: pl.wildfire.paloaltonetworks.com", + "Indonesia cloud portal: id.wildfire.paloaltonetworks.com", + "Taiwan cloud portal: tw.wildfire.paloaltonetworks.com", + "France cloud portal: fr.wildfire.paloaltonetworks.com", + "Qatar cloud portal: qatar.wildfire.paloaltonetworks.com", + "South Korea cloud portal: kr.wildfire.paloaltonetworks.com", + "Israel cloud portal: il.wildfire.paloaltonetworks.com", + "Saudi Arabia cloud portal: sa.wildfire.paloaltonetworks.com", + "Spain cloud portal: es.wildfire.paloaltonetworks.com" + ], + "type": "string" + } + }, + "type": "object" + }, + "FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings": { + "description": "Settings for WildFire inline cloud analysis.", + "id": "FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings", + "properties": { + "maxAnalysisDuration": { + "description": "Optional. Timeout in milliseconds on a file being held while WildFire inline cloud analysis is performed. Value between 1 to 240000 is valid. Default value is 30000.", + "format": "google-duration", + "type": "string" + }, + "submissionTimeoutLoggingDisabled": { + "description": "Optional. Whether to disable WildFire submission log generation for files that timeout during WildFire inline cloud analysis.", + "type": "boolean" + }, + "timeoutAction": { + "description": "Optional. Action to take when WildFire inline cloud analysis times out. Default value is ALLOW.", + "enum": [ + "WILDFIRE_INLINE_CLOUD_ANALYSIS_TIMEOUT_ACTION_UNSPECIFIED", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "WildFire inline cloud analysis timeout action not specified.", + "The files that timed out will be allowed to transmit.", + "The files that timed out will be denied to transmit." + ], + "type": "string" + } + }, + "type": "object" + }, "GatewaySecurityPolicy": { "description": "The GatewaySecurityPolicy resource contains a collection of GatewaySecurityPolicyRules and associated metadata.", "id": "GatewaySecurityPolicy", @@ -8428,7 +8790,7 @@ "type": "string" }, "unreachable": { - "description": "Locations that could not be reached.", + "description": "Unordered list. Locations that could not be reached. See https://google.aip.dev/217 for more details.", "items": { "type": "string" }, @@ -8659,6 +9021,31 @@ }, "type": "object" }, + "ListWildfireVerdictChangeRequestsResponse": { + "description": "Message for response to listing WildfireVerdictChangeRequests.", + "id": "ListWildfireVerdictChangeRequestsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Unordered list. Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + }, + "wildfireVerdictChangeRequests": { + "description": "The list of WildfireVerdictChangeRequests", + "items": { + "$ref": "WildfireVerdictChangeRequest" + }, + "type": "array" + } + }, + "type": "object" + }, "Location": { "description": "A resource that represents a Google Cloud location.", "id": "Location", @@ -9593,14 +9980,16 @@ "THREAT_PREVENTION", "CUSTOM_MIRRORING", "CUSTOM_INTERCEPT", - "URL_FILTERING" + "URL_FILTERING", + "WILDFIRE_ANALYSIS" ], "enumDescriptions": [ "Profile type not specified.", "Profile type for threat prevention.", "Profile type for packet mirroring v2", "Profile type for TPPI.", - "Profile type for URL filtering." + "Profile type for URL filtering.", + "Profile type for WildFire Analysis." ], "type": "string" }, @@ -9613,6 +10002,10 @@ "urlFilteringProfile": { "$ref": "UrlFilteringProfile", "description": "The URL filtering configuration for the SecurityProfile." + }, + "wildfireAnalysisProfile": { + "$ref": "WildfireAnalysisProfile", + "description": "The WildFire Analysis configurations for SecurityProfile." } }, "type": "object" @@ -9674,6 +10067,10 @@ "urlFilteringProfile": { "description": "Optional. Reference to a SecurityProfile with the UrlFiltering configuration.", "type": "string" + }, + "wildfireAnalysisProfile": { + "description": "Optional. Reference to a SecurityProfile with the WildFire configuration.", + "type": "string" } }, "type": "object" @@ -10072,6 +10469,567 @@ } }, "type": "object" + }, + "WildfireAnalysisProfile": { + "description": "WildfireAnalysisProfile defines Palo Alto Networks WildFire behavior.", + "id": "WildfireAnalysisProfile", + "properties": { + "wildfireInlineCloudAnalysisRules": { + "description": "Optional. Configuration for WildFire inline cloud analysis.", + "items": { + "$ref": "WildfireInlineCloudAnalysisRule" + }, + "type": "array" + }, + "wildfireInlineMlOverrides": { + "description": "Optional. Configuration for overriding inline ML WildFire actions per protocol.", + "items": { + "$ref": "WildfireInlineMlOverride" + }, + "type": "array" + }, + "wildfireInlineMlSetting": { + "$ref": "WildfireInlineMlSettings", + "description": "Optional. Settings for WildFire Inline ML analysis." + }, + "wildfireInlineMlSettings": { + "deprecated": true, + "description": "Optional. Settings for WildFire Inline ML analysis.", + "items": { + "$ref": "WildfireInlineMlSettings" + }, + "type": "array" + }, + "wildfireOverrides": { + "description": "Optional. Configuration for overriding WildFire actions per protocol.", + "items": { + "$ref": "WildfireOverride" + }, + "type": "array" + }, + "wildfireRealtimeLookup": { + "description": "Optional. Whether to hold the transfer of a file while the WildFire real-time signature cloud performs a signature lookup. Default value is false.", + "type": "boolean" + }, + "wildfireSubmissionRules": { + "description": "Optional. Configurations for WildFire file submissions.", + "items": { + "$ref": "WildfireSubmissionRule" + }, + "type": "array" + }, + "wildfireThreatOverrides": { + "description": "Optional. Configuration for overriding WildFire threats action by threat_id match.", + "items": { + "$ref": "WildfireThreatOverride" + }, + "type": "array" + } + }, + "type": "object" + }, + "WildfireInlineCloudAnalysisRule": { + "description": "The list of file type configurations to be scanned by WildFire Inline Cloud Analysis.", + "id": "WildfireInlineCloudAnalysisRule", + "properties": { + "action": { + "description": "Required. Action to take when a threat is detected using WildFire Inline Cloud Analysis. The default Value is DENY.", + "enum": [ + "WILDFIRE_INLINE_CLOUD_ANALYSIS_ACTION_UNSPECIFIED", + "ALLOW", + "DENY", + "ALERT" + ], + "enumDescriptions": [ + "WildFire Inline Cloud Analysis action not specified.", + "The files caught by WildFire Inline Cloud Analysis will be allowed to transmit.", + "The files caught by WildFire Inline Cloud Analysis will be denied to transmit.", + "The files caught by WildFire Inline Cloud Analysis will be allowed to transmit, but a wildfire_submission_log entry will be sent to the consumer project." + ], + "type": "string" + }, + "customFileTypes": { + "$ref": "WildfireInlineCloudAnalysisRuleCustomFileTypes", + "description": "Submit a custom list of file types for WildFire analysis." + }, + "direction": { + "description": "Required. Direction for the file to be analyzed by WildFire Inline Cloud Analysis.", + "enum": [ + "DIRECTION_UNSPECIFIED", + "UPLOAD", + "DOWNLOAD", + "BOTH" + ], + "enumDescriptions": [ + "Direction not specified.", + "Upload direction.", + "Download direction.", + "Both upload and download directions." + ], + "type": "string" + }, + "fileSelectionMode": { + "description": "Required. File selection mode for WildFire inline cloud analysis.", + "enum": [ + "FILE_SELECTION_MODE_UNSPECIFIED", + "ALL_FILE_TYPES", + "CUSTOM_FILE_TYPES" + ], + "enumDescriptions": [ + "File selection mode not specified.", + "Submit all the file types for scan.", + "Submit a custom list of file types for scan." + ], + "type": "string" + } + }, + "type": "object" + }, + "WildfireInlineCloudAnalysisRuleCustomFileTypes": { + "description": "The options to submit a custom list of file types for scan.", + "id": "WildfireInlineCloudAnalysisRuleCustomFileTypes", + "properties": { + "fileTypes": { + "description": "Required. File types to be submitted for WildFire inline cloud analysis.", + "items": { + "enum": [ + "FILE_TYPE_UNSPECIFIED", + "PE" + ], + "enumDescriptions": [ + "File type not specified.", + "Portable Executable (PE) files." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "WildfireInlineMlFileException": { + "description": "Defines the file to exclude from WildFire Inline ML analysis.", + "id": "WildfireInlineMlFileException", + "properties": { + "filename": { + "description": "Optional. Name of the file to exclude from WildFire Inline ML analysis.", + "type": "string" + }, + "partialHash": { + "description": "Required. Machine learning partial hash of the file to exclude from WildFire Inline ML analysis.", + "type": "string" + } + }, + "type": "object" + }, + "WildfireInlineMlOverride": { + "description": "Defines what action to take for WildFire Inline ML threats per protocol.", + "id": "WildfireInlineMlOverride", + "properties": { + "action": { + "description": "Required. The action to take for WildFire Inline ML override.", + "enum": [ + "WILDFIRE_THREAT_ACTION_UNSPECIFIED", + "WILDFIRE_DEFAULT_ACTION", + "WILDFIRE_ALLOW", + "WILDFIRE_ALERT", + "WILDFIRE_DENY" + ], + "enumDescriptions": [ + "Threat action not specified.", + "The default action (as specified by the vendor) is taken.", + "The packet matching this rule will be allowed to transmit.", + "The packet matching this rule will be allowed to transmit, but a threat_log entry will be sent to the consumer project.", + "The packet matching this rule will be dropped, and a threat_log entry will be sent to the consumer project." + ], + "type": "string" + }, + "protocol": { + "description": "Required. Protocol to match for WildFire Inline ML override.", + "enum": [ + "WILDFIRE_PROTOCOL_UNSPECIFIED", + "WILDFIRE_SMTP", + "WILDFIRE_SMB", + "WILDFIRE_POP3", + "WILDFIRE_IMAP", + "WILDFIRE_HTTP2", + "WILDFIRE_HTTP", + "WILDFIRE_FTP" + ], + "enumDescriptions": [ + "Protocol not specified.", + "SMTP protocol", + "SMB protocol", + "POP3 protocol", + "IMAP protocol", + "HTTP2 protocol", + "HTTP protocol", + "FTP protocol" + ], + "type": "string" + } + }, + "type": "object" + }, + "WildfireInlineMlSettings": { + "description": "Defines the settings for WildFire Inline ML analysis.", + "id": "WildfireInlineMlSettings", + "properties": { + "fileExceptions": { + "description": "Optional. List of files to exclude from WildFire Inline ML analysis.", + "items": { + "$ref": "WildfireInlineMlFileException" + }, + "type": "array" + }, + "inlineMlConfigs": { + "description": "Optional. List of Inline ML configs to enable in WildFire Inline ML analysis.", + "items": { + "$ref": "WildfireInlineMlSettingsInlineMlConfig" + }, + "type": "array" + } + }, + "type": "object" + }, + "WildfireInlineMlSettingsInlineMlConfig": { + "description": "Configuration for WildFire Inline ML analysis per file type.", + "id": "WildfireInlineMlSettingsInlineMlConfig", + "properties": { + "action": { + "description": "Required. Action to take when a threat is detected using Inline ML.", + "enum": [ + "INLINE_ML_ACTION_UNSPECIFIED", + "DISABLE", + "ALERT", + "ENABLE" + ], + "enumDescriptions": [ + "Inline ML threat action not specified.", + "Disable WildFire Inline ML for the associated file type.", + "Enable WildFire Inline ML for the associated file type. Overrides any protocol level settings with action stricter than ALERT to ALERT so that the malicious files detected generate a threat log to the consumer project but are not blocked.", + "Enable WildFire Inline ML for the associated file type, malicious files detected will be blocked." + ], + "type": "string" + }, + "fileType": { + "description": "Required. File type to configure Inline ML for.", + "enum": [ + "INLINE_ML_CONFIG_UNSPECIFIED", + "WINDOWS_EXECUTABLE", + "POWERSHELL_SCRIPT1", + "POWERSHELL_SCRIPT2", + "ELF", + "MS_OFFICE", + "SHELL", + "OOXML", + "MACHO" + ], + "enumDescriptions": [ + "Inline ML config not specified.", + "Enable machine learning engine to dynamically detect malicious PE files.", + "Enable machine learning engine to dynamically identify malicious PowerShell scripts with known length.", + "Enable machine learning engine to dynamically identify malicious PowerShell script without known length.", + "Enable machine learning engine to dynamically detect malicious ELF files.", + "Enable machine learning engine to dynamically detect malicious MSOffice (97-03) files.", + "Enable machine learning engine to dynamically detect malicious Shell files.", + "Enable machine learning engine to dynamically detect malicious Open Office XML files.", + "Enable machine learning engine to dynamically detect malicious Mach-O files." + ], + "type": "string" + } + }, + "type": "object" + }, + "WildfireOverride": { + "description": "Defines what action to take for WildFire threats per protocol.", + "id": "WildfireOverride", + "properties": { + "action": { + "description": "Required. Threat action override. For some threat types, only a subset of actions applies.", + "enum": [ + "WILDFIRE_THREAT_ACTION_UNSPECIFIED", + "WILDFIRE_DEFAULT_ACTION", + "WILDFIRE_ALLOW", + "WILDFIRE_ALERT", + "WILDFIRE_DENY" + ], + "enumDescriptions": [ + "Threat action not specified.", + "The default action (as specified by the vendor) is taken.", + "The packet matching this rule will be allowed to transmit.", + "The packet matching this rule will be allowed to transmit, but a threat_log entry will be sent to the consumer project.", + "The packet matching this rule will be dropped, and a threat_log entry will be sent to the consumer project." + ], + "type": "string" + }, + "protocol": { + "description": "Required. Protocol to match.", + "enum": [ + "WILDFIRE_PROTOCOL_UNSPECIFIED", + "WILDFIRE_SMTP", + "WILDFIRE_SMB", + "WILDFIRE_POP3", + "WILDFIRE_IMAP", + "WILDFIRE_HTTP2", + "WILDFIRE_HTTP", + "WILDFIRE_FTP" + ], + "enumDescriptions": [ + "Protocol not specified.", + "SMTP protocol", + "SMB protocol", + "POP3 protocol", + "IMAP protocol", + "HTTP2 protocol", + "HTTP protocol", + "FTP protocol" + ], + "type": "string" + } + }, + "type": "object" + }, + "WildfireSubmissionRule": { + "description": "Defines the file types to be submitted for WildFire analysis and the direction of the traffic.", + "id": "WildfireSubmissionRule", + "properties": { + "customFileTypes": { + "$ref": "WildfireSubmissionRuleCustomFileTypes", + "description": "Submit a custom list of file types for WildFire analysis." + }, + "direction": { + "description": "Required. Direction for the files to be analyzed by WildFire.", + "enum": [ + "DIRECTION_UNSPECIFIED", + "UPLOAD", + "DOWNLOAD", + "BOTH" + ], + "enumDescriptions": [ + "Direction not specified.", + "Upload direction.", + "Download direction.", + "Both upload and download directions." + ], + "type": "string" + }, + "fileSelectionMode": { + "description": "Required. File selection mode for WildFire analysis.", + "enum": [ + "FILE_SELECTION_MODE_UNSPECIFIED", + "ALL_FILE_TYPES", + "CUSTOM_FILE_TYPES" + ], + "enumDescriptions": [ + "File selection mode not specified.", + "Submit all the file types for scan.", + "Submit a custom list of file types for scan." + ], + "type": "string" + } + }, + "type": "object" + }, + "WildfireSubmissionRuleCustomFileTypes": { + "description": "The options to submit a custom list of file types for scan.", + "id": "WildfireSubmissionRuleCustomFileTypes", + "properties": { + "fileTypes": { + "description": "Required. File types to be submitted for WildFire analysis.", + "items": { + "enum": [ + "FILE_TYPE_UNSPECIFIED", + "APK", + "ARCHIVE", + "EMAIL_LINK", + "FLASH", + "JAR", + "LINUX", + "MS_OFFICE", + "PDF", + "PE", + "SCRIPT" + ], + "enumDescriptions": [ + "File type not specified.", + "Android Application Package (APK) files.", + "Roshal Archive (RAR) and 7-Zip (7z) archive files.", + "HTTP/HTTPS links contained in SMTP and POP3 email messages.", + "Adobe Flash applets and Flash content embedded in web pages.", + "Java applets (JAR/class files types).", + "Executable and Linkable Format (ELF) files.", + "Files used by Microsoft Office.", + "Portable Document Format (PDF) files.", + "Portable Executable (PE) files.", + "Various script files. Jscript (JS), VBScript (VBS), PowerShell Scripts (PS1), Batch (BAT), HTML Application (HTA)." + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "WildfireThreatOverride": { + "description": "Defines what action to take for a specific WildFire threat_id match.", + "id": "WildfireThreatOverride", + "properties": { + "action": { + "description": "Required. Threat action override.", + "enum": [ + "WILDFIRE_THREAT_ACTION_UNSPECIFIED", + "WILDFIRE_DEFAULT_ACTION", + "WILDFIRE_ALLOW", + "WILDFIRE_ALERT", + "WILDFIRE_DENY" + ], + "enumDescriptions": [ + "Threat action not specified.", + "The default action (as specified by the vendor) is taken.", + "The packet matching this rule will be allowed to transmit.", + "The packet matching this rule will be allowed to transmit, but a threat_log entry will be sent to the consumer project.", + "The packet matching this rule will be dropped, and a threat_log entry will be sent to the consumer project." + ], + "type": "string" + }, + "threatId": { + "description": "Required. Threat ID to match.", + "type": "string" + } + }, + "type": "object" + }, + "WildfireVerdictChangeRequest": { + "description": "Message for a WildfireVerdictChangeRequest.", + "id": "WildfireVerdictChangeRequest", + "properties": { + "comment": { + "description": "Required. The justification for the verdict change request. Max length 2048 characters.", + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp when the WildfireVerdictChangeRequest was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "fileName": { + "description": "Output only. The file name of the Malware Sample.", + "readOnly": true, + "type": "string" + }, + "fileType": { + "description": "Output only. The file type of the Malware Sample.", + "readOnly": true, + "type": "string" + }, + "finalVerdict": { + "description": "Output only. The final verdict of the Malware Sample.", + "enum": [ + "WILDFIRE_SAMPLE_VERDICT_UNKNOWN", + "BENIGN", + "MALWARE", + "GRAYWARE", + "PHISHING" + ], + "enumDescriptions": [ + "Default value. Malware is not yet classified.", + "Sample is safe and does not exhibit malicious behavior.", + "Sample is malware and poses a security threat.", + "Sample does not pose a direct security threat, but might display otherwise obtrusive behavior.", + "Link directs users to a phishing site and poses a security threat." + ], + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. Identifier. The relative name of the WildfireVerdictChangeRequest. Output only. This is a unique identifier generated by the third party API. Format: organizations|projects/{project_or_organization}/locations/{location}/firewallEndpoints/{firewall_endpoint}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id} Where {wildfire_verdict_change_request_id} is the ID in the format: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", + "readOnly": true, + "type": "string" + }, + "newVerdict": { + "description": "Required. The suggested verdict to apply to the Malware Sample.", + "enum": [ + "WILDFIRE_SAMPLE_VERDICT_UNKNOWN", + "BENIGN", + "MALWARE", + "GRAYWARE", + "PHISHING" + ], + "enumDescriptions": [ + "Default value. Malware is not yet classified.", + "Sample is safe and does not exhibit malicious behavior.", + "Sample is malware and poses a security threat.", + "Sample does not pose a direct security threat, but might display otherwise obtrusive behavior.", + "Link directs users to a phishing site and poses a security threat." + ], + "type": "string" + }, + "oldVerdict": { + "description": "Output only. The original verdict of the Malware Sample.", + "enum": [ + "WILDFIRE_SAMPLE_VERDICT_UNKNOWN", + "BENIGN", + "MALWARE", + "GRAYWARE", + "PHISHING" + ], + "enumDescriptions": [ + "Default value. Malware is not yet classified.", + "Sample is safe and does not exhibit malicious behavior.", + "Sample is malware and poses a security threat.", + "Sample does not pose a direct security threat, but might display otherwise obtrusive behavior.", + "Link directs users to a phishing site and poses a security threat." + ], + "readOnly": true, + "type": "string" + }, + "resolutionTime": { + "description": "Output only. The timestamp when the WildfireVerdictChangeRequest was resolved.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "sha256": { + "description": "Required. The SHA256 hash of the Malware Sample to change the verdict of.", + "type": "string" + }, + "sourceRegion": { + "description": "Output only. The region of the file associated with the Malware Sample.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. The review state of the WildfireVerdictChangeRequest.", + "enum": [ + "VERDICT_CHANGE_REQUEST_STATE_UNSPECIFIED", + "OPEN", + "CLOSED", + "PENDING" + ], + "enumDescriptions": [ + "Default value. Request does not have a state. This value is unused.", + "Request has been created and review has not started.", + "Malware Sample has been reviewed and the final verdict has been updated.", + "Malware Sample is currently being reviewed." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the WildfireVerdictChangeRequest was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "wildfireVerdictChangeRequestId": { + "description": "Output only. The ID of the WildfireVerdictChangeRequest. This is a unique identifier generated by the third party API. Format: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", + "readOnly": true, + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/src/apis/networksecurity/v1beta1.ts b/src/apis/networksecurity/v1beta1.ts index 4fd908a33d..37d55fd93e 100644 --- a/src/apis/networksecurity/v1beta1.ts +++ b/src/apis/networksecurity/v1beta1.ts @@ -781,6 +781,10 @@ export namespace networksecurity_v1beta1 { * Output only. Update time stamp */ updateTime?: string | null; + /** + * Optional. Settings for WildFire analysis. + */ + wildfireSettings?: Schema$FirewallEndpointWildfireSettings; } /** * Message describing Association object @@ -844,11 +848,61 @@ export namespace networksecurity_v1beta1 { * Settings for the endpoint. */ export interface Schema$FirewallEndpointEndpointSettings { + /** + * Optional. The content cloud region of the endpoint. + */ + contentCloudRegion?: string | null; + /** + * Optional. Whether to block HTTP partial responses for the endpoint. When this is true, resumption of blocked malicious HTTP file downloads will be blocked by the firewall. False provides maximum availability, true provides maximum security. + */ + httpPartialResponseBlocked?: boolean | null; /** * Optional. Immutable. Indicates whether Jumbo Frames are enabled. Default value is false. */ jumboFramesEnabled?: boolean | null; } + /** + * Settings for WildFire analysis. + */ + export interface Schema$FirewallEndpointWildfireSettings { + /** + * Optional. Indicates whether WildFire analysis is enabled. Default value is false. + */ + enabled?: boolean | null; + /** + * Optional. Settings for WildFire inline cloud analysis. + */ + wildfireInlineCloudAnalysisSettings?: Schema$FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings; + /** + * Optional. Duration in milliseconds on a file being held while the WildFire real time signature cloud performs a signature lookup. Value between 1 to 5000 is valid. Default value is 1000. + */ + wildfireRealtimeLookupDuration?: string | null; + /** + * Optional. Action to take on WildFire real time signature lookup timeout. Default value is ALLOW. + */ + wildfireRealtimeLookupTimeoutAction?: string | null; + /** + * Optional. The region where WildFire analysis will be performed. PAN supports regions: https://docs.paloaltonetworks.com/advanced-wildfire/administration/advanced-wildfire-overview/advanced-wildfire-deployments/advanced-wildfire-global-cloud + */ + wildfireRegion?: string | null; + } + /** + * Settings for WildFire inline cloud analysis. + */ + export interface Schema$FirewallEndpointWildfireSettingsWildfireInlineCloudAnalysisSettings { + /** + * Optional. Timeout in milliseconds on a file being held while WildFire inline cloud analysis is performed. Value between 1 to 240000 is valid. Default value is 30000. + */ + maxAnalysisDuration?: string | null; + /** + * Optional. Whether to disable WildFire submission log generation for files that timeout during WildFire inline cloud analysis. + */ + submissionTimeoutLoggingDisabled?: boolean | null; + /** + * Optional. Action to take when WildFire inline cloud analysis times out. Default value is ALLOW. + */ + timeoutAction?: string | null; + } /** * The GatewaySecurityPolicy resource contains a collection of GatewaySecurityPolicyRules and associated metadata. */ @@ -1598,7 +1652,7 @@ export namespace networksecurity_v1beta1 { */ nextPageToken?: string | null; /** - * Locations that could not be reached. + * Unordered list. Locations that could not be reached. See https://google.aip.dev/217 for more details. */ unreachable?: string[] | null; } @@ -1756,6 +1810,23 @@ export namespace networksecurity_v1beta1 { */ urlLists?: Schema$UrlList[]; } + /** + * Message for response to listing WildfireVerdictChangeRequests. + */ + export interface Schema$ListWildfireVerdictChangeRequestsResponse { + /** + * A token identifying a page of results the server should return. + */ + nextPageToken?: string | null; + /** + * Unordered list. Locations that could not be reached. + */ + unreachable?: string[] | null; + /** + * The list of WildfireVerdictChangeRequests + */ + wildfireVerdictChangeRequests?: Schema$WildfireVerdictChangeRequest[]; + } /** * A resource that represents a Google Cloud location. */ @@ -2317,6 +2388,10 @@ export namespace networksecurity_v1beta1 { * The URL filtering configuration for the SecurityProfile. */ urlFilteringProfile?: Schema$UrlFilteringProfile; + /** + * The WildFire Analysis configurations for SecurityProfile. + */ + wildfireAnalysisProfile?: Schema$WildfireAnalysisProfile; } /** * SecurityProfileGroup is a resource that defines the behavior for various ProfileTypes. @@ -2366,6 +2441,10 @@ export namespace networksecurity_v1beta1 { * Optional. Reference to a SecurityProfile with the UrlFiltering configuration. */ urlFilteringProfile?: string | null; + /** + * Optional. Reference to a SecurityProfile with the WildFire configuration. + */ + wildfireAnalysisProfile?: string | null; } /** * 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. ServerTlsPolicy in the form accepted by Application Load Balancers can be attached only to TargetHttpsProxy with an `EXTERNAL`, `EXTERNAL_MANAGED` or `INTERNAL_MANAGED` load balancing scheme. Traffic Director compatible ServerTlsPolicies can be attached to EndpointPolicy and TargetHttpsProxy with Traffic Director `INTERNAL_SELF_MANAGED` load balancing scheme. @@ -2590,6 +2669,238 @@ export namespace networksecurity_v1beta1 { */ grpcEndpoint?: Schema$GoogleCloudNetworksecurityV1beta1GrpcEndpoint; } + /** + * WildfireAnalysisProfile defines Palo Alto Networks WildFire behavior. + */ + export interface Schema$WildfireAnalysisProfile { + /** + * Optional. Configuration for WildFire inline cloud analysis. + */ + wildfireInlineCloudAnalysisRules?: Schema$WildfireInlineCloudAnalysisRule[]; + /** + * Optional. Configuration for overriding inline ML WildFire actions per protocol. + */ + wildfireInlineMlOverrides?: Schema$WildfireInlineMlOverride[]; + /** + * Optional. Settings for WildFire Inline ML analysis. + */ + wildfireInlineMlSetting?: Schema$WildfireInlineMlSettings; + /** + * Optional. Settings for WildFire Inline ML analysis. + */ + wildfireInlineMlSettings?: Schema$WildfireInlineMlSettings[]; + /** + * Optional. Configuration for overriding WildFire actions per protocol. + */ + wildfireOverrides?: Schema$WildfireOverride[]; + /** + * Optional. Whether to hold the transfer of a file while the WildFire real-time signature cloud performs a signature lookup. Default value is false. + */ + wildfireRealtimeLookup?: boolean | null; + /** + * Optional. Configurations for WildFire file submissions. + */ + wildfireSubmissionRules?: Schema$WildfireSubmissionRule[]; + /** + * Optional. Configuration for overriding WildFire threats action by threat_id match. + */ + wildfireThreatOverrides?: Schema$WildfireThreatOverride[]; + } + /** + * The list of file type configurations to be scanned by WildFire Inline Cloud Analysis. + */ + export interface Schema$WildfireInlineCloudAnalysisRule { + /** + * Required. Action to take when a threat is detected using WildFire Inline Cloud Analysis. The default Value is DENY. + */ + action?: string | null; + /** + * Submit a custom list of file types for WildFire analysis. + */ + customFileTypes?: Schema$WildfireInlineCloudAnalysisRuleCustomFileTypes; + /** + * Required. Direction for the file to be analyzed by WildFire Inline Cloud Analysis. + */ + direction?: string | null; + /** + * Required. File selection mode for WildFire inline cloud analysis. + */ + fileSelectionMode?: string | null; + } + /** + * The options to submit a custom list of file types for scan. + */ + export interface Schema$WildfireInlineCloudAnalysisRuleCustomFileTypes { + /** + * Required. File types to be submitted for WildFire inline cloud analysis. + */ + fileTypes?: string[] | null; + } + /** + * Defines the file to exclude from WildFire Inline ML analysis. + */ + export interface Schema$WildfireInlineMlFileException { + /** + * Optional. Name of the file to exclude from WildFire Inline ML analysis. + */ + filename?: string | null; + /** + * Required. Machine learning partial hash of the file to exclude from WildFire Inline ML analysis. + */ + partialHash?: string | null; + } + /** + * Defines what action to take for WildFire Inline ML threats per protocol. + */ + export interface Schema$WildfireInlineMlOverride { + /** + * Required. The action to take for WildFire Inline ML override. + */ + action?: string | null; + /** + * Required. Protocol to match for WildFire Inline ML override. + */ + protocol?: string | null; + } + /** + * Defines the settings for WildFire Inline ML analysis. + */ + export interface Schema$WildfireInlineMlSettings { + /** + * Optional. List of files to exclude from WildFire Inline ML analysis. + */ + fileExceptions?: Schema$WildfireInlineMlFileException[]; + /** + * Optional. List of Inline ML configs to enable in WildFire Inline ML analysis. + */ + inlineMlConfigs?: Schema$WildfireInlineMlSettingsInlineMlConfig[]; + } + /** + * Configuration for WildFire Inline ML analysis per file type. + */ + export interface Schema$WildfireInlineMlSettingsInlineMlConfig { + /** + * Required. Action to take when a threat is detected using Inline ML. + */ + action?: string | null; + /** + * Required. File type to configure Inline ML for. + */ + fileType?: string | null; + } + /** + * Defines what action to take for WildFire threats per protocol. + */ + export interface Schema$WildfireOverride { + /** + * Required. Threat action override. For some threat types, only a subset of actions applies. + */ + action?: string | null; + /** + * Required. Protocol to match. + */ + protocol?: string | null; + } + /** + * Defines the file types to be submitted for WildFire analysis and the direction of the traffic. + */ + export interface Schema$WildfireSubmissionRule { + /** + * Submit a custom list of file types for WildFire analysis. + */ + customFileTypes?: Schema$WildfireSubmissionRuleCustomFileTypes; + /** + * Required. Direction for the files to be analyzed by WildFire. + */ + direction?: string | null; + /** + * Required. File selection mode for WildFire analysis. + */ + fileSelectionMode?: string | null; + } + /** + * The options to submit a custom list of file types for scan. + */ + export interface Schema$WildfireSubmissionRuleCustomFileTypes { + /** + * Required. File types to be submitted for WildFire analysis. + */ + fileTypes?: string[] | null; + } + /** + * Defines what action to take for a specific WildFire threat_id match. + */ + export interface Schema$WildfireThreatOverride { + /** + * Required. Threat action override. + */ + action?: string | null; + /** + * Required. Threat ID to match. + */ + threatId?: string | null; + } + /** + * Message for a WildfireVerdictChangeRequest. + */ + export interface Schema$WildfireVerdictChangeRequest { + /** + * Required. The justification for the verdict change request. Max length 2048 characters. + */ + comment?: string | null; + /** + * Output only. The timestamp when the WildfireVerdictChangeRequest was created. + */ + createTime?: string | null; + /** + * Output only. The file name of the Malware Sample. + */ + fileName?: string | null; + /** + * Output only. The file type of the Malware Sample. + */ + fileType?: string | null; + /** + * Output only. The final verdict of the Malware Sample. + */ + finalVerdict?: string | null; + /** + * Output only. Identifier. The relative name of the WildfireVerdictChangeRequest. Output only. This is a unique identifier generated by the third party API. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id\} Where {wildfire_verdict_change_request_id\} is the ID in the format: ^[0-9a-fA-F]{8\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{12\}$ + */ + name?: string | null; + /** + * Required. The suggested verdict to apply to the Malware Sample. + */ + newVerdict?: string | null; + /** + * Output only. The original verdict of the Malware Sample. + */ + oldVerdict?: string | null; + /** + * Output only. The timestamp when the WildfireVerdictChangeRequest was resolved. + */ + resolutionTime?: string | null; + /** + * Required. The SHA256 hash of the Malware Sample to change the verdict of. + */ + sha256?: string | null; + /** + * Output only. The region of the file associated with the Malware Sample. + */ + sourceRegion?: string | null; + /** + * Output only. The review state of the WildfireVerdictChangeRequest. + */ + state?: string | null; + /** + * Output only. The timestamp when the WildfireVerdictChangeRequest was last updated. + */ + updateTime?: string | null; + /** + * Output only. The ID of the WildfireVerdictChangeRequest. This is a unique identifier generated by the third party API. Format: ^[0-9a-fA-F]{8\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{12\}$ + */ + wildfireVerdictChangeRequestId?: string | null; + } export class Resource$Organizations { context: APIRequestContext; @@ -4629,8 +4940,13 @@ export namespace networksecurity_v1beta1 { export class Resource$Organizations$Locations$Firewallendpoints { context: APIRequestContext; + wildfireVerdictChangeRequests: Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests; constructor(context: APIRequestContext) { this.context = context; + this.wildfireVerdictChangeRequests = + new Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests( + this.context + ); } /** @@ -4688,7 +5004,8 @@ export namespace networksecurity_v1beta1 { * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "wildfireSettings": {} * // } * }, * }); @@ -4995,7 +5312,8 @@ export namespace networksecurity_v1beta1 { * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "wildfireSettings": {} * // } * } * @@ -5304,7 +5622,8 @@ export namespace networksecurity_v1beta1 { * // "satisfiesPzi": false, * // "satisfiesPzs": false, * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "wildfireSettings": {} * // } * }, * }); @@ -5492,14 +5811,14 @@ export namespace networksecurity_v1beta1 { requestBody?: Schema$FirewallEndpoint; } - export class Resource$Organizations$Locations$Operations { + export class Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests { 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`. + * Create WildfireVerdictChangeRequest in a given Firewall Endpoint in an organization and location. * @example * ```js * // Before running the sample: @@ -5528,20 +5847,54 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.organizations.locations.operations.cancel({ - * // The name of the operation resource to be cancelled. - * name: 'organizations/my-organization/locations/my-location/operations/my-operation', + * const res = + * await networksecurity.organizations.locations.firewallEndpoints.wildfireVerdictChangeRequests.create( + * { + * // Required. Parent value for CreateWildfireVerdictChangeRequestRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} + * parent: + * 'organizations/my-organization/locations/my-location/firewallEndpoints/my-firewallEndpoint', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // {} - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "comment": "my_comment", + * // "createTime": "my_createTime", + * // "fileName": "my_fileName", + * // "fileType": "my_fileType", + * // "finalVerdict": "my_finalVerdict", + * // "name": "my_name", + * // "newVerdict": "my_newVerdict", + * // "oldVerdict": "my_oldVerdict", + * // "resolutionTime": "my_resolutionTime", + * // "sha256": "my_sha256", + * // "sourceRegion": "my_sourceRegion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireVerdictChangeRequestId": "my_wildfireVerdictChangeRequestId" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "comment": "my_comment", + * // "createTime": "my_createTime", + * // "fileName": "my_fileName", + * // "fileType": "my_fileType", + * // "finalVerdict": "my_finalVerdict", + * // "name": "my_name", + * // "newVerdict": "my_newVerdict", + * // "oldVerdict": "my_oldVerdict", + * // "resolutionTime": "my_resolutionTime", + * // "sha256": "my_sha256", + * // "sourceRegion": "my_sourceRegion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireVerdictChangeRequestId": "my_wildfireVerdictChangeRequestId" + * // } * } * * main().catch(e => { @@ -5556,54 +5909,58 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Operations$Cancel, + create( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, options: StreamMethodOptions ): Promise>; - cancel( - params?: Params$Resource$Organizations$Locations$Operations$Cancel, + create( + params?: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, options?: MethodOptions - ): Promise>; - cancel( - params: Params$Resource$Organizations$Locations$Operations$Cancel, + ): Promise>; + create( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Organizations$Locations$Operations$Cancel, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cancel( - params: Params$Resource$Organizations$Locations$Operations$Cancel, - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, + callback: BodyResponseCallback ): void; - cancel(callback: BodyResponseCallback): void; - cancel( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Operations$Cancel - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Operations$Cancel; + {}) as Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Operations$Cancel; + {} as Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create; options = {}; } @@ -5617,32 +5974,33 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}:cancel').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: ( + rootUrl + '/v1beta1/{+parent}/wildfireVerdictChangeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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`. + * Get WildfireVerdictChangeRequest in a given Firewall Endpoint in an organization and location. * @example * ```js * // Before running the sample: @@ -5671,14 +6029,32 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.organizations.locations.operations.delete({ - * // The name of the operation resource to be deleted. - * name: 'organizations/my-organization/locations/my-location/operations/my-operation', - * }); + * const res = + * await networksecurity.organizations.locations.firewallEndpoints.wildfireVerdictChangeRequests.get( + * { + * // Required. Name of the WildfireVerdictChangeRequest to retrieve. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id\} Where {wildfire_verdict_change_request_id\} is the ID in the format: ^[0-9a-fA-F]{8\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{12\}$ + * name: 'organizations/my-organization/locations/my-location/firewallEndpoints/my-firewallEndpoint/wildfireVerdictChangeRequests/my-wildfireVerdictChangeRequest', + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "comment": "my_comment", + * // "createTime": "my_createTime", + * // "fileName": "my_fileName", + * // "fileType": "my_fileType", + * // "finalVerdict": "my_finalVerdict", + * // "name": "my_name", + * // "newVerdict": "my_newVerdict", + * // "oldVerdict": "my_oldVerdict", + * // "resolutionTime": "my_resolutionTime", + * // "sha256": "my_sha256", + * // "sourceRegion": "my_sourceRegion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireVerdictChangeRequestId": "my_wildfireVerdictChangeRequestId" + * // } * } * * main().catch(e => { @@ -5693,54 +6069,58 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Operations$Delete, + get( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Organizations$Locations$Operations$Delete, + get( + params?: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Organizations$Locations$Operations$Delete, + ): Promise>; + get( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizations$Locations$Operations$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizations$Locations$Operations$Delete, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Operations$Delete - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Operations$Delete; + {}) as Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Operations$Delete; + {} as Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get; options = {}; } @@ -5755,7 +6135,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -5766,17 +6146,19 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Lists WildfireVerdictChangeRequests in a given Firewall Endpoint in an organization and location. * @example * ```js * // Before running the sample: @@ -5805,19 +6187,27 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.organizations.locations.operations.get({ - * // The name of the operation resource. - * name: 'organizations/my-organization/locations/my-location/operations/my-operation', - * }); + * const res = + * await networksecurity.organizations.locations.firewallEndpoints.wildfireVerdictChangeRequests.list( + * { + * // Optional. Filter expression to filter the results. See AIP-160 for filtering syntax. Supported fields are: - `sha256` (string, equality only, e.g. `sha256 = "..."`) - `state` (enum, equality only, e.g. `state = "ACTIVE"`) - `create_time` (timestamp, comparisons, e.g. `create_time \> "2026-01-01T00:00:00Z"`) + * filter: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListWildfireVerdictChangeRequestsRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} + * parent: + * 'organizations/my-organization/locations/my-location/firewallEndpoints/my-firewallEndpoint', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "wildfireVerdictChangeRequests": [] * // } * } * @@ -5833,53 +6223,62 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Operations$Get, + list( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Organizations$Locations$Operations$Get, + list( + params?: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizations$Locations$Operations$Get, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Locations$Operations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Locations$Operations$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Operations$Get - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Operations$Get; + {}) as Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Locations$Operations$Get; + params = + {} as Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List; options = {}; } @@ -5893,29 +6292,76 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: ( + rootUrl + '/v1beta1/{+parent}/wildfireVerdictChangeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + export interface Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create extends StandardParameters { /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. + * Required. Parent value for CreateWildfireVerdictChangeRequestRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$WildfireVerdictChangeRequest; + } + export interface Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get extends StandardParameters { + /** + * Required. Name of the WildfireVerdictChangeRequest to retrieve. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id\} Where {wildfire_verdict_change_request_id\} is the ID in the format: ^[0-9a-fA-F]{8\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{12\}$ + */ + name?: string; + } + export interface Params$Resource$Organizations$Locations$Firewallendpoints$Wildfireverdictchangerequests$List extends StandardParameters { + /** + * Optional. Filter expression to filter the results. See AIP-160 for filtering syntax. Supported fields are: - `sha256` (string, equality only, e.g. `sha256 = "..."`) - `state` (enum, equality only, e.g. `state = "ACTIVE"`) - `create_time` (timestamp, comparisons, e.g. `create_time \> "2026-01-01T00:00:00Z"`) + */ + filter?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListWildfireVerdictChangeRequestsRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} + */ + parent?: string; + } + + export class Resource$Organizations$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: @@ -5944,26 +6390,20 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.organizations.locations.operations.list({ - * // The standard list filter. - * filter: 'placeholder-value', - * // The name of the operation's parent resource. - * name: 'organizations/my-organization/locations/my-location', - * // The standard list page size. - * pageSize: 'placeholder-value', - * // The standard list page token. - * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - * returnPartialSuccess: 'placeholder-value', + * const res = await networksecurity.organizations.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'organizations/my-organization/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, * }); * console.log(res.data); * * // Example response - * // { - * // "nextPageToken": "my_nextPageToken", - * // "operations": [], - * // "unreachable": [] - * // } + * // {} * } * * main().catch(e => { @@ -5978,55 +6418,54 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Operations$List, + cancel( + params: Params$Resource$Organizations$Locations$Operations$Cancel, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Organizations$Locations$Operations$List, + cancel( + params?: Params$Resource$Organizations$Locations$Operations$Cancel, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Organizations$Locations$Operations$List, + ): Promise>; + cancel( + params: Params$Resource$Organizations$Locations$Operations$Cancel, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Organizations$Locations$Operations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Organizations$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Organizations$Locations$Operations$List, - callback: BodyResponseCallback + cancel( + params: Params$Resource$Organizations$Locations$Operations$Cancel, + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; - list( + cancel(callback: BodyResponseCallback): void; + cancel( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Operations$List - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Operations$Cancel + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Operations$List; + {}) as Params$Resource$Organizations$Locations$Operations$Cancel; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Organizations$Locations$Operations$List; + params = + {} as Params$Resource$Organizations$Locations$Operations$Cancel; options = {}; } @@ -6040,11 +6479,11 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}/operations').replace( + url: (rootUrl + '/v1beta1/{+name}:cancel').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -6055,70 +6494,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Organizations$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$Organizations$Locations$Operations$Delete extends StandardParameters { - /** - * The name of the operation resource to be deleted. - */ - name?: string; - } - export interface Params$Resource$Organizations$Locations$Operations$Get extends StandardParameters { - /** - * The name of the operation resource. - */ - name?: string; - } - export interface Params$Resource$Organizations$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; - /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. - */ - returnPartialSuccess?: boolean; - } - - export class Resource$Organizations$Locations$Securityprofilegroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new SecurityProfileGroup in a given organization and location. + * 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: @@ -6147,41 +6533,14 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.organizations.locations.securityProfileGroups.create({ - * // Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. - * parent: 'organizations/my-organization/locations/my-location', - * // Required. Short name of the SecurityProfileGroup 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. "security_profile_group1". - * securityProfileGroupId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "customInterceptProfile": "my_customInterceptProfile", - * // "customMirroringProfile": "my_customMirroringProfile", - * // "dataPathId": "my_dataPathId", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "threatPreventionProfile": "my_threatPreventionProfile", - * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": "my_urlFilteringProfile" - * // } - * }, - * }); + * const res = await networksecurity.organizations.locations.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'organizations/my-organization/locations/my-location/operations/my-operation', + * }); * console.log(res.data); * * // Example response - * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} - * // } + * // {} * } * * main().catch(e => { @@ -6196,54 +6555,54 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofilegroups$Create, + delete( + params: Params$Resource$Organizations$Locations$Operations$Delete, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, + delete( + params?: Params$Resource$Organizations$Locations$Operations$Delete, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, + ): Promise>; + delete( + params: Params$Resource$Organizations$Locations$Operations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizations$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, - callback: BodyResponseCallback + delete( + params: Params$Resource$Organizations$Locations$Operations$Delete, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofilegroups$Create - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Operations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Create; + {}) as Params$Resource$Organizations$Locations$Operations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Create; + {} as Params$Resource$Organizations$Locations$Operations$Delete; options = {}; } @@ -6257,32 +6616,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/securityProfileGroups').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single SecurityProfileGroup. + * 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: @@ -6311,13 +6667,10 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.organizations.locations.securityProfileGroups.delete({ - * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. - * etag: 'placeholder-value', - * // Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. - * name: 'organizations/my-organization/locations/my-location/securityProfileGroups/my-securityProfileGroup', - * }); + * const res = await networksecurity.organizations.locations.operations.get({ + * // The name of the operation resource. + * name: 'organizations/my-organization/locations/my-location/operations/my-operation', + * }); * console.log(res.data); * * // Example response @@ -6342,32 +6695,32 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofilegroups$Delete, + get( + params: Params$Resource$Organizations$Locations$Operations$Get, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, + get( + params?: Params$Resource$Organizations$Locations$Operations$Get, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, + get( + params: Params$Resource$Organizations$Locations$Operations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, + get( + params: Params$Resource$Organizations$Locations$Operations$Get, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, + get( + params: Params$Resource$Organizations$Locations$Operations$Get, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofilegroups$Delete + | Params$Resource$Organizations$Locations$Operations$Get | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -6383,13 +6736,12 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Delete; + {}) as Params$Resource$Organizations$Locations$Operations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Delete; + params = {} as Params$Resource$Organizations$Locations$Operations$Get; options = {}; } @@ -6404,7 +6756,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'GET', apiVersion: '', }, options @@ -6425,7 +6777,7 @@ export namespace networksecurity_v1beta1 { } /** - * Gets details of a single SecurityProfileGroup. + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -6454,26 +6806,25 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.organizations.locations.securityProfileGroups.get({ - * // Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. - * name: 'organizations/my-organization/locations/my-location/securityProfileGroups/my-securityProfileGroup', - * }); + * const res = await networksecurity.organizations.locations.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'organizations/my-organization/locations/my-location', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "customInterceptProfile": "my_customInterceptProfile", - * // "customMirroringProfile": "my_customMirroringProfile", - * // "dataPathId": "my_dataPathId", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "threatPreventionProfile": "my_threatPreventionProfile", - * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": "my_urlFilteringProfile" + * // "nextPageToken": "my_nextPageToken", + * // "operations": [], + * // "unreachable": [] * // } * } * @@ -6489,56 +6840,55 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofilegroups$Get, + list( + params: Params$Resource$Organizations$Locations$Operations$List, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, + list( + params?: Params$Resource$Organizations$Locations$Operations$List, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, + ): Promise>; + list( + params: Params$Resource$Organizations$Locations$Operations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, + list( + params: Params$Resource$Organizations$Locations$Operations$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Locations$Operations$List, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofilegroups$Get - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Operations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Get; + {}) as Params$Resource$Organizations$Locations$Operations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Get; + params = {} as Params$Resource$Organizations$Locations$Operations$List; options = {}; } @@ -6552,7 +6902,10 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + url: (rootUrl + '/v1beta1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), method: 'GET', apiVersion: '', }, @@ -6564,17 +6917,70 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizations$Locations$Operations$Cancel extends StandardParameters { /** - * Lists SecurityProfileGroups in a given organization and location. + * The name of the operation resource to be cancelled. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelOperationRequest; + } + export interface Params$Resource$Organizations$Locations$Operations$Delete extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Organizations$Locations$Operations$Get extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Organizations$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; + /** + * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + */ + returnPartialSuccess?: boolean; + } + + export class Resource$Organizations$Locations$Securityprofilegroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new SecurityProfileGroup in a given organization and location. * @example * ```js * // Before running the sample: @@ -6604,20 +7010,40 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfileGroups.list({ - * // Optional. Maximum number of SecurityProfileGroups to return per call. - * pageSize: 'placeholder-value', - * // Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. - * pageToken: 'placeholder-value', - * // Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * await networksecurity.organizations.locations.securityProfileGroups.create({ + * // Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. * parent: 'organizations/my-organization/locations/my-location', + * // Required. Short name of the SecurityProfileGroup 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. "security_profile_group1". + * securityProfileGroupId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile", + * // "wildfireAnalysisProfile": "my_wildfireAnalysisProfile" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "securityProfileGroups": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -6633,62 +7059,54 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofilegroups$List, + create( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Organizations$Locations$Securityprofilegroups$List, + create( + params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, + ): Promise>; + create( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofilegroups$List - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofilegroups$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$List; + {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofilegroups$List; + {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Create; options = {}; } @@ -6706,7 +7124,7 @@ export namespace networksecurity_v1beta1 { /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -6717,19 +7135,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single SecurityProfileGroup. + * Deletes a single SecurityProfileGroup. * @example * ```js * // Before running the sample: @@ -6759,29 +7175,11 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfileGroups.patch({ - * // Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * await networksecurity.organizations.locations.securityProfileGroups.delete({ + * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + * etag: 'placeholder-value', + * // Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. * name: 'organizations/my-organization/locations/my-location/securityProfileGroups/my-securityProfileGroup', - * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "customInterceptProfile": "my_customInterceptProfile", - * // "customMirroringProfile": "my_customMirroringProfile", - * // "dataPathId": "my_dataPathId", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "threatPreventionProfile": "my_threatPreventionProfile", - * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": "my_urlFilteringProfile" - * // } - * }, * }); * console.log(res.data); * @@ -6807,32 +7205,32 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofilegroups$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, + delete( + params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofilegroups$Patch + | Params$Resource$Organizations$Locations$Securityprofilegroups$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -6848,13 +7246,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Patch; + {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Patch; + {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Delete; options = {}; } @@ -6869,7 +7267,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -6888,77 +7286,9 @@ export namespace networksecurity_v1beta1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Create extends StandardParameters { - /** - * Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. - */ - parent?: string; - /** - * Required. Short name of the SecurityProfileGroup 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. "security_profile_group1". - */ - securityProfileGroupId?: string; /** - * Request body metadata - */ - requestBody?: Schema$SecurityProfileGroup; - } - export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Delete extends StandardParameters { - /** - * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. - */ - etag?: string; - /** - * Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. - */ - name?: string; - } - export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Get extends StandardParameters { - /** - * Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. - */ - name?: string; - } - export interface Params$Resource$Organizations$Locations$Securityprofilegroups$List extends StandardParameters { - /** - * Optional. Maximum number of SecurityProfileGroups to return per call. - */ - pageSize?: number; - /** - * Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. - */ - pageToken?: string; - /** - * Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. - */ - parent?: string; - } - export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Patch extends StandardParameters { - /** - * Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. - */ - name?: string; - /** - * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityProfileGroup; - } - - export class Resource$Organizations$Locations$Securityprofiles { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } - - /** - * Creates a new SecurityProfile in a given organization and location. + * Gets details of a single SecurityProfileGroup. * @example * ```js * // Before running the sample: @@ -6988,39 +7318,26 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfiles.create({ - * // Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. - * parent: 'organizations/my-organization/locations/my-location', - * // Required. Short name of the SecurityProfile 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. "security_profile1". - * securityProfileId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "customInterceptProfile": {}, - * // "customMirroringProfile": {}, - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "threatPreventionProfile": {}, - * // "type": "my_type", - * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": {} - * // } - * }, + * await networksecurity.organizations.locations.securityProfileGroups.get({ + * // Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'organizations/my-organization/locations/my-location/securityProfileGroups/my-securityProfileGroup', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile", + * // "wildfireAnalysisProfile": "my_wildfireAnalysisProfile" * // } * } * @@ -7036,54 +7353,56 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofiles$Create, + get( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Organizations$Locations$Securityprofiles$Create, + get( + params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Organizations$Locations$Securityprofiles$Create, + ): Promise>; + get( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Organizations$Locations$Securityprofiles$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Organizations$Locations$Securityprofiles$Create, - callback: BodyResponseCallback + get( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Get, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofiles$Create - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofilegroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofiles$Create; + {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofiles$Create; + {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Get; options = {}; } @@ -7097,32 +7416,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/securityProfiles').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single SecurityProfile. + * Lists SecurityProfileGroups in a given organization and location. * @example * ```js * // Before running the sample: @@ -7152,21 +7468,20 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfiles.delete({ - * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. - * etag: 'placeholder-value', - * // Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. - * name: 'organizations/my-organization/locations/my-location/securityProfiles/my-securityProfile', + * await networksecurity.organizations.locations.securityProfileGroups.list({ + * // Optional. Maximum number of SecurityProfileGroups to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * parent: 'organizations/my-organization/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "securityProfileGroups": [] * // } * } * @@ -7182,54 +7497,62 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofiles$Delete, + list( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Organizations$Locations$Securityprofiles$Delete, + list( + params?: Params$Resource$Organizations$Locations$Securityprofilegroups$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofiles$Delete - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofilegroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofiles$Delete; + {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofiles$Delete; + {} as Params$Resource$Organizations$Locations$Securityprofilegroups$List; options = {}; } @@ -7243,29 +7566,34 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1beta1/{+parent}/securityProfileGroups').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets details of a single SecurityProfile. + * Updates the parameters of a single SecurityProfileGroup. * @example * ```js * // Before running the sample: @@ -7295,25 +7623,40 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfiles.get({ - * // Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. - * name: 'organizations/my-organization/locations/my-location/securityProfiles/my-securityProfile', - * }); + * await networksecurity.organizations.locations.securityProfileGroups.patch({ + * // Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + * name: 'organizations/my-organization/locations/my-location/securityProfileGroups/my-securityProfileGroup', + * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": "my_customInterceptProfile", + * // "customMirroringProfile": "my_customMirroringProfile", + * // "dataPathId": "my_dataPathId", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": "my_threatPreventionProfile", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": "my_urlFilteringProfile", + * // "wildfireAnalysisProfile": "my_wildfireAnalysisProfile" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "customInterceptProfile": {}, - * // "customMirroringProfile": {}, - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "threatPreventionProfile": {}, - * // "type": "my_type", - * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": {} + * // "response": {} * // } * } * @@ -7329,54 +7672,54 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofiles$Get, + patch( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Organizations$Locations$Securityprofiles$Get, + patch( + params?: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Organizations$Locations$Securityprofiles$Get, + ): Promise>; + patch( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Locations$Securityprofiles$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Organizations$Locations$Securityprofiles$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Organizations$Locations$Securityprofilegroups$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofiles$Get - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofilegroups$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofiles$Get; + {}) as Params$Resource$Organizations$Locations$Securityprofilegroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofiles$Get; + {} as Params$Resource$Organizations$Locations$Securityprofilegroups$Patch; options = {}; } @@ -7391,7 +7734,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -7402,17 +7745,85 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Create extends StandardParameters { /** - * Lists SecurityProfiles in a given organization and location. + * Required. The parent resource of the SecurityProfileGroup. Must be in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the SecurityProfileGroup 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. "security_profile_group1". + */ + securityProfileGroupId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfileGroup; + } + export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Delete extends StandardParameters { + /** + * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + */ + etag?: string; + /** + * Required. A name of the SecurityProfileGroup to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + } + export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Get extends StandardParameters { + /** + * Required. A name of the SecurityProfileGroup to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + } + export interface Params$Resource$Organizations$Locations$Securityprofilegroups$List extends StandardParameters { + /** + * Optional. Maximum number of SecurityProfileGroups to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListSecurityProfileGroupsResponse` Indicates that this is a continuation of a prior `ListSecurityProfileGroups` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project or organization and location from which the SecurityProfileGroups should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Organizations$Locations$Securityprofilegroups$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the SecurityProfileGroup resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfileGroups/{security_profile_group\}`. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfileGroup 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. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfileGroup; + } + + export class Resource$Organizations$Locations$Securityprofiles { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new SecurityProfile in a given organization and location. * @example * ```js * // Before running the sample: @@ -7442,20 +7853,40 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfiles.list({ - * // Optional. Maximum number of SecurityProfiles to return per call. - * pageSize: 'placeholder-value', - * // Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. - * pageToken: 'placeholder-value', - * // Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * await networksecurity.organizations.locations.securityProfiles.create({ + * // Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. * parent: 'organizations/my-organization/locations/my-location', + * // Required. Short name of the SecurityProfile 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. "security_profile1". + * securityProfileId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {}, + * // "wildfireAnalysisProfile": {} + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "nextPageToken": "my_nextPageToken", - * // "securityProfiles": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -7471,58 +7902,54 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofiles$List, + create( + params: Params$Resource$Organizations$Locations$Securityprofiles$Create, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Organizations$Locations$Securityprofiles$List, + create( + params?: Params$Resource$Organizations$Locations$Securityprofiles$Create, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Organizations$Locations$Securityprofiles$List, + ): Promise>; + create( + params: Params$Resource$Organizations$Locations$Securityprofiles$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Organizations$Locations$Securityprofiles$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Organizations$Locations$Securityprofiles$List, - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Locations$Securityprofiles$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + create( + params: Params$Resource$Organizations$Locations$Securityprofiles$Create, + callback: BodyResponseCallback ): void; - list( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofiles$List - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofiles$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofiles$List; + {}) as Params$Resource$Organizations$Locations$Securityprofiles$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofiles$List; + {} as Params$Resource$Organizations$Locations$Securityprofiles$Create; options = {}; } @@ -7540,7 +7967,7 @@ export namespace networksecurity_v1beta1 { /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -7551,19 +7978,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single SecurityProfile. + * Deletes a single SecurityProfile. * @example * ```js * // Before running the sample: @@ -7593,29 +8018,11 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.organizations.locations.securityProfiles.patch({ - * // Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. - * name: 'organizations/my-organization/locations/my-location/securityProfiles/my-securityProfile', - * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "customInterceptProfile": {}, - * // "customMirroringProfile": {}, - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "threatPreventionProfile": {}, - * // "type": "my_type", - * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": {} - * // } - * }, + * await networksecurity.organizations.locations.securityProfiles.delete({ + * // Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + * etag: 'placeholder-value', + * // Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + * name: 'organizations/my-organization/locations/my-location/securityProfiles/my-securityProfile', * }); * console.log(res.data); * @@ -7641,32 +8048,32 @@ export namespace networksecurity_v1beta1 { * @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$Organizations$Locations$Securityprofiles$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Organizations$Locations$Securityprofiles$Patch, + delete( + params?: Params$Resource$Organizations$Locations$Securityprofiles$Delete, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, + delete( + params: Params$Resource$Organizations$Locations$Securityprofiles$Delete, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Organizations$Locations$Securityprofiles$Patch + | Params$Resource$Organizations$Locations$Securityprofiles$Delete | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -7682,13 +8089,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Organizations$Locations$Securityprofiles$Patch; + {}) as Params$Resource$Organizations$Locations$Securityprofiles$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Organizations$Locations$Securityprofiles$Patch; + {} as Params$Resource$Organizations$Locations$Securityprofiles$Delete; options = {}; } @@ -7703,7 +8110,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'DELETE', apiVersion: '', }, options @@ -7722,172 +8129,9 @@ export namespace networksecurity_v1beta1 { return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Organizations$Locations$Securityprofiles$Create extends StandardParameters { - /** - * Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. - */ - parent?: string; - /** - * Required. Short name of the SecurityProfile 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. "security_profile1". - */ - securityProfileId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityProfile; - } - export interface Params$Resource$Organizations$Locations$Securityprofiles$Delete extends StandardParameters { - /** - * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. - */ - etag?: string; - /** - * Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. - */ - name?: string; - } - export interface Params$Resource$Organizations$Locations$Securityprofiles$Get extends StandardParameters { - /** - * Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. - */ - name?: string; - } - export interface Params$Resource$Organizations$Locations$Securityprofiles$List extends StandardParameters { - /** - * Optional. Maximum number of SecurityProfiles to return per call. - */ - pageSize?: number; - /** - * Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. - */ - pageToken?: string; - /** - * Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. - */ - parent?: string; - } - export interface Params$Resource$Organizations$Locations$Securityprofiles$Patch extends StandardParameters { - /** - * Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. - */ - name?: string; - /** - * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$SecurityProfile; - } - - 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; - addressGroups: Resource$Projects$Locations$Addressgroups; - authorizationPolicies: Resource$Projects$Locations$Authorizationpolicies; - authzPolicies: Resource$Projects$Locations$Authzpolicies; - backendAuthenticationConfigs: Resource$Projects$Locations$Backendauthenticationconfigs; - clientTlsPolicies: Resource$Projects$Locations$Clienttlspolicies; - dnsThreatDetectors: Resource$Projects$Locations$Dnsthreatdetectors; - firewallEndpointAssociations: Resource$Projects$Locations$Firewallendpointassociations; - firewallEndpoints: Resource$Projects$Locations$Firewallendpoints; - gatewaySecurityPolicies: Resource$Projects$Locations$Gatewaysecuritypolicies; - interceptDeploymentGroups: Resource$Projects$Locations$Interceptdeploymentgroups; - interceptDeployments: Resource$Projects$Locations$Interceptdeployments; - interceptEndpointGroupAssociations: Resource$Projects$Locations$Interceptendpointgroupassociations; - interceptEndpointGroups: Resource$Projects$Locations$Interceptendpointgroups; - mirroringDeploymentGroups: Resource$Projects$Locations$Mirroringdeploymentgroups; - mirroringDeployments: Resource$Projects$Locations$Mirroringdeployments; - mirroringEndpointGroupAssociations: Resource$Projects$Locations$Mirroringendpointgroupassociations; - mirroringEndpointGroups: Resource$Projects$Locations$Mirroringendpointgroups; - operations: Resource$Projects$Locations$Operations; - sacAttachments: Resource$Projects$Locations$Sacattachments; - sacRealms: Resource$Projects$Locations$Sacrealms; - securityProfileGroups: Resource$Projects$Locations$Securityprofilegroups; - securityProfiles: Resource$Projects$Locations$Securityprofiles; - serverTlsPolicies: Resource$Projects$Locations$Servertlspolicies; - tlsInspectionPolicies: Resource$Projects$Locations$Tlsinspectionpolicies; - urlLists: Resource$Projects$Locations$Urllists; - constructor(context: APIRequestContext) { - this.context = context; - this.addressGroups = new Resource$Projects$Locations$Addressgroups( - this.context - ); - this.authorizationPolicies = - new Resource$Projects$Locations$Authorizationpolicies(this.context); - this.authzPolicies = new Resource$Projects$Locations$Authzpolicies( - this.context - ); - this.backendAuthenticationConfigs = - new Resource$Projects$Locations$Backendauthenticationconfigs( - this.context - ); - this.clientTlsPolicies = - new Resource$Projects$Locations$Clienttlspolicies(this.context); - this.dnsThreatDetectors = - new Resource$Projects$Locations$Dnsthreatdetectors(this.context); - this.firewallEndpointAssociations = - new Resource$Projects$Locations$Firewallendpointassociations( - this.context - ); - this.firewallEndpoints = - new Resource$Projects$Locations$Firewallendpoints(this.context); - this.gatewaySecurityPolicies = - new Resource$Projects$Locations$Gatewaysecuritypolicies(this.context); - this.interceptDeploymentGroups = - new Resource$Projects$Locations$Interceptdeploymentgroups(this.context); - this.interceptDeployments = - new Resource$Projects$Locations$Interceptdeployments(this.context); - this.interceptEndpointGroupAssociations = - new Resource$Projects$Locations$Interceptendpointgroupassociations( - this.context - ); - this.interceptEndpointGroups = - new Resource$Projects$Locations$Interceptendpointgroups(this.context); - this.mirroringDeploymentGroups = - new Resource$Projects$Locations$Mirroringdeploymentgroups(this.context); - this.mirroringDeployments = - new Resource$Projects$Locations$Mirroringdeployments(this.context); - this.mirroringEndpointGroupAssociations = - new Resource$Projects$Locations$Mirroringendpointgroupassociations( - this.context - ); - this.mirroringEndpointGroups = - new Resource$Projects$Locations$Mirroringendpointgroups(this.context); - this.operations = new Resource$Projects$Locations$Operations( - this.context - ); - this.sacAttachments = new Resource$Projects$Locations$Sacattachments( - this.context - ); - this.sacRealms = new Resource$Projects$Locations$Sacrealms(this.context); - this.securityProfileGroups = - new Resource$Projects$Locations$Securityprofilegroups(this.context); - this.securityProfiles = new Resource$Projects$Locations$Securityprofiles( - this.context - ); - this.serverTlsPolicies = - new Resource$Projects$Locations$Servertlspolicies(this.context); - this.tlsInspectionPolicies = - new Resource$Projects$Locations$Tlsinspectionpolicies(this.context); - this.urlLists = new Resource$Projects$Locations$Urllists(this.context); - } /** - * Gets information about a location. + * Gets details of a single SecurityProfile. * @example * ```js * // Before running the sample: @@ -7916,19 +8160,27 @@ export namespace networksecurity_v1beta1 { * 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', - * }); + * const res = + * await networksecurity.organizations.locations.securityProfiles.get({ + * // Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + * name: 'organizations/my-organization/locations/my-location/securityProfiles/my-securityProfile', + * }); * console.log(res.data); * * // Example response * // { - * // "displayName": "my_displayName", + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", * // "labels": {}, - * // "locationId": "my_locationId", - * // "metadata": {}, - * // "name": "my_name" + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {}, + * // "wildfireAnalysisProfile": {} * // } * } * @@ -7945,52 +8197,53 @@ export namespace networksecurity_v1beta1 { * @returns A promise if used with async/await, or void if used with a callback. */ get( - params: Params$Resource$Projects$Locations$Get, + params: Params$Resource$Organizations$Locations$Securityprofiles$Get, options: StreamMethodOptions ): Promise>; get( - params?: Params$Resource$Projects$Locations$Get, + params?: Params$Resource$Organizations$Locations$Securityprofiles$Get, options?: MethodOptions - ): Promise>; + ): Promise>; get( - params: Params$Resource$Projects$Locations$Get, + params: Params$Resource$Organizations$Locations$Securityprofiles$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + params: Params$Resource$Organizations$Locations$Securityprofiles$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; get( - params: Params$Resource$Projects$Locations$Get, - callback: BodyResponseCallback + params: Params$Resource$Organizations$Locations$Securityprofiles$Get, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; + get(callback: BodyResponseCallback): void; get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Get - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofiles$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Get; + {}) as Params$Resource$Organizations$Locations$Securityprofiles$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Get; + params = + {} as Params$Resource$Organizations$Locations$Securityprofiles$Get; options = {}; } @@ -8016,17 +8269,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. + * Lists SecurityProfiles in a given organization and location. * @example * ```js * // Before running the sample: @@ -8055,24 +8308,21 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.list({ - * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. - * extraLocationTypes: 'placeholder-value', - * // 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', - * }); + * const res = + * await networksecurity.organizations.locations.securityProfiles.list({ + * // Optional. Maximum number of SecurityProfiles to return per call. + * pageSize: 'placeholder-value', + * // Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + * parent: 'organizations/my-organization/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "locations": [], - * // "nextPageToken": "my_nextPageToken" + * // "nextPageToken": "my_nextPageToken", + * // "securityProfiles": [] * // } * } * @@ -8089,54 +8339,57 @@ export namespace networksecurity_v1beta1 { * @returns A promise if used with async/await, or void if used with a callback. */ list( - params: Params$Resource$Projects$Locations$List, + params: Params$Resource$Organizations$Locations$Securityprofiles$List, options: StreamMethodOptions ): Promise>; list( - params?: Params$Resource$Projects$Locations$List, + params?: Params$Resource$Organizations$Locations$Securityprofiles$List, options?: MethodOptions - ): Promise>; + ): Promise>; list( - params: Params$Resource$Projects$Locations$List, + params: Params$Resource$Organizations$Locations$Securityprofiles$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$List, + params: Params$Resource$Organizations$Locations$Securityprofiles$List, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; list( - params: Params$Resource$Projects$Locations$List, - callback: BodyResponseCallback + params: Params$Resource$Organizations$Locations$Securityprofiles$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback ): void; - list(callback: BodyResponseCallback): void; list( paramsOrCallback?: - | Params$Resource$Projects$Locations$List - | BodyResponseCallback + | Params$Resource$Organizations$Locations$Securityprofiles$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$List; + {}) as Params$Resource$Organizations$Locations$Securityprofiles$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$List; + params = + {} as Params$Resource$Organizations$Locations$Securityprofiles$List; options = {}; } @@ -8150,7 +8403,7 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}/locations').replace( + url: (rootUrl + '/v1beta1/{+parent}/securityProfiles').replace( /([^:]\/)\/+/g, '$1' ), @@ -8160,58 +8413,24 @@ export namespace networksecurity_v1beta1 { options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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 { - /** - * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. - */ - extraLocationTypes?: string[]; - /** - * 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$Addressgroups { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Adds items to an address group. + * Updates the parameters of a single SecurityProfile. * @example * ```js * // Before running the sample: @@ -8240,20 +8459,32 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.addressGroups.addItems({ - * // Required. A name of the AddressGroup to add items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. - * addressGroup: - * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * const res = + * await networksecurity.organizations.locations.securityProfiles.patch({ + * // Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. + * name: 'organizations/my-organization/locations/my-location/securityProfiles/my-securityProfile', + * // Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. + * updateMask: 'placeholder-value', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "items": [], - * // "requestId": "my_requestId" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "customInterceptProfile": {}, + * // "customMirroringProfile": {}, + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "threatPreventionProfile": {}, + * // "type": "my_type", + * // "updateTime": "my_updateTime", + * // "urlFilteringProfile": {}, + * // "wildfireAnalysisProfile": {} + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -8278,32 +8509,32 @@ export namespace networksecurity_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - addItems( - params: Params$Resource$Projects$Locations$Addressgroups$Additems, + patch( + params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, options: StreamMethodOptions ): Promise>; - addItems( - params?: Params$Resource$Projects$Locations$Addressgroups$Additems, + patch( + params?: Params$Resource$Organizations$Locations$Securityprofiles$Patch, options?: MethodOptions ): Promise>; - addItems( - params: Params$Resource$Projects$Locations$Addressgroups$Additems, + patch( + params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addItems( - params: Params$Resource$Projects$Locations$Addressgroups$Additems, + patch( + params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - addItems( - params: Params$Resource$Projects$Locations$Addressgroups$Additems, + patch( + params: Params$Resource$Organizations$Locations$Securityprofiles$Patch, callback: BodyResponseCallback ): void; - addItems(callback: BodyResponseCallback): void; - addItems( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Additems + | Params$Resource$Organizations$Locations$Securityprofiles$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -8319,13 +8550,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Additems; + {}) as Params$Resource$Organizations$Locations$Securityprofiles$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Addressgroups$Additems; + {} as Params$Resource$Organizations$Locations$Securityprofiles$Patch; options = {}; } @@ -8339,18 +8570,15 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+addressGroup}:addItems').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['addressGroup'], - pathParams: ['addressGroup'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { @@ -8362,62 +8590,213 @@ export namespace networksecurity_v1beta1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Organizations$Locations$Securityprofiles$Create extends StandardParameters { /** - * Clones items from one address group to another. - * @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: - * // ```sh - * // $ gcloud auth application-default login - * // ``` - * // - Install the npm module by running: - * // ```sh - * // $ 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.addressGroups.cloneItems( - * { - * // Required. A name of the AddressGroup to clone items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. - * addressGroup: - * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "requestId": "my_requestId", - * // "sourceAddressGroup": "my_sourceAddressGroup" - * // } - * }, - * }, - * ); + * Required. The parent resource of the SecurityProfile. Must be in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the SecurityProfile 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. "security_profile1". + */ + securityProfileId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfile; + } + export interface Params$Resource$Organizations$Locations$Securityprofiles$Delete extends StandardParameters { + /** + * Optional. If client provided etag is out of date, delete will return FAILED_PRECONDITION error. + */ + etag?: string; + /** + * Required. A name of the SecurityProfile to delete. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + */ + name?: string; + } + export interface Params$Resource$Organizations$Locations$Securityprofiles$Get extends StandardParameters { + /** + * Required. A name of the SecurityProfile to get. Must be in the format `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile_id\}`. + */ + name?: string; + } + export interface Params$Resource$Organizations$Locations$Securityprofiles$List extends StandardParameters { + /** + * Optional. Maximum number of SecurityProfiles to return per call. + */ + pageSize?: number; + /** + * Optional. The value returned by the last `ListSecurityProfilesResponse` Indicates that this is a continuation of a prior `ListSecurityProfiles` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project or organization and location from which the SecurityProfiles should be listed, specified in the format `projects|organizations/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Organizations$Locations$Securityprofiles$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the SecurityProfile resource. It matches pattern `projects|organizations/x/locations/{location\}/securityProfiles/{security_profile\}`. + */ + name?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the SecurityProfile 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. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SecurityProfile; + } + + 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; + addressGroups: Resource$Projects$Locations$Addressgroups; + authorizationPolicies: Resource$Projects$Locations$Authorizationpolicies; + authzPolicies: Resource$Projects$Locations$Authzpolicies; + backendAuthenticationConfigs: Resource$Projects$Locations$Backendauthenticationconfigs; + clientTlsPolicies: Resource$Projects$Locations$Clienttlspolicies; + dnsThreatDetectors: Resource$Projects$Locations$Dnsthreatdetectors; + firewallEndpointAssociations: Resource$Projects$Locations$Firewallendpointassociations; + firewallEndpoints: Resource$Projects$Locations$Firewallendpoints; + gatewaySecurityPolicies: Resource$Projects$Locations$Gatewaysecuritypolicies; + interceptDeploymentGroups: Resource$Projects$Locations$Interceptdeploymentgroups; + interceptDeployments: Resource$Projects$Locations$Interceptdeployments; + interceptEndpointGroupAssociations: Resource$Projects$Locations$Interceptendpointgroupassociations; + interceptEndpointGroups: Resource$Projects$Locations$Interceptendpointgroups; + mirroringDeploymentGroups: Resource$Projects$Locations$Mirroringdeploymentgroups; + mirroringDeployments: Resource$Projects$Locations$Mirroringdeployments; + mirroringEndpointGroupAssociations: Resource$Projects$Locations$Mirroringendpointgroupassociations; + mirroringEndpointGroups: Resource$Projects$Locations$Mirroringendpointgroups; + operations: Resource$Projects$Locations$Operations; + sacAttachments: Resource$Projects$Locations$Sacattachments; + sacRealms: Resource$Projects$Locations$Sacrealms; + securityProfileGroups: Resource$Projects$Locations$Securityprofilegroups; + securityProfiles: Resource$Projects$Locations$Securityprofiles; + serverTlsPolicies: Resource$Projects$Locations$Servertlspolicies; + tlsInspectionPolicies: Resource$Projects$Locations$Tlsinspectionpolicies; + urlLists: Resource$Projects$Locations$Urllists; + constructor(context: APIRequestContext) { + this.context = context; + this.addressGroups = new Resource$Projects$Locations$Addressgroups( + this.context + ); + this.authorizationPolicies = + new Resource$Projects$Locations$Authorizationpolicies(this.context); + this.authzPolicies = new Resource$Projects$Locations$Authzpolicies( + this.context + ); + this.backendAuthenticationConfigs = + new Resource$Projects$Locations$Backendauthenticationconfigs( + this.context + ); + this.clientTlsPolicies = + new Resource$Projects$Locations$Clienttlspolicies(this.context); + this.dnsThreatDetectors = + new Resource$Projects$Locations$Dnsthreatdetectors(this.context); + this.firewallEndpointAssociations = + new Resource$Projects$Locations$Firewallendpointassociations( + this.context + ); + this.firewallEndpoints = + new Resource$Projects$Locations$Firewallendpoints(this.context); + this.gatewaySecurityPolicies = + new Resource$Projects$Locations$Gatewaysecuritypolicies(this.context); + this.interceptDeploymentGroups = + new Resource$Projects$Locations$Interceptdeploymentgroups(this.context); + this.interceptDeployments = + new Resource$Projects$Locations$Interceptdeployments(this.context); + this.interceptEndpointGroupAssociations = + new Resource$Projects$Locations$Interceptendpointgroupassociations( + this.context + ); + this.interceptEndpointGroups = + new Resource$Projects$Locations$Interceptendpointgroups(this.context); + this.mirroringDeploymentGroups = + new Resource$Projects$Locations$Mirroringdeploymentgroups(this.context); + this.mirroringDeployments = + new Resource$Projects$Locations$Mirroringdeployments(this.context); + this.mirroringEndpointGroupAssociations = + new Resource$Projects$Locations$Mirroringendpointgroupassociations( + this.context + ); + this.mirroringEndpointGroups = + new Resource$Projects$Locations$Mirroringendpointgroups(this.context); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.sacAttachments = new Resource$Projects$Locations$Sacattachments( + this.context + ); + this.sacRealms = new Resource$Projects$Locations$Sacrealms(this.context); + this.securityProfileGroups = + new Resource$Projects$Locations$Securityprofilegroups(this.context); + this.securityProfiles = new Resource$Projects$Locations$Securityprofiles( + this.context + ); + this.serverTlsPolicies = + new Resource$Projects$Locations$Servertlspolicies(this.context); + this.tlsInspectionPolicies = + new Resource$Projects$Locations$Tlsinspectionpolicies(this.context); + this.urlLists = new Resource$Projects$Locations$Urllists(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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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 * // { - * // "done": false, - * // "error": {}, + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "name": "my_name" * // } * } * @@ -8433,54 +8812,53 @@ export namespace networksecurity_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - cloneItems( - params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, + get( + params: Params$Resource$Projects$Locations$Get, options: StreamMethodOptions ): Promise>; - cloneItems( - params?: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, + get( + params?: Params$Resource$Projects$Locations$Get, options?: MethodOptions - ): Promise>; - cloneItems( - params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - cloneItems( - params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - cloneItems( - params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback ): void; - cloneItems(callback: BodyResponseCallback): void; - cloneItems( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Cloneitems - | BodyResponseCallback + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Cloneitems; + {}) as Params$Resource$Projects$Locations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Addressgroups$Cloneitems; + params = {} as Params$Resource$Projects$Locations$Get; options = {}; } @@ -8494,32 +8872,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+addressGroup}:cloneItems').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['addressGroup'], - pathParams: ['addressGroup'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Creates a new address group in a given project and location. + * Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project\}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version. * @example * ```js * // Before running the sample: @@ -8548,40 +8923,24 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.addressGroups.create({ - * // Required. Short name of the AddressGroup 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". - * addressGroupId: 'placeholder-value', - * // Required. The parent resource of the AddressGroup. Must be in the format `projects/x/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "capacity": 0, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "items": [], - * // "labels": {}, - * // "name": "my_name", - * // "purpose": [], - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updateTime": "my_updateTime" - * // } - * }, + * const res = await networksecurity.projects.locations.list({ + * // Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + * extraLocationTypes: 'placeholder-value', + * // 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 * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "locations": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -8597,53 +8956,55 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Create, + list( + params: Params$Resource$Projects$Locations$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Addressgroups$Create, + list( + params?: Params$Resource$Projects$Locations$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Addressgroups$Create, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Addressgroups$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Addressgroups$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list(callback: BodyResponseCallback): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Create; + {}) as Params$Resource$Projects$Locations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Addressgroups$Create; + params = {} as Params$Resource$Projects$Locations$List; options = {}; } @@ -8657,32 +9018,68 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/addressGroups').replace( + url: (rootUrl + '/v1beta1/{+name}/locations').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Get extends StandardParameters { /** - * Deletes a single address group. + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List extends StandardParameters { + /** + * Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage. + */ + extraLocationTypes?: string[]; + /** + * 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$Addressgroups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Adds items to an address group. * @example * ```js * // Before running the sample: @@ -8711,11 +9108,19 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.addressGroups.delete({ - * // Required. A name of the AddressGroup to delete. Must be in the format `projects/x/locations/{location\}/addressGroups/x`. - * name: 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * const res = await networksecurity.projects.locations.addressGroups.addItems({ + * // Required. A name of the AddressGroup to add items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + * addressGroup: + * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "items": [], + * // "requestId": "my_requestId" + * // } + * }, * }); * console.log(res.data); * @@ -8741,32 +9146,32 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Delete, + addItems( + params: Params$Resource$Projects$Locations$Addressgroups$Additems, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Addressgroups$Delete, + addItems( + params?: Params$Resource$Projects$Locations$Addressgroups$Additems, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Addressgroups$Delete, + addItems( + params: Params$Resource$Projects$Locations$Addressgroups$Additems, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Addressgroups$Delete, + addItems( + params: Params$Resource$Projects$Locations$Addressgroups$Additems, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Addressgroups$Delete, + addItems( + params: Params$Resource$Projects$Locations$Addressgroups$Additems, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + addItems(callback: BodyResponseCallback): void; + addItems( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Delete + | Params$Resource$Projects$Locations$Addressgroups$Additems | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -8782,12 +9187,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Delete; + {}) as Params$Resource$Projects$Locations$Addressgroups$Additems; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Addressgroups$Delete; + params = + {} as Params$Resource$Projects$Locations$Addressgroups$Additems; options = {}; } @@ -8801,15 +9207,18 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1beta1/{+addressGroup}:addItems').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['addressGroup'], + pathParams: ['addressGroup'], context: this.context, }; if (callback) { @@ -8823,7 +9232,7 @@ export namespace networksecurity_v1beta1 { } /** - * Gets details of a single address group. + * Clones items from one address group to another. * @example * ```js * // Before running the sample: @@ -8852,24 +9261,31 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.addressGroups.get({ - * // Required. A name of the AddressGroup to get. Must be in the format `projects/x/locations/{location\}/addressGroups/x`. - * name: 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * }); + * const res = await networksecurity.projects.locations.addressGroups.cloneItems( + * { + * // Required. A name of the AddressGroup to clone items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + * addressGroup: + * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "requestId": "my_requestId", + * // "sourceAddressGroup": "my_sourceAddressGroup" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "capacity": 0, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "items": [], - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "purpose": [], - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -8885,53 +9301,54 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Get, + cloneItems( + params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Addressgroups$Get, + cloneItems( + params?: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Addressgroups$Get, + ): Promise>; + cloneItems( + params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Addressgroups$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + cloneItems( + params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Addressgroups$Get, - callback: BodyResponseCallback + cloneItems( + params: Params$Resource$Projects$Locations$Addressgroups$Cloneitems, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + cloneItems(callback: BodyResponseCallback): void; + cloneItems( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Cloneitems + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Get; + {}) as Params$Resource$Projects$Locations$Addressgroups$Cloneitems; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Addressgroups$Get; + params = + {} as Params$Resource$Projects$Locations$Addressgroups$Cloneitems; options = {}; } @@ -8945,29 +9362,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta1/{+addressGroup}:cloneItems').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['addressGroup'], + pathParams: ['addressGroup'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Creates a new address group in a given project and location. * @example * ```js * // Before running the sample: @@ -8996,22 +9416,40 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.addressGroups.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * }); + * const res = await networksecurity.projects.locations.addressGroups.create({ + * // Required. Short name of the AddressGroup 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". + * addressGroupId: 'placeholder-value', + * // Required. The parent resource of the AddressGroup. Must be in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "capacity": 0, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "items": [], + * // "labels": {}, + * // "name": "my_name", + * // "purpose": [], + * // "selfLink": "my_selfLink", + * // "type": "my_type", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -9027,56 +9465,53 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Getiampolicy, + create( + params: Params$Resource$Projects$Locations$Addressgroups$Create, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, + create( + params?: Params$Resource$Projects$Locations$Addressgroups$Create, options?: MethodOptions - ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Addressgroups$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Addressgroups$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - getIamPolicy( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Addressgroups$Create, + callback: BodyResponseCallback ): void; - getIamPolicy( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Getiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Addressgroups$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Addressgroups$Getiampolicy; + params = {} as Params$Resource$Projects$Locations$Addressgroups$Create; options = {}; } @@ -9090,32 +9525,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1beta1/{+parent}/addressGroups').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists address groups in a given project and location. + * Deletes a single address group. * @example * ```js * // Before running the sample: @@ -9144,23 +9579,21 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.addressGroups.list({ - * // Maximum number of AddressGroups to return per call. - * pageSize: 'placeholder-value', - * // The value returned by the last `ListAddressGroupsResponse` Indicates that this is a continuation of a prior `ListAddressGroups` call, and that the system should return the next page of data. - * pageToken: 'placeholder-value', - * // Required. The project and location from which the AddressGroups should be listed, specified in the format `projects/x/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. - * returnPartialSuccess: 'placeholder-value', + * const res = await networksecurity.projects.locations.addressGroups.delete({ + * // Required. A name of the AddressGroup to delete. Must be in the format `projects/x/locations/{location\}/addressGroups/x`. + * name: 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "addressGroups": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -9176,57 +9609,53 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$List, + delete( + params: Params$Resource$Projects$Locations$Addressgroups$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Addressgroups$List, + delete( + params?: Params$Resource$Projects$Locations$Addressgroups$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Addressgroups$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Addressgroups$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Addressgroups$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Addressgroups$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Addressgroups$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Addressgroups$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$List; + {}) as Params$Resource$Projects$Locations$Addressgroups$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Addressgroups$List; + params = {} as Params$Resource$Projects$Locations$Addressgroups$Delete; options = {}; } @@ -9240,32 +9669,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/addressGroups').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists references of an address group. + * Gets details of a single address group. * @example * ```js * // Before running the sample: @@ -9294,22 +9720,24 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.addressGroups.listReferences({ - * // Required. A name of the AddressGroup to clone items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. - * addressGroup: - * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * // The maximum number of references to return. If unspecified, server will pick an appropriate default. Server may return fewer items than requested. A caller should only rely on response's next_page_token to determine if there are more AddressGroupUsers left to be queried. - * pageSize: 'placeholder-value', - * // The next_page_token value returned from a previous List request, if any. - * pageToken: 'placeholder-value', - * }); + * const res = await networksecurity.projects.locations.addressGroups.get({ + * // Required. A name of the AddressGroup to get. Must be in the format `projects/x/locations/{location\}/addressGroups/x`. + * name: 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * }); * console.log(res.data); * * // Example response * // { - * // "addressGroupReferences": [], - * // "nextPageToken": "my_nextPageToken" + * // "capacity": 0, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "items": [], + * // "labels": {}, + * // "name": "my_name", + * // "purpose": [], + * // "selfLink": "my_selfLink", + * // "type": "my_type", + * // "updateTime": "my_updateTime" * // } * } * @@ -9325,62 +9753,53 @@ export namespace networksecurity_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - listReferences( - params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, + get( + params: Params$Resource$Projects$Locations$Addressgroups$Get, options: StreamMethodOptions ): Promise>; - listReferences( - params?: Params$Resource$Projects$Locations$Addressgroups$Listreferences, + get( + params?: Params$Resource$Projects$Locations$Addressgroups$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - listReferences( - params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Addressgroups$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - listReferences( - params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - listReferences( - params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Addressgroups$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - listReferences( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Addressgroups$Get, + callback: BodyResponseCallback ): void; - listReferences( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Listreferences - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Listreferences; + {}) as Params$Resource$Projects$Locations$Addressgroups$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Addressgroups$Listreferences; + params = {} as Params$Resource$Projects$Locations$Addressgroups$Get; options = {}; } @@ -9394,34 +9813,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+addressGroup}:listReferences').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['addressGroup'], - pathParams: ['addressGroup'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single address group. + * 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: @@ -9450,40 +9864,22 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.addressGroups.patch({ - * // Required. Name of the AddressGroup resource. It matches pattern `projects/x/locations/{location\}/addressGroups/`. - * name: 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Optional. Field mask is used to specify the fields to be overwritten in the AddressGroup 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 - * // { - * // "capacity": 0, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "items": [], - * // "labels": {}, - * // "name": "my_name", - * // "purpose": [], - * // "selfLink": "my_selfLink", - * // "type": "my_type", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await networksecurity.projects.locations.addressGroups.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -9499,53 +9895,56 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Patch, + getIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Addressgroups$Patch, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Addressgroups$Patch, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Addressgroups$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Addressgroups$Patch, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Getiampolicy, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Patch; + {}) as Params$Resource$Projects$Locations$Addressgroups$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Addressgroups$Patch; + params = + {} as Params$Resource$Projects$Locations$Addressgroups$Getiampolicy; options = {}; } @@ -9559,29 +9958,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Removes items from an address group. + * Lists address groups in a given project and location. * @example * ```js * // Before running the sample: @@ -9610,30 +10012,23 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.addressGroups.removeItems({ - * // Required. A name of the AddressGroup to remove items from. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. - * addressGroup: - * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "items": [], - * // "requestId": "my_requestId" - * // } - * }, - * }); + * const res = await networksecurity.projects.locations.addressGroups.list({ + * // Maximum number of AddressGroups to return per call. + * pageSize: 'placeholder-value', + * // The value returned by the last `ListAddressGroupsResponse` Indicates that this is a continuation of a prior `ListAddressGroups` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the AddressGroups should be listed, specified in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Optional. If true, allow partial responses for multi-regional Aggregated List requests. + * returnPartialSuccess: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "addressGroups": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -9649,54 +10044,57 @@ export namespace networksecurity_v1beta1 { * @param callback - Optional callback that handles the response. * @returns A promise if used with async/await, or void if used with a callback. */ - removeItems( - params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + list( + params: Params$Resource$Projects$Locations$Addressgroups$List, options: StreamMethodOptions ): Promise>; - removeItems( - params?: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + list( + params?: Params$Resource$Projects$Locations$Addressgroups$List, options?: MethodOptions - ): Promise>; - removeItems( - params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Addressgroups$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - removeItems( - params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - removeItems( - params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Addressgroups$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - removeItems(callback: BodyResponseCallback): void; - removeItems( + list( + params: Params$Resource$Projects$Locations$Addressgroups$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Removeitems - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Removeitems; + {}) as Params$Resource$Projects$Locations$Addressgroups$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Addressgroups$Removeitems; + params = {} as Params$Resource$Projects$Locations$Addressgroups$List; options = {}; } @@ -9710,32 +10108,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+addressGroup}:removeItems').replace( + url: (rootUrl + '/v1beta1/{+parent}/addressGroups').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['addressGroup'], - pathParams: ['addressGroup'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Lists references of an address group. * @example * ```js * // Before running the sample: @@ -9765,28 +10163,21 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.addressGroups.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: + * await networksecurity.projects.locations.addressGroups.listReferences({ + * // Required. A name of the AddressGroup to clone items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + * addressGroup: * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, + * // The maximum number of references to return. If unspecified, server will pick an appropriate default. Server may return fewer items than requested. A caller should only rely on response's next_page_token to determine if there are more AddressGroupUsers left to be queried. + * pageSize: 'placeholder-value', + * // The next_page_token value returned from a previous List request, if any. + * pageToken: 'placeholder-value', * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "addressGroupReferences": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -9802,56 +10193,62 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Setiampolicy, + listReferences( + params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, + listReferences( + params?: Params$Resource$Projects$Locations$Addressgroups$Listreferences, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, + ): Promise< + GaxiosResponseWithHTTP2 + >; + listReferences( + params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + listReferences( + params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, - callback: BodyResponseCallback + listReferences( + params: Params$Resource$Projects$Locations$Addressgroups$Listreferences, + callback: BodyResponseCallback ): void; - setIamPolicy( - callback: BodyResponseCallback + listReferences( + callback: BodyResponseCallback ): void; - setIamPolicy( + listReferences( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Listreferences + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Addressgroups$Listreferences; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Addressgroups$Setiampolicy; + {} as Params$Resource$Projects$Locations$Addressgroups$Listreferences; options = {}; } @@ -9865,32 +10262,34 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( + url: (rootUrl + '/v1beta1/{+addressGroup}:listReferences').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['addressGroup'], + pathParams: ['addressGroup'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Updates the parameters of a single address group. * @example * ```js * // Before running the sample: @@ -9919,25 +10318,40 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.addressGroups.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * const res = await networksecurity.projects.locations.addressGroups.patch({ + * // Required. Name of the AddressGroup resource. It matches pattern `projects/x/locations/{location\}/addressGroups/`. + * name: 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Optional. Field mask is used to specify the fields to be overwritten in the AddressGroup 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 - * // { - * // "permissions": [] - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "capacity": 0, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "items": [], + * // "labels": {}, + * // "name": "my_name", + * // "purpose": [], + * // "selfLink": "my_selfLink", + * // "type": "my_type", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -9953,62 +10367,53 @@ export namespace networksecurity_v1beta1 { * @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$Addressgroups$Testiampermissions, + patch( + params: Params$Resource$Projects$Locations$Addressgroups$Patch, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, + patch( + params?: Params$Resource$Projects$Locations$Addressgroups$Patch, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Addressgroups$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Addressgroups$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Addressgroups$Patch, + callback: BodyResponseCallback ): void; - testIamPermissions( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Addressgroups$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Addressgroups$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Addressgroups$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Addressgroups$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Addressgroups$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Addressgroups$Patch; options = {}; } @@ -10022,77 +10427,540 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - export interface Params$Resource$Projects$Locations$Addressgroups$Additems extends StandardParameters { /** - * Required. A name of the AddressGroup to add items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + * Removes items from an address group. + * @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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.addressGroups.removeItems({ + * // Required. A name of the AddressGroup to remove items from. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + * addressGroup: + * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "items": [], + * // "requestId": "my_requestId" + * // } + * }, + * }); + * 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. */ - addressGroup?: string; + removeItems( + params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + options: StreamMethodOptions + ): Promise>; + removeItems( + params?: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + options?: MethodOptions + ): Promise>; + removeItems( + params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeItems( + params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + removeItems( + params: Params$Resource$Projects$Locations$Addressgroups$Removeitems, + callback: BodyResponseCallback + ): void; + removeItems(callback: BodyResponseCallback): void; + removeItems( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Addressgroups$Removeitems + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Addressgroups$Removeitems; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$AddAddressGroupItemsRequest; - } - export interface Params$Resource$Projects$Locations$Addressgroups$Cloneitems extends StandardParameters { - /** - * Required. A name of the AddressGroup to clone items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. - */ - addressGroup?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Addressgroups$Removeitems; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$CloneAddressGroupItemsRequest; - } - export interface Params$Resource$Projects$Locations$Addressgroups$Create extends StandardParameters { - /** - * Required. Short name of the AddressGroup 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". - */ - addressGroupId?: string; - /** - * Required. The parent resource of the AddressGroup. Must be in the format `projects/x/locations/{location\}`. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+addressGroup}:removeItems').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['addressGroup'], + pathParams: ['addressGroup'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata - */ - requestBody?: Schema$AddressGroup; - } - export interface Params$Resource$Projects$Locations$Addressgroups$Delete extends StandardParameters { - /** - * Required. A name of the AddressGroup to delete. Must be in the format `projects/x/locations/{location\}/addressGroups/x`. + * 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.addressGroups.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * + * // 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$Addressgroups$Setiampolicy, + options: StreamMethodOptions + ): Promise>; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, + options?: MethodOptions + ): Promise>; + setIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Addressgroups$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Addressgroups$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Addressgroups$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Addressgroups$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', + apiVersion: '', + }, + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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.addressGroups.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/addressGroups/my-addressGroup', + * + * // 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$Addressgroups$Testiampermissions, + options: StreamMethodOptions + ): Promise>; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, + options?: MethodOptions + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Addressgroups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Addressgroups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | Promise< + GaxiosResponseWithHTTP2 + > + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Addressgroups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Addressgroups$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', + apiVersion: '', + }, + 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$Addressgroups$Additems extends StandardParameters { + /** + * Required. A name of the AddressGroup to add items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + */ + addressGroup?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddAddressGroupItemsRequest; + } + export interface Params$Resource$Projects$Locations$Addressgroups$Cloneitems extends StandardParameters { + /** + * Required. A name of the AddressGroup to clone items to. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + */ + addressGroup?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CloneAddressGroupItemsRequest; + } + export interface Params$Resource$Projects$Locations$Addressgroups$Create extends StandardParameters { + /** + * Required. Short name of the AddressGroup 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". + */ + addressGroupId?: string; + /** + * Required. The parent resource of the AddressGroup. Must be in the format `projects/x/locations/{location\}`. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddressGroup; + } + export interface Params$Resource$Projects$Locations$Addressgroups$Delete extends StandardParameters { + /** + * Required. A name of the AddressGroup to delete. Must be in the format `projects/x/locations/{location\}/addressGroups/x`. */ name?: string; /** @@ -10160,55 +11028,499 @@ export namespace networksecurity_v1beta1 { /** * Optional. Field mask is used to specify the fields to be overwritten in the AddressGroup 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; + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AddressGroup; + } + export interface Params$Resource$Projects$Locations$Addressgroups$Removeitems extends StandardParameters { + /** + * Required. A name of the AddressGroup to remove items from. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. + */ + addressGroup?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RemoveAddressGroupItemsRequest; + } + export interface Params$Resource$Projects$Locations$Addressgroups$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Addressgroups$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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 + ): Promise>; + create( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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', + apiVersion: '', + }, + 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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 + ): Promise>; + delete( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; - /** - * Request body metadata - */ - requestBody?: Schema$AddressGroup; - } - export interface Params$Resource$Projects$Locations$Addressgroups$Removeitems extends StandardParameters { - /** - * Required. A name of the AddressGroup to remove items from. Must be in the format `projects|organization/x/locations/{location\}/addressGroups/x`. - */ - addressGroup?: string; + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Delete; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$RemoveAddressGroupItemsRequest; - } - export interface Params$Resource$Projects$Locations$Addressgroups$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Addressgroups$Testiampermissions extends StandardParameters { - /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } /** - * Request body metadata + * 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: + * // ```sh + * // $ gcloud auth application-default login + * // ``` + * // - Install the npm module by running: + * // ```sh + * // $ 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. */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } + get( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + options: StreamMethodOptions + ): Promise>; + get( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + options?: MethodOptions + ): Promise>; + 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 + | Promise> + | Promise> { + 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 = {}; + } - export class Resource$Projects$Locations$Authorizationpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + 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', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates a new AuthorizationPolicy in a given project and location. + * 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: @@ -10238,35 +11550,23 @@ export namespace networksecurity_v1beta1 { * * // 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" - * // } + * await networksecurity.projects.locations.authorizationPolicies.getIamPolicy( + * { + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -10282,54 +11582,56 @@ export namespace networksecurity_v1beta1 { * @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, + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Create; + {}) 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$Create; + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy; options = {}; } @@ -10343,32 +11645,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/authorizationPolicies').replace( + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single AuthorizationPolicy. + * Lists AuthorizationPolicies in a given project and location. * @example * ```js * // Before running the sample: @@ -10398,19 +11700,20 @@ export namespace networksecurity_v1beta1 { * * // 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', + * 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 * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "authorizationPolicies": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -10426,54 +11729,62 @@ export namespace networksecurity_v1beta1 { * @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, + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + list( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authorizationpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Delete; + {}) 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$Delete; + {} as Params$Resource$Projects$Locations$Authorizationpolicies$List; options = {}; } @@ -10487,29 +11798,34 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1beta1/{+parent}/authorizationPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets details of a single AuthorizationPolicy. + * Updates the parameters of a single AuthorizationPolicy. * @example * ```js * // Before running the sample: @@ -10539,21 +11855,35 @@ export namespace networksecurity_v1beta1 { * * // 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`. + * 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 * // { - * // "action": "my_action", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "rules": [], - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -10568,55 +11898,55 @@ export namespace networksecurity_v1beta1 { * @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, + */ + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + patch( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authorizationpolicies$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Get; + {}) 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$Get; + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Patch; options = {}; } @@ -10631,7 +11961,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -10642,17 +11972,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * 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: @@ -10682,13 +12012,20 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.authorizationPolicies.getIamPolicy( + * await networksecurity.projects.locations.authorizationPolicies.setIamPolicy( * { - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * 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); @@ -10714,34 +12051,34 @@ export namespace networksecurity_v1beta1 { * @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, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, options?: MethodOptions ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy + | Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -10757,13 +12094,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy; + {}) 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$Getiampolicy; + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy; options = {}; } @@ -10777,11 +12114,11 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -10802,7 +12139,7 @@ export namespace networksecurity_v1beta1 { } /** - * Lists AuthorizationPolicies in a given project and location. + * 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: @@ -10832,20 +12169,26 @@ export namespace networksecurity_v1beta1 { * * // 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', - * }); + * await networksecurity.projects.locations.authorizationPolicies.testIamPermissions( + * { + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "authorizationPolicies": [], - * // "nextPageToken": "my_nextPageToken" + * // "permissions": [] * // } * } * @@ -10861,103 +12204,199 @@ export namespace networksecurity_v1beta1 { * @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, + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$List, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, options?: MethodOptions ): Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 >; - list( - params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Authorizationpolicies$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - list( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void | Promise< - GaxiosResponseWithHTTP2 + GaxiosResponseWithHTTP2 > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$List; + {}) 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$List; - options = {}; - } + 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', + apiVersion: '', + }, + 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 maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } + /** + * 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; - const rootUrl = - options.rootUrl || 'https://networksecurity.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1beta1/{+parent}/authorizationPolicies').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['parent'], - pathParams: ['parent'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Authzpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; } /** - * Updates the parameters of a single AuthorizationPolicy. + * Creates a new AuthzPolicy in a given project and location. * @example * ```js * // Before running the sample: @@ -10986,27 +12425,32 @@ export namespace networksecurity_v1beta1 { * 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', + * const res = await networksecurity.projects.locations.authzPolicies.create({ + * // Required. User-provided ID of the `AuthzPolicy` resource to be created. + * authzPolicyId: 'placeholder-value', + * // Required. The parent resource of the `AuthzPolicy` resource. Must be in the format `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). + * requestId: '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" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "createTime": "my_createTime", + * // "customProvider": {}, + * // "description": "my_description", + * // "httpRules": [], + * // "labels": {}, + * // "name": "my_name", + * // "networkRules": [], + * // "policyProfile": "my_policyProfile", + * // "target": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response @@ -11031,32 +12475,32 @@ export namespace networksecurity_v1beta1 { * @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, + create( + params: Params$Resource$Projects$Locations$Authzpolicies$Create, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + create( + params?: Params$Resource$Projects$Locations$Authzpolicies$Create, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Authzpolicies$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Authzpolicies$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Authzpolicies$Create, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Patch + | Params$Resource$Projects$Locations$Authzpolicies$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -11072,13 +12516,12 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Patch; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Authorizationpolicies$Patch; + params = {} as Params$Resource$Projects$Locations$Authzpolicies$Create; options = {}; } @@ -11092,15 +12535,18 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1beta1/{+parent}/authzPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -11114,7 +12560,7 @@ export namespace networksecurity_v1beta1 { } /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Deletes a single AuthzPolicy. * @example * ```js * // Before running the sample: @@ -11143,31 +12589,21 @@ export namespace networksecurity_v1beta1 { * 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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" - * // } - * }, - * }, - * ); + * const res = await networksecurity.projects.locations.authzPolicies.delete({ + * // Required. The name of the `AuthzPolicy` resource to delete. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. + * name: 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). + * requestId: 'placeholder-value', + * }); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -11183,56 +12619,53 @@ export namespace networksecurity_v1beta1 { * @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, + delete( + params: Params$Resource$Projects$Locations$Authzpolicies$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Authzpolicies$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Authzpolicies$Delete, 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 + delete( + params: Params$Resource$Projects$Locations$Authzpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Authzpolicies$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authzpolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy; + params = {} as Params$Resource$Projects$Locations$Authzpolicies$Delete; options = {}; } @@ -11246,32 +12679,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Gets details of a single AuthzPolicy. * @example * ```js * // Before running the sample: @@ -11300,27 +12730,25 @@ export namespace networksecurity_v1beta1 { * 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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": [] - * // } - * }, - * }, - * ); + * const res = await networksecurity.projects.locations.authzPolicies.get({ + * // Required. A name of the `AuthzPolicy` resource to get. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. + * name: 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "action": "my_action", + * // "createTime": "my_createTime", + * // "customProvider": {}, + * // "description": "my_description", + * // "httpRules": [], + * // "labels": {}, + * // "name": "my_name", + * // "networkRules": [], + * // "policyProfile": "my_policyProfile", + * // "target": {}, + * // "updateTime": "my_updateTime" * // } * } * @@ -11336,62 +12764,53 @@ export namespace networksecurity_v1beta1 { * @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, + get( + params: Params$Resource$Projects$Locations$Authzpolicies$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + get( + params?: Params$Resource$Projects$Locations$Authzpolicies$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Authzpolicies$Get, 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 + get( + params: Params$Resource$Projects$Locations$Authzpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Authzpolicies$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authzpolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions; + params = {} as Params$Resource$Projects$Locations$Authzpolicies$Get; options = {}; } @@ -11405,130 +12824,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + 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 maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Authzpolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new AuthzPolicy in a given project and location. + * 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: @@ -11557,41 +12875,22 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.authzPolicies.create({ - * // Required. User-provided ID of the `AuthzPolicy` resource to be created. - * authzPolicyId: 'placeholder-value', - * // Required. The parent resource of the `AuthzPolicy` resource. Must be in the format `projects/{project\}/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "createTime": "my_createTime", - * // "customProvider": {}, - * // "description": "my_description", - * // "httpRules": [], - * // "labels": {}, - * // "name": "my_name", - * // "networkRules": [], - * // "policyProfile": "my_policyProfile", - * // "target": {}, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await networksecurity.projects.locations.authzPolicies.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -11607,53 +12906,56 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Create, + getIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Authzpolicies$Create, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Authzpolicies$Create, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Authzpolicies$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Authzpolicies$Create, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Create; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Authzpolicies$Create; + params = + {} as Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy; options = {}; } @@ -11667,32 +12969,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/authzPolicies').replace( + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single AuthzPolicy. + * Lists AuthzPolicies in a given project and location. * @example * ```js * // Before running the sample: @@ -11721,21 +13023,25 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.authzPolicies.delete({ - * // Required. The name of the `AuthzPolicy` resource to delete. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. - * name: 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). - * requestId: 'placeholder-value', + * const res = await networksecurity.projects.locations.authzPolicies.list({ + * // Optional. Filtering results. + * filter: 'placeholder-value', + * // Optional. Hint for how to order the results. + * orderBy: 'placeholder-value', + * // Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results that the server returns. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the `AuthzPolicy` resources are listed, specified in the following format: `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "authzPolicies": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -11751,53 +13057,57 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Delete, + list( + params: Params$Resource$Projects$Locations$Authzpolicies$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Authzpolicies$Delete, + list( + params?: Params$Resource$Projects$Locations$Authzpolicies$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Authzpolicies$Delete, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Authzpolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Authzpolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Authzpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Authzpolicies$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Authzpolicies$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authzpolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Delete; + {}) as Params$Resource$Projects$Locations$Authzpolicies$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Authzpolicies$Delete; + params = {} as Params$Resource$Projects$Locations$Authzpolicies$List; options = {}; } @@ -11811,29 +13121,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1beta1/{+parent}/authzPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Gets details of a single AuthzPolicy. + * Updates the parameters of a single AuthzPolicy. * @example * ```js * // Before running the sample: @@ -11862,25 +13175,41 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.authzPolicies.get({ - * // Required. A name of the `AuthzPolicy` resource to get. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. + * const res = await networksecurity.projects.locations.authzPolicies.patch({ + * // Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. * name: 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). + * requestId: 'placeholder-value', + * // Required. Used to specify the fields to be overwritten in the `AuthzPolicy` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not specify a mask, then all fields are overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "createTime": "my_createTime", + * // "customProvider": {}, + * // "description": "my_description", + * // "httpRules": [], + * // "labels": {}, + * // "name": "my_name", + * // "networkRules": [], + * // "policyProfile": "my_policyProfile", + * // "target": {}, + * // "updateTime": "my_updateTime" + * // } + * }, * }); * console.log(res.data); * * // Example response * // { - * // "action": "my_action", - * // "createTime": "my_createTime", - * // "customProvider": {}, - * // "description": "my_description", - * // "httpRules": [], - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "networkRules": [], - * // "policyProfile": "my_policyProfile", - * // "target": {}, - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -11896,53 +13225,53 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Get, + patch( + params: Params$Resource$Projects$Locations$Authzpolicies$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Authzpolicies$Get, + patch( + params?: Params$Resource$Projects$Locations$Authzpolicies$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Authzpolicies$Get, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Authzpolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Authzpolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Authzpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Authzpolicies$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Authzpolicies$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authzpolicies$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Get; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Authzpolicies$Get; + params = {} as Params$Resource$Projects$Locations$Authzpolicies$Patch; options = {}; } @@ -11957,7 +13286,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -11968,17 +13297,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * 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: @@ -12008,12 +13337,19 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.authzPolicies.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * await networksecurity.projects.locations.authzPolicies.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: * 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, * }); * console.log(res.data); * @@ -12038,34 +13374,34 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, options?: MethodOptions ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy + | Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -12081,13 +13417,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy; + {} as Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy; options = {}; } @@ -12101,11 +13437,11 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -12126,7 +13462,7 @@ export namespace networksecurity_v1beta1 { } /** - * Lists AuthzPolicies in a given project and location. + * 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: @@ -12155,25 +13491,25 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.authzPolicies.list({ - * // Optional. Filtering results. - * filter: 'placeholder-value', - * // Optional. Hint for how to order the results. - * orderBy: 'placeholder-value', - * // Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. A token identifying a page of results that the server returns. - * pageToken: 'placeholder-value', - * // Required. The project and location from which the `AuthzPolicy` resources are listed, specified in the following format: `projects/{project\}/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await networksecurity.projects.locations.authzPolicies.testIamPermissions({ + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "authzPolicies": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "permissions": [] * // } * } * @@ -12189,57 +13525,62 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Authzpolicies$List, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Authzpolicies$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Authzpolicies$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Authzpolicies$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - list( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$List; + {}) as Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Authzpolicies$List; + params = + {} as Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions; options = {}; } @@ -12253,32 +13594,150 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/authzPolicies').replace( + url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } + } + + export interface Params$Resource$Projects$Locations$Authzpolicies$Create extends StandardParameters { + /** + * Required. User-provided ID of the `AuthzPolicy` resource to be created. + */ + authzPolicyId?: string; + /** + * Required. The parent resource of the `AuthzPolicy` resource. Must be in the format `projects/{project\}/locations/{location\}`. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AuthzPolicy; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$Delete extends StandardParameters { + /** + * Required. The name of the `AuthzPolicy` resource to delete. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$Get extends StandardParameters { + /** + * Required. A name of the `AuthzPolicy` resource to get. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy extends StandardParameters { + /** + * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$List extends StandardParameters { + /** + * Optional. Filtering results. + */ + filter?: string; + /** + * Optional. Hint for how to order the results. + */ + orderBy?: string; + /** + * Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default. + */ + pageSize?: number; + /** + * Optional. A token identifying a page of results that the server returns. + */ + pageToken?: string; + /** + * Required. The project and location from which the `AuthzPolicy` resources are listed, specified in the following format: `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$Patch extends StandardParameters { + /** + * Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). + */ + requestId?: string; + /** + * Required. Used to specify the fields to be overwritten in the `AuthzPolicy` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not specify a mask, then all fields are overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AuthzPolicy; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Backendauthenticationconfigs { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Updates the parameters of a single AuthzPolicy. + * Creates a new BackendAuthenticationConfig in a given project and location. * @example * ```js * // Before running the sample: @@ -12307,32 +13766,31 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.authzPolicies.patch({ - * // Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. - * name: 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). - * requestId: 'placeholder-value', - * // Required. Used to specify the fields to be overwritten in the `AuthzPolicy` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not specify a mask, then all fields are overwritten. - * updateMask: 'placeholder-value', + * const res = + * await networksecurity.projects.locations.backendAuthenticationConfigs.create( + * { + * // Required. Short name of the BackendAuthenticationConfig 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. "backend-auth-config". + * backendAuthenticationConfigId: 'placeholder-value', + * // Required. The parent resource of the BackendAuthenticationConfig. Must be in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "action": "my_action", - * // "createTime": "my_createTime", - * // "customProvider": {}, - * // "description": "my_description", - * // "httpRules": [], - * // "labels": {}, - * // "name": "my_name", - * // "networkRules": [], - * // "policyProfile": "my_policyProfile", - * // "target": {}, - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "clientCertificate": "my_clientCertificate", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "trustConfig": "my_trustConfig", + * // "updateTime": "my_updateTime", + * // "wellKnownRoots": "my_wellKnownRoots" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response @@ -12357,32 +13815,32 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Authzpolicies$Patch, + create( + params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, options?: MethodOptions ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Authzpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Authzpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Authzpolicies$Patch, + create( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Patch + | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -12398,12 +13856,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Patch; + {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Authzpolicies$Patch; + params = + {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create; options = {}; } @@ -12417,15 +13876,17 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: ( + rootUrl + '/v1beta1/{+parent}/backendAuthenticationConfigs' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { @@ -12439,7 +13900,7 @@ export namespace networksecurity_v1beta1 { } /** - * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * Deletes a single BackendAuthenticationConfig to BackendAuthenticationConfig. * @example * ```js * // Before running the sample: @@ -12469,28 +13930,23 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.authzPolicies.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } + * await networksecurity.projects.locations.backendAuthenticationConfigs.delete( + * { + * // Optional. Etag of the resource. If this is provided, it must match the server's etag. + * etag: 'placeholder-value', + * // Required. A name of the BackendAuthenticationConfig to delete. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. + * name: 'projects/my-project/locations/my-location/backendAuthenticationConfigs/my-backendAuthenticationConfig', * }, - * }); + * ); * console.log(res.data); * * // Example response * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -12506,56 +13962,54 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Setiampolicy, + delete( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - setIamPolicy( - params: Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy; + {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete; options = {}; } @@ -12569,32 +14023,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Gets details of a single BackendAuthenticationConfig to BackendAuthenticationConfig. * @example * ```js * // Before running the sample: @@ -12624,24 +14075,23 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.authzPolicies.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/authzPolicies/my-authzPolicie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "permissions": [] - * // } - * }, + * await networksecurity.projects.locations.backendAuthenticationConfigs.get({ + * // Required. A name of the BackendAuthenticationConfig to get. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. + * name: 'projects/my-project/locations/my-location/backendAuthenticationConfigs/my-backendAuthenticationConfig', * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "clientCertificate": "my_clientCertificate", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "trustConfig": "my_trustConfig", + * // "updateTime": "my_updateTime", + * // "wellKnownRoots": "my_wellKnownRoots" * // } * } * @@ -12657,62 +14107,58 @@ export namespace networksecurity_v1beta1 { * @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$Authzpolicies$Testiampermissions, + get( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, + get( + params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - testIamPermissions( - params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, + get( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions; + {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get; options = {}; } @@ -12726,150 +14172,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Authzpolicies$Create extends StandardParameters { - /** - * Required. User-provided ID of the `AuthzPolicy` resource to be created. - */ - authzPolicyId?: string; - /** - * Required. The parent resource of the `AuthzPolicy` resource. Must be in the format `projects/{project\}/locations/{location\}`. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AuthzPolicy; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$Delete extends StandardParameters { - /** - * Required. The name of the `AuthzPolicy` resource to delete. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$Get extends StandardParameters { - /** - * Required. A name of the `AuthzPolicy` resource to get. Must be in the format `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$Getiampolicy extends StandardParameters { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$List extends StandardParameters { - /** - * Optional. Filtering results. - */ - filter?: string; - /** - * Optional. Hint for how to order the results. - */ - orderBy?: string; - /** - * Optional. Requested page size. The server might return fewer items than requested. If unspecified, the server picks an appropriate default. - */ - pageSize?: number; - /** - * Optional. A token identifying a page of results that the server returns. - */ - pageToken?: string; - /** - * Required. The project and location from which the `AuthzPolicy` resources are listed, specified in the following format: `projects/{project\}/locations/{location\}`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$Patch extends StandardParameters { - /** - * Required. Identifier. Name of the `AuthzPolicy` resource in the following format: `projects/{project\}/locations/{location\}/authzPolicies/{authz_policy\}`. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server can ignore the request if it has already been completed. The server guarantees that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, ignores 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). - */ - requestId?: string; - /** - * Required. Used to specify the fields to be overwritten in the `AuthzPolicy` resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field is overwritten if it is in the mask. If the user does not specify a mask, then all fields are overwritten. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$AuthzPolicy; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$Setiampolicy extends StandardParameters { - /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; - } - export interface Params$Resource$Projects$Locations$Authzpolicies$Testiampermissions extends StandardParameters { - /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Backendauthenticationconfigs { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new BackendAuthenticationConfig in a given project and location. + * Lists BackendAuthenticationConfigs in a given project and location. * @example * ```js * // Before running the sample: @@ -12899,39 +14224,21 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.backendAuthenticationConfigs.create( - * { - * // Required. Short name of the BackendAuthenticationConfig 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. "backend-auth-config". - * backendAuthenticationConfigId: 'placeholder-value', - * // Required. The parent resource of the BackendAuthenticationConfig. Must be in the format `projects/x/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "clientCertificate": "my_clientCertificate", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "trustConfig": "my_trustConfig", - * // "updateTime": "my_updateTime", - * // "wellKnownRoots": "my_wellKnownRoots" - * // } - * }, - * }, - * ); + * await networksecurity.projects.locations.backendAuthenticationConfigs.list({ + * // Maximum number of BackendAuthenticationConfigs to return per call. + * pageSize: 'placeholder-value', + * // The value returned by the last `ListBackendAuthenticationConfigsResponse` Indicates that this is a continuation of a prior `ListBackendAuthenticationConfigs` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the BackendAuthenticationConfigs should be listed, specified in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "backendAuthenticationConfigs": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -12947,54 +14254,62 @@ export namespace networksecurity_v1beta1 { * @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$Backendauthenticationconfigs$Create, + list( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, + list( + params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Backendauthenticationconfigs$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create; + {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create; + {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$List; options = {}; } @@ -13011,7 +14326,7 @@ export namespace networksecurity_v1beta1 { url: ( rootUrl + '/v1beta1/{+parent}/backendAuthenticationConfigs' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -13022,17 +14337,19 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes a single BackendAuthenticationConfig to BackendAuthenticationConfig. + * Updates the parameters of a single BackendAuthenticationConfig to BackendAuthenticationConfig. * @example * ```js * // Before running the sample: @@ -13062,12 +14379,28 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.backendAuthenticationConfigs.delete( + * await networksecurity.projects.locations.backendAuthenticationConfigs.patch( * { - * // Optional. Etag of the resource. If this is provided, it must match the server's etag. - * etag: 'placeholder-value', - * // Required. A name of the BackendAuthenticationConfig to delete. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. + * // Required. Name of the BackendAuthenticationConfig resource. It matches the pattern `projects/x/locations/{location\}/backendAuthenticationConfigs/{backend_authentication_config\}` * name: 'projects/my-project/locations/my-location/backendAuthenticationConfigs/my-backendAuthenticationConfig', + * // Optional. Field mask is used to specify the fields to be overwritten in the BackendAuthenticationConfig 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": "my_clientCertificate", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "etag": "my_etag", + * // "labels": {}, + * // "name": "my_name", + * // "trustConfig": "my_trustConfig", + * // "updateTime": "my_updateTime", + * // "wellKnownRoots": "my_wellKnownRoots" + * // } + * }, * }, * ); * console.log(res.data); @@ -13094,32 +14427,32 @@ export namespace networksecurity_v1beta1 { * @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$Backendauthenticationconfigs$Delete, + patch( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, + patch( + params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, + patch( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, + patch( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete, + patch( + params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete + | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -13135,13 +14468,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete; + {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete; + {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch; options = {}; } @@ -13156,7 +14489,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options @@ -13175,9 +14508,77 @@ export namespace networksecurity_v1beta1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create extends StandardParameters { /** - * Gets details of a single BackendAuthenticationConfig to BackendAuthenticationConfig. + * Required. Short name of the BackendAuthenticationConfig 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. "backend-auth-config". + */ + backendAuthenticationConfigId?: string; + /** + * Required. The parent resource of the BackendAuthenticationConfig. Must be in the format `projects/x/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$BackendAuthenticationConfig; + } + export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete extends StandardParameters { + /** + * Optional. Etag of the resource. If this is provided, it must match the server's etag. + */ + etag?: string; + /** + * Required. A name of the BackendAuthenticationConfig to delete. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get extends StandardParameters { + /** + * Required. A name of the BackendAuthenticationConfig to get. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$List extends StandardParameters { + /** + * Maximum number of BackendAuthenticationConfigs to return per call. + */ + pageSize?: number; + /** + * The value returned by the last `ListBackendAuthenticationConfigsResponse` Indicates that this is a continuation of a prior `ListBackendAuthenticationConfigs` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project and location from which the BackendAuthenticationConfigs should be listed, specified in the format `projects/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch extends StandardParameters { + /** + * Required. Name of the BackendAuthenticationConfig resource. It matches the pattern `projects/x/locations/{location\}/backendAuthenticationConfigs/{backend_authentication_config\}` + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the BackendAuthenticationConfig 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$BackendAuthenticationConfig; + } + + 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: @@ -13206,24 +14607,38 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.backendAuthenticationConfigs.get({ - * // Required. A name of the BackendAuthenticationConfig to get. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. - * name: 'projects/my-project/locations/my-location/backendAuthenticationConfigs/my-backendAuthenticationConfig', - * }); + * 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 * // { - * // "clientCertificate": "my_clientCertificate", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "trustConfig": "my_trustConfig", - * // "updateTime": "my_updateTime", - * // "wellKnownRoots": "my_wellKnownRoots" + * // "response": {} * // } * } * @@ -13239,58 +14654,54 @@ export namespace networksecurity_v1beta1 { * @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$Backendauthenticationconfigs$Get, + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, + create( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + callback: BodyResponseCallback ): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clienttlspolicies$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get; + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get; + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Create; options = {}; } @@ -13304,29 +14715,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta1/{+parent}/clientTlsPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists BackendAuthenticationConfigs in a given project and location. + * Deletes a single ClientTlsPolicy. * @example * ```js * // Before running the sample: @@ -13355,22 +14769,21 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.backendAuthenticationConfigs.list({ - * // Maximum number of BackendAuthenticationConfigs to return per call. - * pageSize: 'placeholder-value', - * // The value returned by the last `ListBackendAuthenticationConfigsResponse` Indicates that this is a continuation of a prior `ListBackendAuthenticationConfigs` call, and that the system should return the next page of data. - * pageToken: 'placeholder-value', - * // Required. The project and location from which the BackendAuthenticationConfigs should be listed, specified in the format `projects/x/locations/{location\}`. - * parent: 'projects/my-project/locations/my-location', - * }); + * 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 * // { - * // "backendAuthenticationConfigs": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -13386,62 +14799,54 @@ export namespace networksecurity_v1beta1 { * @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$Backendauthenticationconfigs$List, + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, + delete( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backendauthenticationconfigs$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clienttlspolicies$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$List; + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$List; + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Delete; options = {}; } @@ -13455,33 +14860,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1beta1/{+parent}/backendAuthenticationConfigs' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates the parameters of a single BackendAuthenticationConfig to BackendAuthenticationConfig. + * Gets details of a single ClientTlsPolicy. * @example * ```js * // Before running the sample: @@ -13510,40 +14911,22 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.backendAuthenticationConfigs.patch( - * { - * // Required. Name of the BackendAuthenticationConfig resource. It matches the pattern `projects/x/locations/{location\}/backendAuthenticationConfigs/{backend_authentication_config\}` - * name: 'projects/my-project/locations/my-location/backendAuthenticationConfigs/my-backendAuthenticationConfig', - * // Optional. Field mask is used to specify the fields to be overwritten in the BackendAuthenticationConfig 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": "my_clientCertificate", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "etag": "my_etag", - * // "labels": {}, - * // "name": "my_name", - * // "trustConfig": "my_trustConfig", - * // "updateTime": "my_updateTime", - * // "wellKnownRoots": "my_wellKnownRoots" - * // } - * }, - * }, - * ); + * 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 * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "clientCertificate": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "serverValidationCa": [], + * // "sni": "my_sni", + * // "updateTime": "my_updateTime" * // } * } * @@ -13559,54 +14942,53 @@ export namespace networksecurity_v1beta1 { * @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$Backendauthenticationconfigs$Patch, + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, + get( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clienttlspolicies$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch; + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch; + params = {} as Params$Resource$Projects$Locations$Clienttlspolicies$Get; options = {}; } @@ -13621,7 +15003,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -13632,85 +15014,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Create extends StandardParameters { - /** - * Required. Short name of the BackendAuthenticationConfig 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. "backend-auth-config". - */ - backendAuthenticationConfigId?: string; - /** - * Required. The parent resource of the BackendAuthenticationConfig. Must be in the format `projects/x/locations/{location\}`. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$BackendAuthenticationConfig; - } - export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Delete extends StandardParameters { - /** - * Optional. Etag of the resource. If this is provided, it must match the server's etag. - */ - etag?: string; - /** - * Required. A name of the BackendAuthenticationConfig to delete. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Get extends StandardParameters { - /** - * Required. A name of the BackendAuthenticationConfig to get. Must be in the format `projects/x/locations/{location\}/backendAuthenticationConfigs/x`. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$List extends StandardParameters { - /** - * Maximum number of BackendAuthenticationConfigs to return per call. - */ - pageSize?: number; - /** - * The value returned by the last `ListBackendAuthenticationConfigsResponse` Indicates that this is a continuation of a prior `ListBackendAuthenticationConfigs` call, and that the system should return the next page of data. - */ - pageToken?: string; - /** - * Required. The project and location from which the BackendAuthenticationConfigs should be listed, specified in the format `projects/x/locations/{location\}`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Backendauthenticationconfigs$Patch extends StandardParameters { - /** - * Required. Name of the BackendAuthenticationConfig resource. It matches the pattern `projects/x/locations/{location\}/backendAuthenticationConfigs/{backend_authentication_config\}` - */ - name?: string; - /** - * Optional. Field mask is used to specify the fields to be overwritten in the BackendAuthenticationConfig 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$BackendAuthenticationConfig; - } - - export class Resource$Projects$Locations$Clienttlspolicies { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new ClientTlsPolicy in a given project and location. + * 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: @@ -13734,43 +15048,27 @@ export namespace networksecurity_v1beta1 { * 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', + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); * - * // 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" - * // } - * }, - * }, - * ); + * // Do the magic + * const res = + * await networksecurity.projects.locations.clientTlsPolicies.getIamPolicy({ + * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 * // } * } * @@ -13786,54 +15084,56 @@ export namespace networksecurity_v1beta1 { * @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, + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + getIamPolicy( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + ): Promise>; + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, - callback: BodyResponseCallback + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Create; + {}) 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$Create; + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy; options = {}; } @@ -13847,32 +15147,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/clientTlsPolicies').replace( + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Deletes a single ClientTlsPolicy. + * Lists ClientTlsPolicies in a given project and location. * @example * ```js * // Before running the sample: @@ -13901,21 +15201,20 @@ export namespace networksecurity_v1beta1 { * 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', - * }, - * ); + * 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 * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "clientTlsPolicies": [], + * // "nextPageToken": "my_nextPageToken" * // } * } * @@ -13931,54 +15230,58 @@ export namespace networksecurity_v1beta1 { * @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, + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + list( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$List, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clienttlspolicies$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Delete; + {}) 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$Delete; + {} as Params$Resource$Projects$Locations$Clienttlspolicies$List; options = {}; } @@ -13992,29 +15295,34 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + url: (rootUrl + '/v1beta1/{+parent}/clientTlsPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Gets details of a single ClientTlsPolicy. + * Updates the parameters of a single ClientTlsPolicy. * @example * ```js * // Before running the sample: @@ -14043,22 +15351,36 @@ export namespace networksecurity_v1beta1 { * 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`. + * const res = await networksecurity.projects.locations.clientTlsPolicies.patch({ + * // Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/{project\}/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 * // { - * // "clientCertificate": {}, - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "serverValidationCa": [], - * // "sni": "my_sni", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -14074,53 +15396,54 @@ export namespace networksecurity_v1beta1 { * @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, + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + patch( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( - paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Get - | BodyResponseCallback + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Get; + {}) 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$Get; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Patch; options = {}; } @@ -14135,7 +15458,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + method: 'PATCH', apiVersion: '', }, options @@ -14146,17 +15469,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * 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: @@ -14186,12 +15509,19 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.clientTlsPolicies.getIamPolicy({ - * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * await networksecurity.projects.locations.clientTlsPolicies.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * 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); * @@ -14216,34 +15546,34 @@ export namespace networksecurity_v1beta1 { * @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, + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, options: StreamMethodOptions ): Promise>; - getIamPolicy( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + setIamPolicy( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, options?: MethodOptions ): Promise>; - getIamPolicy( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - getIamPolicy( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( callback: BodyResponseCallback ): void; - getIamPolicy( + setIamPolicy( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy + | Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -14259,13 +15589,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy; + {}) 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$Getiampolicy; + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy; options = {}; } @@ -14279,11 +15609,11 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options @@ -14304,7 +15634,7 @@ export namespace networksecurity_v1beta1 { } /** - * Lists ClientTlsPolicies in a given project and location. + * 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: @@ -14333,20 +15663,27 @@ export namespace networksecurity_v1beta1 { * 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', - * }); + * const res = + * await networksecurity.projects.locations.clientTlsPolicies.testIamPermissions( + * { + * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "clientTlsPolicies": [], - * // "nextPageToken": "my_nextPageToken" + * // "permissions": [] * // } * } * @@ -14362,58 +15699,62 @@ export namespace networksecurity_v1beta1 { * @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, + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$List, + testIamPermissions( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + ): Promise< + GaxiosResponseWithHTTP2 + >; + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Clienttlspolicies$List, - callback: BodyResponseCallback + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + testIamPermissions( + callback: BodyResponseCallback ): void; - list( + testIamPermissions( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$List; + {}) 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$List; + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions; options = {}; } @@ -14427,34 +15768,130 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/clientTlsPolicies').replace( + url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( /([^:]\/)\/+/g, '$1' ), - method: 'GET', + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['resource'], + pathParams: ['resource'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + 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 maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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/{project\}/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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Dnsthreatdetectors { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } /** - * Updates the parameters of a single ClientTlsPolicy. + * Creates a new DnsThreatDetector in a given project and location. * @example * ```js * // Before running the sample: @@ -14483,36 +15920,36 @@ export namespace networksecurity_v1beta1 { * 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/{project\}/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', + * const res = + * await networksecurity.projects.locations.dnsThreatDetectors.create({ + * // Optional. The ID of the requesting DnsThreatDetector object. If this field is not supplied, the service generates an identifier. + * dnsThreatDetectorId: 'placeholder-value', + * // Required. The value for the parent of the DnsThreatDetector resource. + * 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" - * // } - * }, - * }); + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "excludedNetworks": [], + * // "labels": {}, + * // "name": "my_name", + * // "provider": "my_provider", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "createTime": "my_createTime", + * // "excludedNetworks": [], + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "provider": "my_provider", + * // "updateTime": "my_updateTime" * // } * } * @@ -14528,54 +15965,54 @@ export namespace networksecurity_v1beta1 { * @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, + create( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + create( + params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Dnsthreatdetectors$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Patch; + {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clienttlspolicies$Patch; + {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Create; options = {}; } @@ -14589,29 +16026,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: (rootUrl + '/v1beta1/{+parent}/dnsThreatDetectors').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Deletes a single DnsThreatDetector. * @example * ```js * // Before running the sample: @@ -14641,29 +16081,14 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.clientTlsPolicies.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - * resource: - * 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "policy": {}, - * // "updateMask": "my_updateMask" - * // } - * }, + * await networksecurity.projects.locations.dnsThreatDetectors.delete({ + * // Required. Name of the DnsThreatDetector resource. + * name: 'projects/my-project/locations/my-location/dnsThreatDetectors/my-dnsThreatDetector', * }); * console.log(res.data); * * // Example response - * // { - * // "auditConfigs": [], - * // "bindings": [], - * // "etag": "my_etag", - * // "version": 0 - * // } + * // {} * } * * main().catch(e => { @@ -14678,56 +16103,54 @@ export namespace networksecurity_v1beta1 { * @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, + delete( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, options: StreamMethodOptions ): Promise>; - setIamPolicy( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + delete( + params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, options?: MethodOptions - ): Promise>; - setIamPolicy( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, 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 + delete( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - setIamPolicy( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, + callback: BodyResponseCallback ): void; - setIamPolicy( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy - | BodyResponseCallback + | Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy; + {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy; + {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete; options = {}; } @@ -14741,32 +16164,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + 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. + * Gets the details of a single DnsThreatDetector. * @example * ```js * // Before running the sample: @@ -14795,27 +16215,20 @@ export namespace networksecurity_v1beta1 { * 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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": [] - * // } - * }, - * }, - * ); + * const res = await networksecurity.projects.locations.dnsThreatDetectors.get({ + * // Required. Name of the DnsThreatDetector resource. + * name: 'projects/my-project/locations/my-location/dnsThreatDetectors/my-dnsThreatDetector', + * }); * console.log(res.data); * * // Example response * // { - * // "permissions": [] + * // "createTime": "my_createTime", + * // "excludedNetworks": [], + * // "labels": {}, + * // "name": "my_name", + * // "provider": "my_provider", + * // "updateTime": "my_updateTime" * // } * } * @@ -14831,62 +16244,54 @@ export namespace networksecurity_v1beta1 { * @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, + get( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, options: StreamMethodOptions ): Promise>; - testIamPermissions( - params?: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + get( + params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - 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 + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - testIamPermissions( - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, + callback: BodyResponseCallback ): void; - testIamPermissions( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions - | BodyResponseCallback + | Params$Resource$Projects$Locations$Dnsthreatdetectors$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions; + {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions; + {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Get; options = {}; } @@ -14900,130 +16305,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'POST', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['resource'], - pathParams: ['resource'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + 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 maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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/{project\}/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 [Resource names](https://cloud.google.com/apis/design/resource_names) 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 [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. - */ - resource?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; - } - - export class Resource$Projects$Locations$Dnsthreatdetectors { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new DnsThreatDetector in a given project and location. + * Lists DnsThreatDetectors in a given project and location. * @example * ```js * // Before running the sample: @@ -15052,36 +16356,21 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.dnsThreatDetectors.create({ - * // Optional. The ID of the requesting DnsThreatDetector object. If this field is not supplied, the service generates an identifier. - * dnsThreatDetectorId: 'placeholder-value', - * // Required. The value for the parent of the DnsThreatDetector resource. - * parent: 'projects/my-project/locations/my-location', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "excludedNetworks": [], - * // "labels": {}, - * // "name": "my_name", - * // "provider": "my_provider", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = await networksecurity.projects.locations.dnsThreatDetectors.list({ + * // Optional. The requested page size. The server may return fewer items than requested. If unspecified, the server picks an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A page token received from a previous `ListDnsThreatDetectorsRequest` call. Provide this to retrieve the subsequent page. + * pageToken: 'placeholder-value', + * // Required. The parent value for `ListDnsThreatDetectorsRequest`. + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "excludedNetworks": [], - * // "labels": {}, - * // "name": "my_name", - * // "provider": "my_provider", - * // "updateTime": "my_updateTime" + * // "dnsThreatDetectors": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -15097,54 +16386,58 @@ export namespace networksecurity_v1beta1 { * @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$Dnsthreatdetectors$Create, + list( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, + list( + params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dnsthreatdetectors$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Dnsthreatdetectors$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Create; + {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Create; + {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$List; options = {}; } @@ -15162,7 +16455,7 @@ export namespace networksecurity_v1beta1 { /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -15173,17 +16466,19 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes a single DnsThreatDetector. + * Updates a single DnsThreatDetector. * @example * ```js * // Before running the sample: @@ -15212,15 +16507,38 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.dnsThreatDetectors.delete({ - * // Required. Name of the DnsThreatDetector resource. + * const res = await networksecurity.projects.locations.dnsThreatDetectors.patch( + * { + * // Immutable. Identifier. Name of the DnsThreatDetector resource. * name: 'projects/my-project/locations/my-location/dnsThreatDetectors/my-dnsThreatDetector', - * }); + * // Optional. The field mask is used to specify the fields to be overwritten in the DnsThreatDetector 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 mask is not provided then all fields present in the request will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "excludedNetworks": [], + * // "labels": {}, + * // "name": "my_name", + * // "provider": "my_provider", + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response - * // {} + * // { + * // "createTime": "my_createTime", + * // "excludedNetworks": [], + * // "labels": {}, + * // "name": "my_name", + * // "provider": "my_provider", + * // "updateTime": "my_updateTime" + * // } * } * * main().catch(e => { @@ -15235,54 +16553,54 @@ export namespace networksecurity_v1beta1 { * @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$Dnsthreatdetectors$Delete, + patch( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, + patch( + params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, options?: MethodOptions - ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, + ): Promise>; + patch( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete, - callback: BodyResponseCallback + patch( + params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, + callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete - | BodyResponseCallback + | Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete; + {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete; + {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch; options = {}; } @@ -15297,7 +16615,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options @@ -15308,17 +16626,81 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Create extends StandardParameters { /** - * Gets the details of a single DnsThreatDetector. + * Optional. The ID of the requesting DnsThreatDetector object. If this field is not supplied, the service generates an identifier. + */ + dnsThreatDetectorId?: string; + /** + * Required. The value for the parent of the DnsThreatDetector resource. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DnsThreatDetector; + } + export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete extends StandardParameters { + /** + * Required. Name of the DnsThreatDetector resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Get extends StandardParameters { + /** + * Required. Name of the DnsThreatDetector resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$List extends StandardParameters { + /** + * Optional. The requested page size. The server may return fewer items than requested. If unspecified, the server picks an appropriate default. + */ + pageSize?: number; + /** + * Optional. A page token received from a previous `ListDnsThreatDetectorsRequest` call. Provide this to retrieve the subsequent page. + */ + pageToken?: string; + /** + * Required. The parent value for `ListDnsThreatDetectorsRequest`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of the DnsThreatDetector resource. + */ + name?: string; + /** + * Optional. The field mask is used to specify the fields to be overwritten in the DnsThreatDetector 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 mask is not provided then all fields present in the request will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$DnsThreatDetector; + } + + export class Resource$Projects$Locations$Firewallendpointassociations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new FirewallEndpointAssociation in a given project and location. * @example * ```js * // Before running the sample: @@ -15347,20 +16729,43 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.dnsThreatDetectors.get({ - * // Required. Name of the DnsThreatDetector resource. - * name: 'projects/my-project/locations/my-location/dnsThreatDetectors/my-dnsThreatDetector', - * }); + * const res = + * await networksecurity.projects.locations.firewallEndpointAssociations.create( + * { + * // Optional. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_association_id from the method_signature of Create RPC. + * firewallEndpointAssociationId: 'placeholder-value', + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "createTime": "my_createTime", + * // "disabled": false, + * // "firewallEndpoint": "my_firewallEndpoint", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "reconciling": false, + * // "state": "my_state", + * // "tlsInspectionPolicy": "my_tlsInspectionPolicy", + * // "updateTime": "my_updateTime" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "excludedNetworks": [], - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "provider": "my_provider", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -15376,54 +16781,54 @@ export namespace networksecurity_v1beta1 { * @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$Dnsthreatdetectors$Get, + create( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, + create( + params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dnsthreatdetectors$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpointassociations$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Get; + {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Get; + {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Create; options = {}; } @@ -15437,29 +16842,31 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: ( + rootUrl + '/v1beta1/{+parent}/firewallEndpointAssociations' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists DnsThreatDetectors in a given project and location. + * Deletes a single FirewallEndpointAssociation. * @example * ```js * // Before running the sample: @@ -15484,25 +16891,28 @@ export namespace networksecurity_v1beta1 { * }); * * // 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.dnsThreatDetectors.list({ - * // Optional. The requested page size. The server may return fewer items than requested. If unspecified, the server picks an appropriate default. - * pageSize: 'placeholder-value', - * // Optional. A page token received from a previous `ListDnsThreatDetectorsRequest` call. Provide this to retrieve the subsequent page. - * pageToken: 'placeholder-value', - * // Required. The parent value for `ListDnsThreatDetectorsRequest`. - * parent: 'projects/my-project/locations/my-location', - * }); + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.firewallEndpointAssociations.delete( + * { + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/firewallEndpointAssociations/my-firewallEndpointAssociation', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "dnsThreatDetectors": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -15518,58 +16928,54 @@ export namespace networksecurity_v1beta1 { * @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$Dnsthreatdetectors$List, + delete( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, + delete( + params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dnsthreatdetectors$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpointassociations$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$List; + {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$List; + {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Delete; options = {}; } @@ -15583,34 +16989,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/dnsThreatDetectors').replace( - /([^:]\/)\/+/g, - '$1' - ), - method: 'GET', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Updates a single DnsThreatDetector. + * Gets details of a single FirewallEndpointAssociation. * @example * ```js * // Before running the sample: @@ -15639,36 +17040,24 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.dnsThreatDetectors.patch( - * { - * // Immutable. Identifier. Name of the DnsThreatDetector resource. - * name: 'projects/my-project/locations/my-location/dnsThreatDetectors/my-dnsThreatDetector', - * // Optional. The field mask is used to specify the fields to be overwritten in the DnsThreatDetector 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 mask is not provided then all fields present in the request will be overwritten. - * updateMask: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "excludedNetworks": [], - * // "labels": {}, - * // "name": "my_name", - * // "provider": "my_provider", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * const res = + * await networksecurity.projects.locations.firewallEndpointAssociations.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/firewallEndpointAssociations/my-firewallEndpointAssociation', + * }); * console.log(res.data); * * // Example response * // { * // "createTime": "my_createTime", - * // "excludedNetworks": [], + * // "disabled": false, + * // "firewallEndpoint": "my_firewallEndpoint", * // "labels": {}, * // "name": "my_name", - * // "provider": "my_provider", + * // "network": "my_network", + * // "reconciling": false, + * // "state": "my_state", + * // "tlsInspectionPolicy": "my_tlsInspectionPolicy", * // "updateTime": "my_updateTime" * // } * } @@ -15685,54 +17074,58 @@ export namespace networksecurity_v1beta1 { * @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$Dnsthreatdetectors$Patch, + get( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, + get( + params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get( + callback: BodyResponseCallback + ): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpointassociations$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch; + {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch; + {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Get; options = {}; } @@ -15747,92 +17140,28 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', - apiVersion: '', - }, - 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$Dnsthreatdetectors$Create extends StandardParameters { - /** - * Optional. The ID of the requesting DnsThreatDetector object. If this field is not supplied, the service generates an identifier. - */ - dnsThreatDetectorId?: string; - /** - * Required. The value for the parent of the DnsThreatDetector resource. - */ - parent?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DnsThreatDetector; - } - export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Delete extends StandardParameters { - /** - * Required. Name of the DnsThreatDetector resource. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Get extends StandardParameters { - /** - * Required. Name of the DnsThreatDetector resource. - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$List extends StandardParameters { - /** - * Optional. The requested page size. The server may return fewer items than requested. If unspecified, the server picks an appropriate default. - */ - pageSize?: number; - /** - * Optional. A page token received from a previous `ListDnsThreatDetectorsRequest` call. Provide this to retrieve the subsequent page. - */ - pageToken?: string; - /** - * Required. The parent value for `ListDnsThreatDetectorsRequest`. - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Dnsthreatdetectors$Patch extends StandardParameters { - /** - * Immutable. Identifier. Name of the DnsThreatDetector resource. - */ - name?: string; - /** - * Optional. The field mask is used to specify the fields to be overwritten in the DnsThreatDetector 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 mask is not provided then all fields present in the request will be overwritten. - */ - updateMask?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$DnsThreatDetector; - } - - export class Resource$Projects$Locations$Firewallendpointassociations { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; + method: 'GET', + apiVersion: '', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } } /** - * Creates a new FirewallEndpointAssociation in a given project and location. + * Lists Associations in a given project and location. * @example * ```js * // Before running the sample: @@ -15862,42 +17191,25 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.firewallEndpointAssociations.create( - * { - * // Optional. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_association_id from the method_signature of Create RPC. - * firewallEndpointAssociationId: 'placeholder-value', - * // Required. Value for parent. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "createTime": "my_createTime", - * // "disabled": false, - * // "firewallEndpoint": "my_firewallEndpoint", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "reconciling": false, - * // "state": "my_state", - * // "tlsInspectionPolicy": "my_tlsInspectionPolicy", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * await networksecurity.projects.locations.firewallEndpointAssociations.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListAssociationsRequest + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "firewallEndpointAssociations": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -15913,54 +17225,62 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpointassociations$Create, + list( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, + list( + params?: Params$Resource$Projects$Locations$Firewallendpointassociations$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpointassociations$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpointassociations$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Create; + {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Create; + {} as Params$Resource$Projects$Locations$Firewallendpointassociations$List; options = {}; } @@ -15977,7 +17297,7 @@ export namespace networksecurity_v1beta1 { url: ( rootUrl + '/v1beta1/{+parent}/firewallEndpointAssociations' ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -15988,17 +17308,19 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes a single FirewallEndpointAssociation. + * Update a single FirewallEndpointAssociation. * @example * ```js * // Before running the sample: @@ -16028,12 +17350,31 @@ export namespace networksecurity_v1beta1 { * * // Do the magic * const res = - * await networksecurity.projects.locations.firewallEndpointAssociations.delete( + * await networksecurity.projects.locations.firewallEndpointAssociations.patch( * { - * // Required. Name of the resource + * // Immutable. Identifier. name of resource * name: 'projects/my-project/locations/my-location/firewallEndpointAssociations/my-firewallEndpointAssociation', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). * requestId: 'placeholder-value', + * // Required. Field mask is used to specify the fields to be overwritten in the Association 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 + * // { + * // "createTime": "my_createTime", + * // "disabled": false, + * // "firewallEndpoint": "my_firewallEndpoint", + * // "labels": {}, + * // "name": "my_name", + * // "network": "my_network", + * // "reconciling": false, + * // "state": "my_state", + * // "tlsInspectionPolicy": "my_tlsInspectionPolicy", + * // "updateTime": "my_updateTime" + * // } + * }, * }, * ); * console.log(res.data); @@ -16060,32 +17401,32 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpointassociations$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, + patch( + params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpointassociations$Delete + | Params$Resource$Projects$Locations$Firewallendpointassociations$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -16101,49 +17442,138 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Delete; + {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Delete; + {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; 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', + apiVersion: '', + }, + 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$Firewallendpointassociations$Create extends StandardParameters { + /** + * Optional. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_association_id from the method_signature of Create RPC. + */ + firewallEndpointAssociationId?: string; + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallEndpointAssociation; + } + export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Delete extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Firewallendpointassociations$List extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListAssociationsRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Patch extends StandardParameters { + /** + * Immutable. Identifier. name of resource + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the Association 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$FirewallEndpointAssociation; + } - const rootUrl = - options.rootUrl || 'https://networksecurity.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', - apiVersion: '', - }, - options - ), - params, - requiredParams: ['name'], - pathParams: ['name'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback + export class Resource$Projects$Locations$Firewallendpoints { + context: APIRequestContext; + wildfireVerdictChangeRequests: Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests; + constructor(context: APIRequestContext) { + this.context = context; + this.wildfireVerdictChangeRequests = + new Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests( + this.context ); - } else { - return createAPIRequest(parameters); - } } /** - * Gets details of a single FirewallEndpointAssociation. + * Creates a new FirewallEndpoint in a given project and location. * @example * ```js * // Before running the sample: @@ -16172,25 +17602,46 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.firewallEndpointAssociations.get({ - * // Required. Name of the resource - * name: 'projects/my-project/locations/my-location/firewallEndpointAssociations/my-firewallEndpointAssociation', - * }); + * const res = await networksecurity.projects.locations.firewallEndpoints.create( + * { + * // Required. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_id from the method_signature of Create RPC. + * firewallEndpointId: 'placeholder-value', + * // Required. Value for parent. + * parent: 'projects/my-project/locations/my-location', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "associatedNetworks": [], + * // "associations": [], + * // "billingProjectId": "my_billingProjectId", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "endpointSettings": {}, + * // "labels": {}, + * // "name": "my_name", + * // "reconciling": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireSettings": {} + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "createTime": "my_createTime", - * // "disabled": false, - * // "firewallEndpoint": "my_firewallEndpoint", - * // "labels": {}, + * // "done": false, + * // "error": {}, + * // "metadata": {}, * // "name": "my_name", - * // "network": "my_network", - * // "reconciling": false, - * // "state": "my_state", - * // "tlsInspectionPolicy": "my_tlsInspectionPolicy", - * // "updateTime": "my_updateTime" + * // "response": {} * // } * } * @@ -16206,58 +17657,54 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpointassociations$Get, + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, + create( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - get( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Create, + callback: BodyResponseCallback ): void; - get( + create(callback: BodyResponseCallback): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpointassociations$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Get; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Get; + {} as Params$Resource$Projects$Locations$Firewallendpoints$Create; options = {}; } @@ -16271,29 +17718,32 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta1/{+parent}/firewallEndpoints').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } /** - * Lists Associations in a given project and location. + * Deletes a single project Endpoint. * @example * ```js * // Before running the sample: @@ -16322,26 +17772,23 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.firewallEndpointAssociations.list({ - * // Optional. Filtering results - * filter: 'placeholder-value', - * // Hint for how to order the results - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. Parent value for ListAssociationsRequest - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = await networksecurity.projects.locations.firewallEndpoints.delete( + * { + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "firewallEndpointAssociations": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} * // } * } * @@ -16357,62 +17804,54 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpointassociations$List, + delete( + params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Firewallendpointassociations$List, + delete( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Delete, options?: MethodOptions - ): Promise< - GaxiosResponseWithHTTP2 - >; - list( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, + ): Promise>; + delete( + params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - list( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$List, - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + delete( + params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, + callback: BodyResponseCallback ): void; - list( + delete(callback: BodyResponseCallback): void; + delete( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpointassociations$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$Delete + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise< - GaxiosResponseWithHTTP2 - > + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$List; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Delete; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpointassociations$List; + {} as Params$Resource$Projects$Locations$Firewallendpoints$Delete; options = {}; } @@ -16426,33 +17865,29 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: ( - rootUrl + '/v1beta1/{+parent}/firewallEndpointAssociations' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( - parameters - ); + return createAPIRequest(parameters); } } /** - * Update a single FirewallEndpointAssociation. + * Gets details of a single project Endpoint. * @example * ```js * // Before running the sample: @@ -16481,43 +17916,28 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = - * await networksecurity.projects.locations.firewallEndpointAssociations.patch( - * { - * // Immutable. Identifier. name of resource - * name: 'projects/my-project/locations/my-location/firewallEndpointAssociations/my-firewallEndpointAssociation', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Association 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 - * // { - * // "createTime": "my_createTime", - * // "disabled": false, - * // "firewallEndpoint": "my_firewallEndpoint", - * // "labels": {}, - * // "name": "my_name", - * // "network": "my_network", - * // "reconciling": false, - * // "state": "my_state", - * // "tlsInspectionPolicy": "my_tlsInspectionPolicy", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * const res = await networksecurity.projects.locations.firewallEndpoints.get({ + * // Required. Name of the resource + * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, + * // "associatedNetworks": [], + * // "associations": [], + * // "billingProjectId": "my_billingProjectId", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "endpointSettings": {}, + * // "labels": {}, * // "name": "my_name", - * // "response": {} + * // "reconciling": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireSettings": {} * // } * } * @@ -16533,54 +17953,53 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpointassociations$Patch, + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Get, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, + get( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Get, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Firewallendpointassociations$Patch, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Get, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + get(callback: BodyResponseCallback): void; + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpointassociations$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpointassociations$Patch; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = - {} as Params$Resource$Projects$Locations$Firewallendpointassociations$Patch; + params = {} as Params$Resource$Projects$Locations$Firewallendpoints$Get; options = {}; } @@ -16595,7 +18014,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + method: 'GET', apiVersion: '', }, options @@ -16606,101 +18025,17 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest(parameters); } } - } - - export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Create extends StandardParameters { - /** - * Optional. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_association_id from the method_signature of Create RPC. - */ - firewallEndpointAssociationId?: string; - /** - * Required. Value for parent. - */ - parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$FirewallEndpointAssociation; - } - export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Delete extends StandardParameters { - /** - * Required. Name of the resource - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - } - export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Get extends StandardParameters { - /** - * Required. Name of the resource - */ - name?: string; - } - export interface Params$Resource$Projects$Locations$Firewallendpointassociations$List extends StandardParameters { - /** - * Optional. Filtering results - */ - filter?: string; - /** - * Hint for how to order the results - */ - orderBy?: string; - /** - * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - */ - pageSize?: number; - /** - * A token identifying a page of results the server should return. - */ - pageToken?: string; - /** - * Required. Parent value for ListAssociationsRequest - */ - parent?: string; - } - export interface Params$Resource$Projects$Locations$Firewallendpointassociations$Patch extends StandardParameters { - /** - * Immutable. Identifier. name of resource - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Required. Field mask is used to specify the fields to be overwritten in the Association 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$FirewallEndpointAssociation; - } - - export class Resource$Projects$Locations$Firewallendpoints { - context: APIRequestContext; - constructor(context: APIRequestContext) { - this.context = context; - } /** - * Creates a new FirewallEndpoint in a given project and location. + * Lists FirewallEndpoints in a given project and location. * @example * ```js * // Before running the sample: @@ -16729,45 +18064,25 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.firewallEndpoints.create( - * { - * // Required. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_id from the method_signature of Create RPC. - * firewallEndpointId: 'placeholder-value', - * // Required. Value for parent. - * parent: 'projects/my-project/locations/my-location', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "associatedNetworks": [], - * // "associations": [], - * // "billingProjectId": "my_billingProjectId", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "endpointSettings": {}, - * // "labels": {}, - * // "name": "my_name", - * // "reconciling": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "updateTime": "my_updateTime" - * // } - * }, - * }, - * ); + * const res = await networksecurity.projects.locations.firewallEndpoints.list({ + * // Optional. Filtering results + * filter: 'placeholder-value', + * // Hint for how to order the results + * orderBy: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListEndpointsRequest + * parent: 'projects/my-project/locations/my-location', + * }); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "firewallEndpoints": [], + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [] * // } * } * @@ -16783,54 +18098,58 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpoints$Create, + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$List, options: StreamMethodOptions ): Promise>; - create( - params?: Params$Resource$Projects$Locations$Firewallendpoints$Create, + list( + params?: Params$Resource$Projects$Locations$Firewallendpoints$List, options?: MethodOptions - ): Promise>; - create( - params: Params$Resource$Projects$Locations$Firewallendpoints$Create, + ): Promise>; + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Firewallendpoints$Create, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - create( - params: Params$Resource$Projects$Locations$Firewallendpoints$Create, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$List, + callback: BodyResponseCallback ): void; - create(callback: BodyResponseCallback): void; - create( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpoints$Create - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpoints$Create; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpoints$Create; + {} as Params$Resource$Projects$Locations$Firewallendpoints$List; options = {}; } @@ -16848,7 +18167,7 @@ export namespace networksecurity_v1beta1 { /([^:]\/)\/+/g, '$1' ), - method: 'POST', + method: 'GET', apiVersion: '', }, options @@ -16859,17 +18178,19 @@ export namespace networksecurity_v1beta1 { context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Deletes a single project Endpoint. + * Update a single project Endpoint. * @example * ```js * // Before running the sample: @@ -16898,14 +18219,35 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.firewallEndpoints.delete( - * { - * // Required. Name of the resource - * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', + * const res = await networksecurity.projects.locations.firewallEndpoints.patch({ + * // Immutable. Identifier. Name of resource. + * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', + * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + * requestId: 'placeholder-value', + * // Required. Field mask is used to specify the fields to be overwritten in the Endpoint 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 + * // { + * // "associatedNetworks": [], + * // "associations": [], + * // "billingProjectId": "my_billingProjectId", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "endpointSettings": {}, + * // "labels": {}, + * // "name": "my_name", + * // "reconciling": false, + * // "satisfiesPzi": false, + * // "satisfiesPzs": false, + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireSettings": {} + * // } * }, - * ); + * }); * console.log(res.data); * * // Example response @@ -16930,32 +18272,32 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpoints$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, options: StreamMethodOptions ): Promise>; - delete( - params?: Params$Resource$Projects$Locations$Firewallendpoints$Delete, + patch( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Patch, options?: MethodOptions ): Promise>; - delete( - params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, options: MethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - delete( - params: Params$Resource$Projects$Locations$Firewallendpoints$Delete, + patch( + params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, callback: BodyResponseCallback ): void; - delete(callback: BodyResponseCallback): void; - delete( + patch(callback: BodyResponseCallback): void; + patch( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpoints$Delete + | Params$Resource$Projects$Locations$Firewallendpoints$Patch | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: @@ -16971,13 +18313,13 @@ export namespace networksecurity_v1beta1 { | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpoints$Delete; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Patch; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpoints$Delete; + {} as Params$Resource$Projects$Locations$Firewallendpoints$Patch; options = {}; } @@ -16992,7 +18334,7 @@ export namespace networksecurity_v1beta1 { options: Object.assign( { url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'DELETE', + method: 'PATCH', apiVersion: '', }, options @@ -17011,9 +18353,93 @@ export namespace networksecurity_v1beta1 { return createAPIRequest(parameters); } } + } + export interface Params$Resource$Projects$Locations$Firewallendpoints$Create extends StandardParameters { /** - * Gets details of a single project Endpoint. + * Required. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_id from the method_signature of Create RPC. + */ + firewallEndpointId?: string; + /** + * Required. Value for parent. + */ + parent?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$FirewallEndpoint; + } + export interface Params$Resource$Projects$Locations$Firewallendpoints$Delete extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + } + export interface Params$Resource$Projects$Locations$Firewallendpoints$Get extends StandardParameters { + /** + * Required. Name of the resource + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Firewallendpoints$List extends StandardParameters { + /** + * Optional. Filtering results + */ + filter?: string; + /** + * Hint for how to order the results + */ + orderBy?: string; + /** + * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + */ + pageSize?: number; + /** + * A token identifying a page of results the server should return. + */ + pageToken?: string; + /** + * Required. Parent value for ListEndpointsRequest + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Firewallendpoints$Patch extends StandardParameters { + /** + * Immutable. Identifier. Name of resource. + */ + name?: string; + /** + * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + */ + requestId?: string; + /** + * Required. Field mask is used to specify the fields to be overwritten in the Endpoint 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$FirewallEndpoint; + } + + export class Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Create WildfireVerdictChangeRequest in a given Firewall Endpoint in a project and location. * @example * ```js * // Before running the sample: @@ -17042,27 +18468,53 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.firewallEndpoints.get({ - * // Required. Name of the resource - * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', - * }); + * const res = + * await networksecurity.projects.locations.firewallEndpoints.wildfireVerdictChangeRequests.create( + * { + * // Required. Parent value for CreateWildfireVerdictChangeRequestRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} + * parent: + * 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "comment": "my_comment", + * // "createTime": "my_createTime", + * // "fileName": "my_fileName", + * // "fileType": "my_fileType", + * // "finalVerdict": "my_finalVerdict", + * // "name": "my_name", + * // "newVerdict": "my_newVerdict", + * // "oldVerdict": "my_oldVerdict", + * // "resolutionTime": "my_resolutionTime", + * // "sha256": "my_sha256", + * // "sourceRegion": "my_sourceRegion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireVerdictChangeRequestId": "my_wildfireVerdictChangeRequestId" + * // } + * }, + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "associatedNetworks": [], - * // "associations": [], - * // "billingProjectId": "my_billingProjectId", + * // "comment": "my_comment", * // "createTime": "my_createTime", - * // "description": "my_description", - * // "endpointSettings": {}, - * // "labels": {}, + * // "fileName": "my_fileName", + * // "fileType": "my_fileType", + * // "finalVerdict": "my_finalVerdict", * // "name": "my_name", - * // "reconciling": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, + * // "newVerdict": "my_newVerdict", + * // "oldVerdict": "my_oldVerdict", + * // "resolutionTime": "my_resolutionTime", + * // "sha256": "my_sha256", + * // "sourceRegion": "my_sourceRegion", * // "state": "my_state", - * // "updateTime": "my_updateTime" + * // "updateTime": "my_updateTime", + * // "wildfireVerdictChangeRequestId": "my_wildfireVerdictChangeRequestId" * // } * } * @@ -17078,53 +18530,58 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpoints$Get, + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, options: StreamMethodOptions ): Promise>; - get( - params?: Params$Resource$Projects$Locations$Firewallendpoints$Get, + create( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, options?: MethodOptions - ): Promise>; - get( - params: Params$Resource$Projects$Locations$Firewallendpoints$Get, + ): Promise>; + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Firewallendpoints$Get, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - get( - params: Params$Resource$Projects$Locations$Firewallendpoints$Get, - callback: BodyResponseCallback + create( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create, + callback: BodyResponseCallback ): void; - get(callback: BodyResponseCallback): void; - get( + create( + callback: BodyResponseCallback + ): void; + create( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpoints$Get - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpoints$Get; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; - params = {} as Params$Resource$Projects$Locations$Firewallendpoints$Get; + params = + {} as Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create; options = {}; } @@ -17138,29 +18595,33 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'GET', + url: ( + rootUrl + '/v1beta1/{+parent}/wildfireVerdictChangeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } /** - * Lists FirewallEndpoints in a given project and location. + * Get WildfireVerdictChangeRequest in a given Firewall Endpoint in a project and location. * @example * ```js * // Before running the sample: @@ -17189,25 +18650,31 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.firewallEndpoints.list({ - * // Optional. Filtering results - * filter: 'placeholder-value', - * // Hint for how to order the results - * orderBy: 'placeholder-value', - * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. - * pageSize: 'placeholder-value', - * // A token identifying a page of results the server should return. - * pageToken: 'placeholder-value', - * // Required. Parent value for ListEndpointsRequest - * parent: 'projects/my-project/locations/my-location', - * }); + * const res = + * await networksecurity.projects.locations.firewallEndpoints.wildfireVerdictChangeRequests.get( + * { + * // Required. Name of the WildfireVerdictChangeRequest to retrieve. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id\} Where {wildfire_verdict_change_request_id\} is the ID in the format: ^[0-9a-fA-F]{8\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{12\}$ + * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint/wildfireVerdictChangeRequests/my-wildfireVerdictChangeRequest', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "firewallEndpoints": [], - * // "nextPageToken": "my_nextPageToken", - * // "unreachable": [] + * // "comment": "my_comment", + * // "createTime": "my_createTime", + * // "fileName": "my_fileName", + * // "fileType": "my_fileType", + * // "finalVerdict": "my_finalVerdict", + * // "name": "my_name", + * // "newVerdict": "my_newVerdict", + * // "oldVerdict": "my_oldVerdict", + * // "resolutionTime": "my_resolutionTime", + * // "sha256": "my_sha256", + * // "sourceRegion": "my_sourceRegion", + * // "state": "my_state", + * // "updateTime": "my_updateTime", + * // "wildfireVerdictChangeRequestId": "my_wildfireVerdictChangeRequestId" * // } * } * @@ -17223,58 +18690,58 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpoints$List, + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options: StreamMethodOptions ): Promise>; - list( - params?: Params$Resource$Projects$Locations$Firewallendpoints$List, + get( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options?: MethodOptions - ): Promise>; - list( - params: Params$Resource$Projects$Locations$Firewallendpoints$List, + ): Promise>; + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Firewallendpoints$List, + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, options: | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - list( - params: Params$Resource$Projects$Locations$Firewallendpoints$List, - callback: BodyResponseCallback + get( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get, + callback: BodyResponseCallback ): void; - list( - callback: BodyResponseCallback + get( + callback: BodyResponseCallback ): void; - list( + get( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpoints$List - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise> | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpoints$List; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpoints$List; + {} as Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get; options = {}; } @@ -17288,34 +18755,31 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+parent}/firewallEndpoints').replace( - /([^:]\/)\/+/g, - '$1' - ), + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['parent'], - pathParams: ['parent'], + requiredParams: ['name'], + pathParams: ['name'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest( + return createAPIRequest( parameters ); } } /** - * Update a single project Endpoint. + * Lists WildfireVerdictChangeRequests in a given Firewall Endpoint in a project and location. * @example * ```js * // Before running the sample: @@ -17344,43 +18808,27 @@ export namespace networksecurity_v1beta1 { * google.options({auth: authClient}); * * // Do the magic - * const res = await networksecurity.projects.locations.firewallEndpoints.patch({ - * // Immutable. Identifier. Name of resource. - * name: 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', - * // Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - * requestId: 'placeholder-value', - * // Required. Field mask is used to specify the fields to be overwritten in the Endpoint 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 - * // { - * // "associatedNetworks": [], - * // "associations": [], - * // "billingProjectId": "my_billingProjectId", - * // "createTime": "my_createTime", - * // "description": "my_description", - * // "endpointSettings": {}, - * // "labels": {}, - * // "name": "my_name", - * // "reconciling": false, - * // "satisfiesPzi": false, - * // "satisfiesPzs": false, - * // "state": "my_state", - * // "updateTime": "my_updateTime" - * // } - * }, - * }); + * const res = + * await networksecurity.projects.locations.firewallEndpoints.wildfireVerdictChangeRequests.list( + * { + * // Optional. Filter expression to filter the results. See AIP-160 for filtering syntax. Supported fields are: - `sha256` (string, equality only, e.g. `sha256 = "..."`) - `state` (enum, equality only, e.g. `state = "ACTIVE"`) - `create_time` (timestamp, comparisons, e.g. `create_time \> "2026-01-01T00:00:00Z"`) + * filter: 'placeholder-value', + * // Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. + * pageSize: 'placeholder-value', + * // Optional. A token identifying a page of results the server should return. + * pageToken: 'placeholder-value', + * // Required. Parent value for ListWildfireVerdictChangeRequestsRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} + * parent: + * 'projects/my-project/locations/my-location/firewallEndpoints/my-firewallEndpoint', + * }, + * ); * console.log(res.data); * * // Example response * // { - * // "done": false, - * // "error": {}, - * // "metadata": {}, - * // "name": "my_name", - * // "response": {} + * // "nextPageToken": "my_nextPageToken", + * // "unreachable": [], + * // "wildfireVerdictChangeRequests": [] * // } * } * @@ -17396,54 +18844,62 @@ export namespace networksecurity_v1beta1 { * @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$Firewallendpoints$Patch, + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, options: StreamMethodOptions ): Promise>; - patch( - params?: Params$Resource$Projects$Locations$Firewallendpoints$Patch, + list( + params?: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, options?: MethodOptions - ): Promise>; - patch( - params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, + ): Promise< + GaxiosResponseWithHTTP2 + >; + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, options: StreamMethodOptions | BodyResponseCallback, callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, - options: MethodOptions | BodyResponseCallback, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback ): void; - patch( - params: Params$Resource$Projects$Locations$Firewallendpoints$Patch, - callback: BodyResponseCallback + list( + params: Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List, + callback: BodyResponseCallback ): void; - patch(callback: BodyResponseCallback): void; - patch( + list( + callback: BodyResponseCallback + ): void; + list( paramsOrCallback?: - | Params$Resource$Projects$Locations$Firewallendpoints$Patch - | BodyResponseCallback + | Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List + | BodyResponseCallback | BodyResponseCallback, optionsOrCallback?: | MethodOptions | StreamMethodOptions - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback, callback?: - | BodyResponseCallback + | BodyResponseCallback | BodyResponseCallback ): | void - | Promise> + | Promise< + GaxiosResponseWithHTTP2 + > | Promise> { let params = (paramsOrCallback || - {}) as Params$Resource$Projects$Locations$Firewallendpoints$Patch; + {}) as Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List; let options = (optionsOrCallback || {}) as MethodOptions; if (typeof paramsOrCallback === 'function') { callback = paramsOrCallback; params = - {} as Params$Resource$Projects$Locations$Firewallendpoints$Patch; + {} as Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List; options = {}; } @@ -17457,104 +18913,67 @@ export namespace networksecurity_v1beta1 { const parameters = { options: Object.assign( { - url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), - method: 'PATCH', + url: ( + rootUrl + '/v1beta1/{+parent}/wildfireVerdictChangeRequests' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', apiVersion: '', }, options ), params, - requiredParams: ['name'], - pathParams: ['name'], + requiredParams: ['parent'], + pathParams: ['parent'], context: this.context, }; if (callback) { - createAPIRequest( + createAPIRequest( parameters, callback as BodyResponseCallback ); } else { - return createAPIRequest(parameters); + return createAPIRequest( + parameters + ); } } } - export interface Params$Resource$Projects$Locations$Firewallendpoints$Create extends StandardParameters { - /** - * Required. Id of the requesting object. If auto-generating Id server-side, remove this field and firewall_endpoint_id from the method_signature of Create RPC. - */ - firewallEndpointId?: string; + export interface Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Create extends StandardParameters { /** - * Required. Value for parent. + * Required. Parent value for CreateWildfireVerdictChangeRequestRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} */ parent?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; /** * Request body metadata */ - requestBody?: Schema$FirewallEndpoint; - } - export interface Params$Resource$Projects$Locations$Firewallendpoints$Delete extends StandardParameters { - /** - * Required. Name of the resource - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; + requestBody?: Schema$WildfireVerdictChangeRequest; } - export interface Params$Resource$Projects$Locations$Firewallendpoints$Get extends StandardParameters { + export interface Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$Get extends StandardParameters { /** - * Required. Name of the resource + * Required. Name of the WildfireVerdictChangeRequest to retrieve. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\}/wildfireVerdictChangeRequests/{wildfire_verdict_change_request_id\} Where {wildfire_verdict_change_request_id\} is the ID in the format: ^[0-9a-fA-F]{8\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{4\}-[0-9a-fA-F]{12\}$ */ name?: string; } - export interface Params$Resource$Projects$Locations$Firewallendpoints$List extends StandardParameters { + export interface Params$Resource$Projects$Locations$Firewallendpoints$Wildfireverdictchangerequests$List extends StandardParameters { /** - * Optional. Filtering results + * Optional. Filter expression to filter the results. See AIP-160 for filtering syntax. Supported fields are: - `sha256` (string, equality only, e.g. `sha256 = "..."`) - `state` (enum, equality only, e.g. `state = "ACTIVE"`) - `create_time` (timestamp, comparisons, e.g. `create_time \> "2026-01-01T00:00:00Z"`) */ filter?: string; - /** - * Hint for how to order the results - */ - orderBy?: string; /** * Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default. */ pageSize?: number; /** - * A token identifying a page of results the server should return. + * Optional. A token identifying a page of results the server should return. */ pageToken?: string; /** - * Required. Parent value for ListEndpointsRequest + * Required. Parent value for ListWildfireVerdictChangeRequestsRequest. The parent is a firewall endpoint resource. Format: organizations|projects/{project_or_organization\}/locations/{location\}/firewallEndpoints/{firewall_endpoint\} */ parent?: string; } - export interface Params$Resource$Projects$Locations$Firewallendpoints$Patch extends StandardParameters { - /** - * Immutable. Identifier. Name of resource. - */ - name?: string; - /** - * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). - */ - requestId?: string; - /** - * Required. Field mask is used to specify the fields to be overwritten in the Endpoint 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$FirewallEndpoint; - } export class Resource$Projects$Locations$Gatewaysecuritypolicies { context: APIRequestContext; @@ -28134,7 +29553,8 @@ export namespace networksecurity_v1beta1 { * // "name": "my_name", * // "threatPreventionProfile": "my_threatPreventionProfile", * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": "my_urlFilteringProfile" + * // "urlFilteringProfile": "my_urlFilteringProfile", + * // "wildfireAnalysisProfile": "my_wildfireAnalysisProfile" * // } * }, * }); @@ -28439,7 +29859,8 @@ export namespace networksecurity_v1beta1 { * // "name": "my_name", * // "threatPreventionProfile": "my_threatPreventionProfile", * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": "my_urlFilteringProfile" + * // "urlFilteringProfile": "my_urlFilteringProfile", + * // "wildfireAnalysisProfile": "my_wildfireAnalysisProfile" * // } * } * @@ -28745,7 +30166,8 @@ export namespace networksecurity_v1beta1 { * // "name": "my_name", * // "threatPreventionProfile": "my_threatPreventionProfile", * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": "my_urlFilteringProfile" + * // "urlFilteringProfile": "my_urlFilteringProfile", + * // "wildfireAnalysisProfile": "my_wildfireAnalysisProfile" * // } * }, * }); @@ -28973,7 +30395,8 @@ export namespace networksecurity_v1beta1 { * // "threatPreventionProfile": {}, * // "type": "my_type", * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": {} + * // "urlFilteringProfile": {}, + * // "wildfireAnalysisProfile": {} * // } * }, * }); @@ -29276,7 +30699,8 @@ export namespace networksecurity_v1beta1 { * // "threatPreventionProfile": {}, * // "type": "my_type", * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": {} + * // "urlFilteringProfile": {}, + * // "wildfireAnalysisProfile": {} * // } * } * @@ -29572,7 +30996,8 @@ export namespace networksecurity_v1beta1 { * // "threatPreventionProfile": {}, * // "type": "my_type", * // "updateTime": "my_updateTime", - * // "urlFilteringProfile": {} + * // "urlFilteringProfile": {}, + * // "wildfireAnalysisProfile": {} * // } * }, * }); From f2a43ec30ff883e4724f65a580ee261257dc7103 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:12 +0000 Subject: [PATCH 23/29] feat(redis): update the API #### redis:v1beta1 The following keys were added: - schemas.DatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.description - schemas.DatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.type - schemas.DatabaseResourceMetadata.properties.additionalMetadata.description - schemas.DatabaseResourceMetadata.properties.additionalMetadata.type - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.description - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.type - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.description - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.type - schemas.DatabaseResourceMetadata.properties.ipAddress.$ref - schemas.DatabaseResourceMetadata.properties.ipAddress.description - schemas.IpAddress.description - schemas.IpAddress.id - schemas.IpAddress.properties.privateIp.description - schemas.IpAddress.properties.privateIp.type - schemas.IpAddress.properties.publicIp.description - schemas.IpAddress.properties.publicIp.type - schemas.IpAddress.type - schemas.ResourceMaintenanceInfo.properties.nextAvailableMaintenanceVersions.description - schemas.ResourceMaintenanceInfo.properties.nextAvailableMaintenanceVersions.items.type - schemas.ResourceMaintenanceInfo.properties.nextAvailableMaintenanceVersions.type The following keys were changed: - schemas.DatabaseResourceMetadata.description - schemas.Product.properties.engine.enum - schemas.Product.properties.engine.enumDeprecated - schemas.Product.properties.engine.enumDescriptions #### redis:v1 The following keys were added: - schemas.DatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.description - schemas.DatabaseResourceMetadata.properties.additionalMetadata.additionalProperties.type - schemas.DatabaseResourceMetadata.properties.additionalMetadata.description - schemas.DatabaseResourceMetadata.properties.additionalMetadata.type - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.description - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.additionalProperties.type - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.description - schemas.DatabaseResourceMetadata.properties.internalAdditionalMetadata.type - schemas.DatabaseResourceMetadata.properties.ipAddress.$ref - schemas.DatabaseResourceMetadata.properties.ipAddress.description - schemas.IpAddress.description - schemas.IpAddress.id - schemas.IpAddress.properties.privateIp.description - schemas.IpAddress.properties.privateIp.type - schemas.IpAddress.properties.publicIp.description - schemas.IpAddress.properties.publicIp.type - schemas.IpAddress.type - schemas.ResourceMaintenanceInfo.properties.nextAvailableMaintenanceVersions.description - schemas.ResourceMaintenanceInfo.properties.nextAvailableMaintenanceVersions.items.type - schemas.ResourceMaintenanceInfo.properties.nextAvailableMaintenanceVersions.type The following keys were changed: - schemas.DatabaseResourceMetadata.description - schemas.Product.properties.engine.enum - schemas.Product.properties.engine.enumDeprecated - schemas.Product.properties.engine.enumDescriptions --- discovery/redis-v1.json | 49 ++++++++++++++++++++++++++++++++++-- discovery/redis-v1beta1.json | 49 ++++++++++++++++++++++++++++++++++-- src/apis/redis/v1.ts | 31 ++++++++++++++++++++++- src/apis/redis/v1beta1.ts | 31 ++++++++++++++++++++++- 4 files changed, 154 insertions(+), 6 deletions(-) diff --git a/discovery/redis-v1.json b/discovery/redis-v1.json index 167e54697c..c5df8abf66 100644 --- a/discovery/redis-v1.json +++ b/discovery/redis-v1.json @@ -1608,7 +1608,7 @@ } } }, - "revision": "20260423", + "revision": "20260526", "rootUrl": "https://redis.googleapis.com/", "schemas": { "AOFConfig": { @@ -3321,9 +3321,17 @@ "type": "object" }, "DatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 32", + "description": "Common model for database resource instance metadata. Next ID: 35", "id": "DatabaseResourceMetadata", "properties": { + "additionalMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Field to ingest additional metadata whichd does not support proto format.", + "type": "object" + }, "availabilityConfiguration": { "$ref": "AvailabilityConfiguration", "description": "Availability configuration for this instance" @@ -3477,6 +3485,18 @@ ], "type": "string" }, + "internalAdditionalMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Field to ingest additional metadata which support proto format.", + "type": "object" + }, + "ipAddress": { + "$ref": "IpAddress", + "description": "Optional. Private and public IP address of the resource." + }, "isDeletionProtectionEnabled": { "description": "Optional. Whether deletion protection is enabled for this resource.", "type": "boolean" @@ -4703,6 +4723,21 @@ }, "type": "object" }, + "IpAddress": { + "description": "Used to send IP address information for a database resource.", + "id": "IpAddress", + "properties": { + "privateIp": { + "description": "The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., \"10.0.0.2\").", + "type": "string" + }, + "publicIp": { + "description": "The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., \"34.72.1.1\").", + "type": "string" + } + }, + "type": "object" + }, "ListAclPoliciesResponse": { "description": "Response for `ListAclPolicies`.", "id": "ListAclPoliciesResponse", @@ -5373,6 +5408,7 @@ "ENGINE_CLOUD_SPANNER_WITH_GOOGLESQL_DIALECT", "ENGINE_MEMORYSTORE_FOR_REDIS", "ENGINE_MEMORYSTORE_FOR_REDIS_CLUSTER", + "ENGINE_MEMORSTORE_FOR_VALKEY", "ENGINE_OTHER", "ENGINE_FIRESTORE_WITH_NATIVE_MODE", "ENGINE_FIRESTORE_WITH_DATASTORE_MODE", @@ -5399,6 +5435,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -5415,6 +5452,7 @@ "Cloud Spanner with Google SQL dialect.", "Memorystore with Redis dialect.", "Memorystore with Redis cluster dialect.", + "Memorystore with Valkey dialect.", "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum.", "Firestore with native mode.", "Firestore with datastore mode.", @@ -5909,6 +5947,13 @@ "description": "Optional. Current Maintenance version of the database resource. Example: \"MYSQL_8_0_41.R20250531.01_15\"", "type": "string" }, + "nextAvailableMaintenanceVersions": { + "description": "Optional. List of next available maintenance versions.", + "items": { + "type": "string" + }, + "type": "array" + }, "upcomingMaintenance": { "$ref": "UpcomingMaintenance", "description": "Optional. Upcoming maintenance for the database resource. This field is populated once SLM generates and publishes upcoming maintenance window." diff --git a/discovery/redis-v1beta1.json b/discovery/redis-v1beta1.json index b0ef125c34..3a694d136d 100644 --- a/discovery/redis-v1beta1.json +++ b/discovery/redis-v1beta1.json @@ -1604,7 +1604,7 @@ } } }, - "revision": "20260423", + "revision": "20260526", "rootUrl": "https://redis.googleapis.com/", "schemas": { "AOFConfig": { @@ -3317,9 +3317,17 @@ "type": "object" }, "DatabaseResourceMetadata": { - "description": "Common model for database resource instance metadata. Next ID: 32", + "description": "Common model for database resource instance metadata. Next ID: 35", "id": "DatabaseResourceMetadata", "properties": { + "additionalMetadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Field to ingest additional metadata whichd does not support proto format.", + "type": "object" + }, "availabilityConfiguration": { "$ref": "AvailabilityConfiguration", "description": "Availability configuration for this instance" @@ -3473,6 +3481,18 @@ ], "type": "string" }, + "internalAdditionalMetadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Field to ingest additional metadata which support proto format.", + "type": "object" + }, + "ipAddress": { + "$ref": "IpAddress", + "description": "Optional. Private and public IP address of the resource." + }, "isDeletionProtectionEnabled": { "description": "Optional. Whether deletion protection is enabled for this resource.", "type": "boolean" @@ -4706,6 +4726,21 @@ }, "type": "object" }, + "IpAddress": { + "description": "Used to send IP address information for a database resource.", + "id": "IpAddress", + "properties": { + "privateIp": { + "description": "The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., \"10.0.0.2\").", + "type": "string" + }, + "publicIp": { + "description": "The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., \"34.72.1.1\").", + "type": "string" + } + }, + "type": "object" + }, "ListAclPoliciesResponse": { "description": "Response for `ListAclPolicies`.", "id": "ListAclPoliciesResponse", @@ -5376,6 +5411,7 @@ "ENGINE_CLOUD_SPANNER_WITH_GOOGLESQL_DIALECT", "ENGINE_MEMORYSTORE_FOR_REDIS", "ENGINE_MEMORYSTORE_FOR_REDIS_CLUSTER", + "ENGINE_MEMORSTORE_FOR_VALKEY", "ENGINE_OTHER", "ENGINE_FIRESTORE_WITH_NATIVE_MODE", "ENGINE_FIRESTORE_WITH_DATASTORE_MODE", @@ -5402,6 +5438,7 @@ false, false, false, + false, false ], "enumDescriptions": [ @@ -5418,6 +5455,7 @@ "Cloud Spanner with Google SQL dialect.", "Memorystore with Redis dialect.", "Memorystore with Redis cluster dialect.", + "Memorystore with Valkey dialect.", "Other refers to rest of other database engine. This is to be when engine is known, but it is not present in this enum.", "Firestore with native mode.", "Firestore with datastore mode.", @@ -5912,6 +5950,13 @@ "description": "Optional. Current Maintenance version of the database resource. Example: \"MYSQL_8_0_41.R20250531.01_15\"", "type": "string" }, + "nextAvailableMaintenanceVersions": { + "description": "Optional. List of next available maintenance versions.", + "items": { + "type": "string" + }, + "type": "array" + }, "upcomingMaintenance": { "$ref": "UpcomingMaintenance", "description": "Optional. Upcoming maintenance for the database resource. This field is populated once SLM generates and publishes upcoming maintenance window." diff --git a/src/apis/redis/v1.ts b/src/apis/redis/v1.ts index 83ee7b47be..f2dfbe9b4c 100644 --- a/src/apis/redis/v1.ts +++ b/src/apis/redis/v1.ts @@ -934,9 +934,13 @@ export namespace redis_v1 { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 32 + * Common model for database resource instance metadata. Next ID: 35 */ export interface Schema$DatabaseResourceMetadata { + /** + * Field to ingest additional metadata whichd does not support proto format. + */ + additionalMetadata?: {[key: string]: any} | null; /** * Availability configuration for this instance */ @@ -989,6 +993,14 @@ export namespace redis_v1 { * The type of the instance. Specified at creation time. */ instanceType?: string | null; + /** + * Field to ingest additional metadata which support proto format. + */ + internalAdditionalMetadata?: {[key: string]: any} | null; + /** + * Optional. Private and public IP address of the resource. + */ + ipAddress?: Schema$IpAddress; /** * Optional. Whether deletion protection is enabled for this resource. */ @@ -1531,6 +1543,19 @@ export namespace redis_v1 { */ resourceName?: string | null; } + /** + * Used to send IP address information for a database resource. + */ + export interface Schema$IpAddress { + /** + * The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., "10.0.0.2"). + */ + privateIp?: string | null; + /** + * The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., "34.72.1.1"). + */ + publicIp?: string | null; + } /** * Response for `ListAclPolicies`. */ @@ -2200,6 +2225,10 @@ export namespace redis_v1 { * Optional. Current Maintenance version of the database resource. Example: "MYSQL_8_0_41.R20250531.01_15" */ maintenanceVersion?: string | null; + /** + * Optional. List of next available maintenance versions. + */ + nextAvailableMaintenanceVersions?: string[] | null; /** * Optional. Upcoming maintenance for the database resource. This field is populated once SLM generates and publishes upcoming maintenance window. */ diff --git a/src/apis/redis/v1beta1.ts b/src/apis/redis/v1beta1.ts index 184ff301d7..c133991a8c 100644 --- a/src/apis/redis/v1beta1.ts +++ b/src/apis/redis/v1beta1.ts @@ -934,9 +934,13 @@ export namespace redis_v1beta1 { uniqueId?: string | null; } /** - * Common model for database resource instance metadata. Next ID: 32 + * Common model for database resource instance metadata. Next ID: 35 */ export interface Schema$DatabaseResourceMetadata { + /** + * Field to ingest additional metadata whichd does not support proto format. + */ + additionalMetadata?: {[key: string]: any} | null; /** * Availability configuration for this instance */ @@ -989,6 +993,14 @@ export namespace redis_v1beta1 { * The type of the instance. Specified at creation time. */ instanceType?: string | null; + /** + * Field to ingest additional metadata which support proto format. + */ + internalAdditionalMetadata?: {[key: string]: any} | null; + /** + * Optional. Private and public IP address of the resource. + */ + ipAddress?: Schema$IpAddress; /** * Optional. Whether deletion protection is enabled for this resource. */ @@ -1531,6 +1543,19 @@ export namespace redis_v1beta1 { */ resourceName?: string | null; } + /** + * Used to send IP address information for a database resource. + */ + export interface Schema$IpAddress { + /** + * The private IP address assigned to the resource within a Virtual Private Cloud (VPC). This IP is only reachable from within the same VPC network. Stored in standard string format (e.g., "10.0.0.2"). + */ + privateIp?: string | null; + /** + * The public IP address assigned to the resource. This IP is reachable from the internet. Stored in standard string format (e.g., "34.72.1.1"). + */ + publicIp?: string | null; + } /** * Response for `ListAclPolicies`. */ @@ -2200,6 +2225,10 @@ export namespace redis_v1beta1 { * Optional. Current Maintenance version of the database resource. Example: "MYSQL_8_0_41.R20250531.01_15" */ maintenanceVersion?: string | null; + /** + * Optional. List of next available maintenance versions. + */ + nextAvailableMaintenanceVersions?: string[] | null; /** * Optional. Upcoming maintenance for the database resource. This field is populated once SLM generates and publishes upcoming maintenance window. */ From 47f240c2dce8f2bc08eb97eb061cdbf150495543 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:13 +0000 Subject: [PATCH 24/29] feat(securitycenter)!: update the API BREAKING CHANGE: This release has breaking changes. #### securitycenter:v1beta1 The following keys were deleted: - resources.organizations.methods.getOrganizationSettings.parameters.name.description - resources.organizations.methods.updateOrganizationSettings.parameters.name.description - resources.organizations.methods.updateOrganizationSettings.parameters.updateMask.description - resources.organizations.resources.assets.methods.group.parameters.parent.description - resources.organizations.resources.assets.methods.list.parameters.compareDuration.description - resources.organizations.resources.assets.methods.list.parameters.fieldMask.description - resources.organizations.resources.assets.methods.list.parameters.filter.description - resources.organizations.resources.assets.methods.list.parameters.orderBy.description - resources.organizations.resources.assets.methods.list.parameters.pageSize.description - resources.organizations.resources.assets.methods.list.parameters.pageToken.description - resources.organizations.resources.assets.methods.list.parameters.parent.description - resources.organizations.resources.assets.methods.list.parameters.readTime.description - resources.organizations.resources.assets.methods.runDiscovery.parameters.parent.description - resources.organizations.resources.assets.methods.updateSecurityMarks.parameters.name.description - resources.organizations.resources.assets.methods.updateSecurityMarks.parameters.startTime.description - resources.organizations.resources.assets.methods.updateSecurityMarks.parameters.updateMask.description - resources.organizations.resources.operations.methods.cancel.parameters.name.description - resources.organizations.resources.operations.methods.delete.parameters.name.description - resources.organizations.resources.operations.methods.get.parameters.name.description - resources.organizations.resources.operations.methods.list.parameters.filter.description - resources.organizations.resources.operations.methods.list.parameters.name.description - resources.organizations.resources.operations.methods.list.parameters.pageSize.description - resources.organizations.resources.operations.methods.list.parameters.pageToken.description - resources.organizations.resources.operations.methods.list.parameters.returnPartialSuccess.description - resources.organizations.resources.sources.methods.create.parameters.parent.description - resources.organizations.resources.sources.methods.get.parameters.name.description - resources.organizations.resources.sources.methods.getIamPolicy.parameters.resource.description - resources.organizations.resources.sources.methods.list.parameters.pageSize.description - resources.organizations.resources.sources.methods.list.parameters.pageToken.description - resources.organizations.resources.sources.methods.list.parameters.parent.description - resources.organizations.resources.sources.methods.patch.parameters.name.description - resources.organizations.resources.sources.methods.patch.parameters.updateMask.description - resources.organizations.resources.sources.methods.setIamPolicy.parameters.resource.description - resources.organizations.resources.sources.methods.testIamPermissions.parameters.resource.description - resources.organizations.resources.sources.resources.findings.methods.create.parameters.findingId.description - resources.organizations.resources.sources.resources.findings.methods.create.parameters.parent.description - resources.organizations.resources.sources.resources.findings.methods.group.parameters.parent.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.fieldMask.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.filter.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.orderBy.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.pageSize.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.pageToken.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.parent.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.readTime.description - resources.organizations.resources.sources.resources.findings.methods.patch.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.patch.parameters.updateMask.description - resources.organizations.resources.sources.resources.findings.methods.setState.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.startTime.description - resources.organizations.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.updateMask.description - schemas.Access.description - schemas.Access.properties.callerIp.description - schemas.Access.properties.callerIpGeo.description - schemas.Access.properties.methodName.description - schemas.Access.properties.principalEmail.description - schemas.Access.properties.principalSubject.description - schemas.Access.properties.serviceAccountDelegationInfo.description - schemas.Access.properties.serviceAccountKeyName.description - schemas.Access.properties.serviceName.description - schemas.Access.properties.userAgent.description - schemas.Access.properties.userAgentFamily.description - schemas.Access.properties.userName.description - schemas.AccessReview.description - schemas.AccessReview.properties.group.description - schemas.AccessReview.properties.name.description - schemas.AccessReview.properties.ns.description - schemas.AccessReview.properties.resource.description - schemas.AccessReview.properties.subresource.description - schemas.AccessReview.properties.verb.description - schemas.AccessReview.properties.version.description - schemas.AdaptiveProtection.description - schemas.AdaptiveProtection.properties.confidence.description - schemas.AdcApplication.description - schemas.AdcApplication.properties.attributes.description - schemas.AdcApplication.properties.name.description - schemas.AdcApplicationTemplateRevision.description - schemas.AdcApplicationTemplateRevision.properties.name.description - schemas.AdcSharedTemplateRevision.description - schemas.AdcSharedTemplateRevision.properties.name.description - schemas.AffectedResources.description - schemas.AffectedResources.properties.count.description - schemas.AgentDataAccessEvent.description - schemas.AgentDataAccessEvent.properties.eventId.description - schemas.AgentDataAccessEvent.properties.eventTime.description - schemas.AgentDataAccessEvent.properties.operation.description - schemas.AgentDataAccessEvent.properties.principalSubject.description - schemas.AiModel.description - schemas.AiModel.properties.deploymentPlatform.description - schemas.AiModel.properties.displayName.description - schemas.AiModel.properties.domain.description - schemas.AiModel.properties.library.description - schemas.AiModel.properties.location.description - schemas.AiModel.properties.name.description - schemas.AiModel.properties.publisher.description - schemas.AiModel.properties.usageCategory.description - schemas.Allowed.description - schemas.Allowed.properties.ipRules.description - schemas.Application.description - schemas.Application.properties.baseUri.description - schemas.Application.properties.fullUri.description - schemas.ArtifactGuardPolicies.description - schemas.ArtifactGuardPolicies.properties.failingPolicies.description - schemas.ArtifactGuardPolicies.properties.resourceId.description - schemas.ArtifactGuardPolicy.description - schemas.ArtifactGuardPolicy.properties.failureReason.description - schemas.ArtifactGuardPolicy.properties.policyId.description - schemas.ArtifactGuardPolicy.properties.type.description - schemas.Asset.description - schemas.Asset.properties.createTime.description - schemas.Asset.properties.name.description - schemas.Asset.properties.resourceProperties.description - schemas.Asset.properties.securityCenterProperties.description - schemas.Asset.properties.securityMarks.description - schemas.Asset.properties.updateTime.description - schemas.AssetDiscoveryConfig.description - schemas.AssetDiscoveryConfig.properties.inclusionMode.description - schemas.AssetDiscoveryConfig.properties.projectIds.description - schemas.Attack.description - schemas.Attack.properties.classification.description - schemas.Attack.properties.volumeBps.description - schemas.Attack.properties.volumeBpsLong.description - schemas.Attack.properties.volumePps.description - schemas.Attack.properties.volumePpsLong.description - schemas.AttackExposure.description - schemas.AttackExposure.properties.attackExposureResult.description - schemas.AttackExposure.properties.exposedHighValueResourcesCount.description - schemas.AttackExposure.properties.exposedLowValueResourcesCount.description - schemas.AttackExposure.properties.exposedMediumValueResourcesCount.description - schemas.AttackExposure.properties.latestCalculationTime.description - schemas.AttackExposure.properties.score.description - schemas.AttackExposure.properties.state.description - schemas.AuditConfig.description - schemas.AuditConfig.properties.auditLogConfigs.description - schemas.AuditConfig.properties.service.description - schemas.AuditLogConfig.description - schemas.AuditLogConfig.properties.exemptedMembers.description - schemas.AuditLogConfig.properties.logType.description - schemas.AwsAccount.description - schemas.AwsAccount.properties.id.description - schemas.AwsAccount.properties.name.description - schemas.AwsMetadata.description - schemas.AwsMetadata.properties.account.description - schemas.AwsMetadata.properties.organization.description - schemas.AwsMetadata.properties.organizationalUnits.description - schemas.AwsOrganization.description - schemas.AwsOrganization.properties.id.description - schemas.AwsOrganizationalUnit.description - schemas.AwsOrganizationalUnit.properties.id.description - schemas.AwsOrganizationalUnit.properties.name.description - schemas.AzureManagementGroup.description - schemas.AzureManagementGroup.properties.displayName.description - schemas.AzureManagementGroup.properties.id.description - schemas.AzureMetadata.description - schemas.AzureMetadata.properties.managementGroups.description - schemas.AzureMetadata.properties.resourceGroup.description - schemas.AzureMetadata.properties.subscription.description - schemas.AzureMetadata.properties.tenant.description - schemas.AzureResourceGroup.description - schemas.AzureResourceGroup.properties.id.description - schemas.AzureResourceGroup.properties.name.description - schemas.AzureSubscription.description - schemas.AzureSubscription.properties.displayName.description - schemas.AzureSubscription.properties.id.description - schemas.AzureTenant.description - schemas.AzureTenant.properties.displayName.description - schemas.AzureTenant.properties.id.description - schemas.BackupDisasterRecovery.description - schemas.BackupDisasterRecovery.properties.appliance.description - schemas.BackupDisasterRecovery.properties.applications.description - schemas.BackupDisasterRecovery.properties.backupCreateTime.description - schemas.BackupDisasterRecovery.properties.backupTemplate.description - schemas.BackupDisasterRecovery.properties.backupType.description - schemas.BackupDisasterRecovery.properties.host.description - schemas.BackupDisasterRecovery.properties.policies.description - schemas.BackupDisasterRecovery.properties.policyOptions.description - schemas.BackupDisasterRecovery.properties.profile.description - schemas.BackupDisasterRecovery.properties.storagePool.description - schemas.BigQueryDestination.description - schemas.BigQueryDestination.properties.dataset.description - schemas.Binding.description - schemas.Binding.properties.condition.description - schemas.Binding.properties.members.description - schemas.Binding.properties.role.description - schemas.CancelOperationRequest.description - schemas.Chokepoint.description - schemas.Chokepoint.properties.relatedFindings.description - schemas.CloudArmor.description - schemas.CloudArmor.properties.adaptiveProtection.description - schemas.CloudArmor.properties.attack.description - schemas.CloudArmor.properties.duration.description - schemas.CloudArmor.properties.requests.description - schemas.CloudArmor.properties.securityPolicy.description - schemas.CloudArmor.properties.threatVector.description - schemas.CloudControl.description - schemas.CloudControl.properties.cloudControlName.description - schemas.CloudControl.properties.policyType.description - schemas.CloudControl.properties.type.description - schemas.CloudControl.properties.version.description - schemas.CloudDlpDataProfile.description - schemas.CloudDlpDataProfile.properties.dataProfile.description - schemas.CloudDlpDataProfile.properties.infoTypes.description - schemas.CloudDlpDataProfile.properties.parentType.description - schemas.CloudDlpInspection.description - schemas.CloudDlpInspection.properties.fullScan.description - schemas.CloudDlpInspection.properties.infoType.description - schemas.CloudDlpInspection.properties.infoTypeCount.description - schemas.CloudDlpInspection.properties.inspectJob.description - schemas.CloudLoggingEntry.description - schemas.CloudLoggingEntry.properties.insertId.description - schemas.CloudLoggingEntry.properties.logId.description - schemas.CloudLoggingEntry.properties.resourceContainer.description - schemas.CloudLoggingEntry.properties.timestamp.description - schemas.Compliance.description - schemas.Compliance.properties.ids.description - schemas.Compliance.properties.standard.description - schemas.Compliance.properties.version.description - schemas.ComplianceDetails.description - schemas.ComplianceDetails.properties.cloudControl.description - schemas.ComplianceDetails.properties.cloudControlDeploymentNames.description - schemas.ComplianceDetails.properties.frameworks.description - schemas.Connection.description - schemas.Connection.properties.destinationIp.description - schemas.Connection.properties.destinationPort.description - schemas.Connection.properties.protocol.description - schemas.Connection.properties.sourceIp.description - schemas.Connection.properties.sourcePort.description - schemas.Contact.description - schemas.Contact.properties.email.description - schemas.ContactDetails.description - schemas.ContactDetails.properties.contacts.description - schemas.Container.description - schemas.Container.properties.createTime.description - schemas.Container.properties.imageId.description - schemas.Container.properties.labels.description - schemas.Container.properties.name.description - schemas.Container.properties.uri.description - schemas.Control.description - schemas.Control.properties.controlName.description - schemas.Control.properties.displayName.description - schemas.Cve.description - schemas.Cve.properties.cvssv3.description - schemas.Cve.properties.exploitReleaseDate.description - schemas.Cve.properties.exploitationActivity.description - schemas.Cve.properties.firstExploitationDate.description - schemas.Cve.properties.id.description - schemas.Cve.properties.impact.description - schemas.Cve.properties.observedInTheWild.description - schemas.Cve.properties.references.description - schemas.Cve.properties.upstreamFixAvailable.description - schemas.Cve.properties.zeroDay.description - schemas.Cvssv3.description - schemas.Cvssv3.properties.attackComplexity.description - schemas.Cvssv3.properties.attackVector.description - schemas.Cvssv3.properties.availabilityImpact.description - schemas.Cvssv3.properties.baseScore.description - schemas.Cvssv3.properties.confidentialityImpact.description - schemas.Cvssv3.properties.integrityImpact.description - schemas.Cvssv3.properties.privilegesRequired.description - schemas.Cvssv3.properties.scope.description - schemas.Cvssv3.properties.userInteraction.description - schemas.Cwe.description - schemas.Cwe.properties.id.description - schemas.Cwe.properties.references.description - schemas.DataAccessEvent.description - schemas.DataAccessEvent.properties.eventId.description - schemas.DataAccessEvent.properties.eventTime.description - schemas.DataAccessEvent.properties.operation.description - schemas.DataAccessEvent.properties.principalEmail.description - schemas.DataFlowEvent.description - schemas.DataFlowEvent.properties.eventId.description - schemas.DataFlowEvent.properties.eventTime.description - schemas.DataFlowEvent.properties.operation.description - schemas.DataFlowEvent.properties.principalEmail.description - schemas.DataFlowEvent.properties.violatedLocation.description - schemas.DataRetentionDeletionEvent.description - schemas.DataRetentionDeletionEvent.properties.dataObjectCount.description - schemas.DataRetentionDeletionEvent.properties.eventDetectionTime.description - schemas.DataRetentionDeletionEvent.properties.eventType.description - schemas.DataRetentionDeletionEvent.properties.maxRetentionAllowed.description - schemas.DataRetentionDeletionEvent.properties.minRetentionAllowed.description - schemas.Database.description - schemas.Database.properties.displayName.description - schemas.Database.properties.grantees.description - schemas.Database.properties.name.description - schemas.Database.properties.query.description - schemas.Database.properties.userName.description - schemas.Database.properties.version.description - schemas.Dataset.description - schemas.Dataset.properties.displayName.description - schemas.Dataset.properties.name.description - schemas.Dataset.properties.source.description - schemas.Denied.description - schemas.Denied.properties.ipRules.description - schemas.Detection.description - schemas.Detection.properties.binary.description - schemas.Detection.properties.percentPagesMatched.description - schemas.DiscoveredWorkload.description - schemas.DiscoveredWorkload.properties.confidence.description - schemas.DiscoveredWorkload.properties.detectedRelevantHardware.description - schemas.DiscoveredWorkload.properties.detectedRelevantKeywords.description - schemas.DiscoveredWorkload.properties.detectedRelevantPackages.description - schemas.DiscoveredWorkload.properties.workloadType.description - schemas.Disk.description - schemas.Disk.properties.name.description - schemas.DiskPath.description - schemas.DiskPath.properties.partitionUuid.description - schemas.DiskPath.properties.relativePath.description - schemas.DynamicMuteRecord.description - schemas.DynamicMuteRecord.properties.matchTime.description - schemas.DynamicMuteRecord.properties.muteConfig.description - schemas.Empty.description - schemas.EnvironmentVariable.description - schemas.EnvironmentVariable.properties.name.description - schemas.EnvironmentVariable.properties.val.description - schemas.ExfilResource.description - schemas.ExfilResource.properties.components.description - schemas.ExfilResource.properties.name.description - schemas.Exfiltration.description - schemas.Exfiltration.properties.sources.description - schemas.Exfiltration.properties.targets.description - schemas.Exfiltration.properties.totalExfiltratedBytes.description - schemas.ExportFindingsMetadata.description - schemas.ExportFindingsMetadata.properties.bigQueryDestination.description - schemas.ExportFindingsMetadata.properties.exportStartTime.description - schemas.ExportFindingsResponse.description - schemas.Expr.description - schemas.Expr.properties.description.description - schemas.Expr.properties.expression.description - schemas.Expr.properties.location.description - schemas.Expr.properties.title.description - schemas.ExternalExposure.description - schemas.ExternalExposure.properties.backendBucket.description - schemas.ExternalExposure.properties.backendService.description - schemas.ExternalExposure.properties.exposedApplication.description - schemas.ExternalExposure.properties.exposedEndpoint.description - schemas.ExternalExposure.properties.exposedService.description - schemas.ExternalExposure.properties.forwardingRule.description - schemas.ExternalExposure.properties.hostnameUri.description - schemas.ExternalExposure.properties.httpResponse.description - schemas.ExternalExposure.properties.instanceGroup.description - schemas.ExternalExposure.properties.internalBackendService.description - schemas.ExternalExposure.properties.loadBalancerFirewallPolicy.description - schemas.ExternalExposure.properties.networkEndpointGroup.description - schemas.ExternalExposure.properties.networkIngressFirewallPolicy.description - schemas.ExternalExposure.properties.privateIpAddress.description - schemas.ExternalExposure.properties.privatePort.description - schemas.ExternalExposure.properties.pscNetworkAttachment.description - schemas.ExternalExposure.properties.pscServiceAttachment.description - schemas.ExternalExposure.properties.publicIpAddress.description - schemas.ExternalExposure.properties.publicPort.description - schemas.ExternalExposure.properties.serviceFirewallPolicy.description - schemas.File.description - schemas.File.properties.contents.description - schemas.File.properties.diskPath.description - schemas.File.properties.fileLoadState.description - schemas.File.properties.hashedSize.description - schemas.File.properties.operations.description - schemas.File.properties.partiallyHashed.description - schemas.File.properties.path.description - schemas.File.properties.sha256.description - schemas.File.properties.size.description - schemas.FileOperation.description - schemas.FileOperation.properties.type.description - schemas.Finding.description - schemas.Finding.properties.access.description - schemas.Finding.properties.affectedResources.description - schemas.Finding.properties.agentDataAccessEvents.description - schemas.Finding.properties.aiModel.description - schemas.Finding.properties.application.description - schemas.Finding.properties.artifactGuardPolicies.description - schemas.Finding.properties.attackExposure.description - schemas.Finding.properties.backupDisasterRecovery.description - schemas.Finding.properties.canonicalName.description - schemas.Finding.properties.category.description - schemas.Finding.properties.chokepoint.description - schemas.Finding.properties.cloudArmor.description - schemas.Finding.properties.cloudDlpDataProfile.description - schemas.Finding.properties.cloudDlpInspection.description - schemas.Finding.properties.complianceDetails.description - schemas.Finding.properties.compliances.description - schemas.Finding.properties.connections.description - schemas.Finding.properties.contacts.description - schemas.Finding.properties.containers.description - schemas.Finding.properties.createTime.description - schemas.Finding.properties.dataAccessEvents.description - schemas.Finding.properties.dataFlowEvents.description - schemas.Finding.properties.dataRetentionDeletionEvents.description - schemas.Finding.properties.database.description - schemas.Finding.properties.description.description - schemas.Finding.properties.discoveredWorkload.description - schemas.Finding.properties.disk.description - schemas.Finding.properties.eventTime.description - schemas.Finding.properties.exfiltration.description - schemas.Finding.properties.externalExposure.description - schemas.Finding.properties.externalSystems.description - schemas.Finding.properties.externalUri.description - schemas.Finding.properties.files.description - schemas.Finding.properties.findingClass.description - schemas.Finding.properties.groupMemberships.description - schemas.Finding.properties.iamBindings.description - schemas.Finding.properties.indicator.description - schemas.Finding.properties.ipRules.description - schemas.Finding.properties.job.description - schemas.Finding.properties.kernelRootkit.description - schemas.Finding.properties.kubernetes.description - schemas.Finding.properties.loadBalancers.description - schemas.Finding.properties.logEntries.description - schemas.Finding.properties.mitreAttack.description - schemas.Finding.properties.moduleName.description - schemas.Finding.properties.mute.description - schemas.Finding.properties.muteInfo.description - schemas.Finding.properties.muteInitiator.description - schemas.Finding.properties.muteUpdateTime.description - schemas.Finding.properties.name.description - schemas.Finding.properties.networks.description - schemas.Finding.properties.nextSteps.description - schemas.Finding.properties.notebook.description - schemas.Finding.properties.orgPolicies.description - schemas.Finding.properties.parent.description - schemas.Finding.properties.parentDisplayName.description - schemas.Finding.properties.policyViolationSummary.description - schemas.Finding.properties.processes.description - schemas.Finding.properties.resourceName.description - schemas.Finding.properties.secret.description - schemas.Finding.properties.securityMarks.description - schemas.Finding.properties.securityPosture.description - schemas.Finding.properties.severity.description - schemas.Finding.properties.sourceProperties.description - schemas.Finding.properties.state.description - schemas.Finding.properties.toxicCombination.description - schemas.Finding.properties.vertexAi.description - schemas.Finding.properties.vulnerability.description - schemas.Folder.description - schemas.Folder.properties.resourceFolder.description - schemas.Folder.properties.resourceFolderDisplayName.description - schemas.Framework.description - schemas.Framework.properties.category.description - schemas.Framework.properties.controls.description - schemas.Framework.properties.displayName.description - schemas.Framework.properties.name.description - schemas.Framework.properties.type.description - schemas.GcpMetadata.description - schemas.GcpMetadata.properties.folders.description - schemas.GcpMetadata.properties.organization.description - schemas.GcpMetadata.properties.parent.description - schemas.GcpMetadata.properties.parentDisplayName.description - schemas.GcpMetadata.properties.project.description - schemas.GcpMetadata.properties.projectDisplayName.description - schemas.Geolocation.description - schemas.Geolocation.properties.regionCode.description - schemas.GetIamPolicyRequest.description - schemas.GetIamPolicyRequest.properties.options.description - schemas.GetPolicyOptions.description - schemas.GetPolicyOptions.properties.requestedPolicyVersion.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.dataset.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.description.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.filter.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.name.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.principal.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1Binding.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.name.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.ns.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.role.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.subjects.description - schemas.GoogleCloudSecuritycenterV1BulkMuteFindingsResponse.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.customOutput.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.predicate.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.recommendation.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.resourceSelector.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.severity.description - schemas.GoogleCloudSecuritycenterV1CustomOutputSpec.description - schemas.GoogleCloudSecuritycenterV1CustomOutputSpec.properties.properties.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.customConfig.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.enablementState.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.name.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.assignees.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseCloseTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseCreateTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.casePriority.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseSla.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseUri.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.externalSystemUpdateTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.externalUid.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.name.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.status.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.ticketInfo.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.expiryTime.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.filter.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.type.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV1Property.description - schemas.GoogleCloudSecuritycenterV1Property.properties.name.description - schemas.GoogleCloudSecuritycenterV1Property.properties.valueExpression.description - schemas.GoogleCloudSecuritycenterV1Resource.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.application.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.folders.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.location.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.organization.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.parent.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.project.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.projectDisplayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.resourcePath.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.resourcePathString.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.service.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceSelector.description - schemas.GoogleCloudSecuritycenterV1ResourceSelector.properties.resourceTypes.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceLabelsSelector.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceType.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceValue.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.scope.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.sensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.tagValues.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.ancestorModule.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.customConfig.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.enablementState.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.lastEditor.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.name.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.highSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1beta1SecurityMarks.description - schemas.GoogleCloudSecuritycenterV1beta1SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV1beta1SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.severity.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.properties.resourceFolder.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.properties.resourceFolderDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.folders.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.parent.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.project.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.projectDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV2Access.description - schemas.GoogleCloudSecuritycenterV2Access.properties.callerIp.description - schemas.GoogleCloudSecuritycenterV2Access.properties.callerIpGeo.description - schemas.GoogleCloudSecuritycenterV2Access.properties.methodName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2Access.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceAccountDelegationInfo.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceAccountKeyName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userAgent.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userAgentFamily.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userName.description - schemas.GoogleCloudSecuritycenterV2AccessReview.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.group.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.name.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.ns.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.resource.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.subresource.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.verb.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.version.description - schemas.GoogleCloudSecuritycenterV2AdaptiveProtection.description - schemas.GoogleCloudSecuritycenterV2AdaptiveProtection.properties.confidence.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2AdcSharedTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2AdcSharedTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2AffectedResources.description - schemas.GoogleCloudSecuritycenterV2AffectedResources.properties.count.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2AiModel.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.deploymentPlatform.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.domain.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.library.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.location.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.name.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.publisher.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.usageCategory.description - schemas.GoogleCloudSecuritycenterV2Allowed.description - schemas.GoogleCloudSecuritycenterV2Allowed.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Application.description - schemas.GoogleCloudSecuritycenterV2Application.properties.baseUri.description - schemas.GoogleCloudSecuritycenterV2Application.properties.fullUri.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.properties.failingPolicies.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.properties.resourceId.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.failureReason.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.policyId.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.type.description - schemas.GoogleCloudSecuritycenterV2Attack.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.classification.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumeBps.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumeBpsLong.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumePps.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumePpsLong.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.attackExposureResult.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedHighValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedLowValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedMediumValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.latestCalculationTime.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.score.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.state.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.properties.name.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.account.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.organization.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.organizationalUnits.description - schemas.GoogleCloudSecuritycenterV2AwsOrganization.description - schemas.GoogleCloudSecuritycenterV2AwsOrganization.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.properties.name.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.managementGroups.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.resourceGroup.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.subscription.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.tenant.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.properties.name.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.properties.id.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.appliance.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.applications.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupCreateTime.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupTemplate.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupType.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.host.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.policies.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.policyOptions.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.profile.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.storagePool.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.dataset.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.description.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.filter.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.name.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.principal.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2Binding.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.name.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.ns.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.role.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.subjects.description - schemas.GoogleCloudSecuritycenterV2BulkMuteFindingsResponse.description - schemas.GoogleCloudSecuritycenterV2Chokepoint.description - schemas.GoogleCloudSecuritycenterV2Chokepoint.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.adaptiveProtection.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.attack.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.duration.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.requests.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.securityPolicy.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.threatVector.description - schemas.GoogleCloudSecuritycenterV2CloudControl.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.cloudControlName.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.policyType.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.type.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.version.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.dataProfile.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.infoTypes.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.parentType.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.fullScan.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.infoType.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.infoTypeCount.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.inspectJob.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.insertId.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.logId.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.resourceContainer.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.timestamp.description - schemas.GoogleCloudSecuritycenterV2Compliance.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.ids.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.standard.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.version.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.cloudControl.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.cloudControlDeploymentNames.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.frameworks.description - schemas.GoogleCloudSecuritycenterV2Connection.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.destinationIp.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.destinationPort.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.protocol.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.sourceIp.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.sourcePort.description - schemas.GoogleCloudSecuritycenterV2Contact.description - schemas.GoogleCloudSecuritycenterV2Contact.properties.email.description - schemas.GoogleCloudSecuritycenterV2ContactDetails.description - schemas.GoogleCloudSecuritycenterV2ContactDetails.properties.contacts.description - schemas.GoogleCloudSecuritycenterV2Container.description - schemas.GoogleCloudSecuritycenterV2Container.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Container.properties.imageId.description - schemas.GoogleCloudSecuritycenterV2Container.properties.labels.description - schemas.GoogleCloudSecuritycenterV2Container.properties.name.description - schemas.GoogleCloudSecuritycenterV2Container.properties.uri.description - schemas.GoogleCloudSecuritycenterV2Control.description - schemas.GoogleCloudSecuritycenterV2Control.properties.controlName.description - schemas.GoogleCloudSecuritycenterV2Control.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Cve.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.cvssv3.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitReleaseDate.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitationActivity.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.firstExploitationDate.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.id.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.impact.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.observedInTheWild.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.references.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.upstreamFixAvailable.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.zeroDay.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackComplexity.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackVector.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.availabilityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.baseScore.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.confidentialityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.integrityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.privilegesRequired.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.scope.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.userInteraction.description - schemas.GoogleCloudSecuritycenterV2Cwe.description - schemas.GoogleCloudSecuritycenterV2Cwe.properties.id.description - schemas.GoogleCloudSecuritycenterV2Cwe.properties.references.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.violatedLocation.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.dataObjectCount.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventDetectionTime.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventType.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.maxRetentionAllowed.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.minRetentionAllowed.description - schemas.GoogleCloudSecuritycenterV2Database.description - schemas.GoogleCloudSecuritycenterV2Database.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Database.properties.grantees.description - schemas.GoogleCloudSecuritycenterV2Database.properties.name.description - schemas.GoogleCloudSecuritycenterV2Database.properties.query.description - schemas.GoogleCloudSecuritycenterV2Database.properties.userName.description - schemas.GoogleCloudSecuritycenterV2Database.properties.version.description - schemas.GoogleCloudSecuritycenterV2Dataset.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.name.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.source.description - schemas.GoogleCloudSecuritycenterV2Denied.description - schemas.GoogleCloudSecuritycenterV2Denied.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Detection.description - schemas.GoogleCloudSecuritycenterV2Detection.properties.binary.description - schemas.GoogleCloudSecuritycenterV2Detection.properties.percentPagesMatched.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.confidence.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantHardware.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantKeywords.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantPackages.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.workloadType.description - schemas.GoogleCloudSecuritycenterV2Disk.description - schemas.GoogleCloudSecuritycenterV2Disk.properties.name.description - schemas.GoogleCloudSecuritycenterV2DiskPath.description - schemas.GoogleCloudSecuritycenterV2DiskPath.properties.partitionUuid.description - schemas.GoogleCloudSecuritycenterV2DiskPath.properties.relativePath.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.properties.matchTime.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.properties.muteConfig.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.properties.name.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.properties.val.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.properties.components.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.properties.name.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.sources.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.targets.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.totalExfiltratedBytes.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.backendBucket.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.backendService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedApplication.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedEndpoint.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.forwardingRule.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.hostnameUri.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.httpResponse.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.instanceGroup.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.internalBackendService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.loadBalancerFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.networkEndpointGroup.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.networkIngressFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.privateIpAddress.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.privatePort.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.pscNetworkAttachment.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.pscServiceAttachment.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.publicIpAddress.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.publicPort.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.serviceFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.assignees.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseCloseTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseCreateTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.casePriority.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseSla.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseUri.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.externalSystemUpdateTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.externalUid.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.name.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.status.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.ticketInfo.description - schemas.GoogleCloudSecuritycenterV2File.description - schemas.GoogleCloudSecuritycenterV2File.properties.contents.description - schemas.GoogleCloudSecuritycenterV2File.properties.diskPath.description - schemas.GoogleCloudSecuritycenterV2File.properties.fileLoadState.description - schemas.GoogleCloudSecuritycenterV2File.properties.hashedSize.description - schemas.GoogleCloudSecuritycenterV2File.properties.operations.description - schemas.GoogleCloudSecuritycenterV2File.properties.partiallyHashed.description - schemas.GoogleCloudSecuritycenterV2File.properties.path.description - schemas.GoogleCloudSecuritycenterV2File.properties.sha256.description - schemas.GoogleCloudSecuritycenterV2File.properties.size.description - schemas.GoogleCloudSecuritycenterV2FileOperation.description - schemas.GoogleCloudSecuritycenterV2FileOperation.properties.type.description - schemas.GoogleCloudSecuritycenterV2Finding.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.access.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.affectedResources.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.agentDataAccessEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.aiModel.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.application.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.artifactGuardPolicies.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.attackExposure.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.backupDisasterRecovery.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.chokepoint.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudArmor.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudDlpDataProfile.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudDlpInspection.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.complianceDetails.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.compliances.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.connections.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.contacts.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataAccessEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataFlowEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataRetentionDeletionEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.database.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.description.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.discoveredWorkload.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.disk.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.exfiltration.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalExposure.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalSystems.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.files.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.findingClass.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.groupMemberships.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.iamBindings.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.indicator.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.job.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.kernelRootkit.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.kubernetes.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.loadBalancers.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.logEntries.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.mitreAttack.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.moduleName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.mute.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteInfo.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteInitiator.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteUpdateTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.networks.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.nextSteps.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.notebook.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.orgPolicies.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.policyViolationSummary.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.processes.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.secret.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.securityPosture.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.severity.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.toxicCombination.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.vertexAi.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.vulnerability.description - schemas.GoogleCloudSecuritycenterV2Folder.description - schemas.GoogleCloudSecuritycenterV2Folder.properties.resourceFolder.description - schemas.GoogleCloudSecuritycenterV2Folder.properties.resourceFolderDisplayName.description - schemas.GoogleCloudSecuritycenterV2Framework.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.category.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.controls.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.name.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.type.description - schemas.GoogleCloudSecuritycenterV2Geolocation.description - schemas.GoogleCloudSecuritycenterV2Geolocation.properties.regionCode.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupId.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupType.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.properties.path.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.properties.statusCode.description - schemas.GoogleCloudSecuritycenterV2IamBinding.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.action.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.member.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.role.description - schemas.GoogleCloudSecuritycenterV2Indicator.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.domains.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.ipAddresses.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.signatures.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.uris.description - schemas.GoogleCloudSecuritycenterV2InfoType.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.name.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.sensitivityScore.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.version.description - schemas.GoogleCloudSecuritycenterV2IpRule.description - schemas.GoogleCloudSecuritycenterV2IpRule.properties.portRanges.description - schemas.GoogleCloudSecuritycenterV2IpRule.properties.protocol.description - schemas.GoogleCloudSecuritycenterV2IpRules.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.allowed.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.denied.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.destinationIpRanges.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.direction.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.exposedServices.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.sourceIpRanges.description - schemas.GoogleCloudSecuritycenterV2Issue.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.description.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.detection.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.domains.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.exposureScore.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.issueType.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.lastObservationTime.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.mute.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.name.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.primaryResource.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.remediations.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.secondaryResources.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.securityContexts.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.severity.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.state.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2IssueDomain.description - schemas.GoogleCloudSecuritycenterV2IssueDomain.properties.domainCategory.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.cve.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.securityBulletin.description - schemas.GoogleCloudSecuritycenterV2IssueFindingCve.description - schemas.GoogleCloudSecuritycenterV2IssueFindingCve.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin.description - schemas.GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueMute.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteInitiator.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteReason.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteState.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteUpdateTime.description - schemas.GoogleCloudSecuritycenterV2IssueResource.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.application.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.googleCloudMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadata.properties.account.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.properties.id.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadata.properties.subscription.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.properties.id.description - schemas.GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata.properties.projectId.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.properties.aggregatedCount.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.properties.context.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.properties.key.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.properties.value.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.properties.values.description - schemas.GoogleCloudSecuritycenterV2Job.description - schemas.GoogleCloudSecuritycenterV2Job.properties.errorCode.description - schemas.GoogleCloudSecuritycenterV2Job.properties.location.description - schemas.GoogleCloudSecuritycenterV2Job.properties.name.description - schemas.GoogleCloudSecuritycenterV2Job.properties.state.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.name.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedCodeModification.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedFtraceHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedInterruptHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedKernelCodePages.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedKprobeHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedProcessesInRunqueue.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedReadOnlyDataModification.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedSystemCallHandler.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.accessReviews.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.bindings.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.nodePools.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.objects.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.pods.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.roles.description - schemas.GoogleCloudSecuritycenterV2Label.description - schemas.GoogleCloudSecuritycenterV2Label.properties.name.description - schemas.GoogleCloudSecuritycenterV2Label.properties.value.description - schemas.GoogleCloudSecuritycenterV2LoadBalancer.description - schemas.GoogleCloudSecuritycenterV2LoadBalancer.properties.name.description - schemas.GoogleCloudSecuritycenterV2LogEntry.description - schemas.GoogleCloudSecuritycenterV2LogEntry.properties.cloudLoggingEntry.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.properties.binaryFamily.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.properties.detections.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTactics.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTechniques.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTactic.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTechniques.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.version.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.expiryTime.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.filter.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.type.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.properties.dynamicMuteRecords.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.properties.staticMute.description - schemas.GoogleCloudSecuritycenterV2Network.description - schemas.GoogleCloudSecuritycenterV2Network.properties.name.description - schemas.GoogleCloudSecuritycenterV2Node.description - schemas.GoogleCloudSecuritycenterV2Node.properties.name.description - schemas.GoogleCloudSecuritycenterV2NodePool.description - schemas.GoogleCloudSecuritycenterV2NodePool.properties.name.description - schemas.GoogleCloudSecuritycenterV2NodePool.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2Notebook.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.lastAuthor.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.name.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.notebookUpdateTime.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.service.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV2Object.description - schemas.GoogleCloudSecuritycenterV2Object.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Object.properties.group.description - schemas.GoogleCloudSecuritycenterV2Object.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Object.properties.name.description - schemas.GoogleCloudSecuritycenterV2Object.properties.ns.description - schemas.GoogleCloudSecuritycenterV2OrgPolicy.description - schemas.GoogleCloudSecuritycenterV2OrgPolicy.properties.name.description - schemas.GoogleCloudSecuritycenterV2Package.description - schemas.GoogleCloudSecuritycenterV2Package.properties.cpeUri.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageName.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageType.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageVersion.description - schemas.GoogleCloudSecuritycenterV2Pipeline.description - schemas.GoogleCloudSecuritycenterV2Pipeline.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Pipeline.properties.name.description - schemas.GoogleCloudSecuritycenterV2Pod.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.labels.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.name.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.ns.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.detectedValue.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.expectedValue.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.field.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.conformantResourcesCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.evaluationErrorsCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.outOfScopeResourcesCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.policyViolationsCount.description - schemas.GoogleCloudSecuritycenterV2PortRange.description - schemas.GoogleCloudSecuritycenterV2PortRange.properties.max.description - schemas.GoogleCloudSecuritycenterV2PortRange.properties.min.description - schemas.GoogleCloudSecuritycenterV2Process.description - schemas.GoogleCloudSecuritycenterV2Process.properties.args.description - schemas.GoogleCloudSecuritycenterV2Process.properties.argumentsTruncated.description - schemas.GoogleCloudSecuritycenterV2Process.properties.binary.description - schemas.GoogleCloudSecuritycenterV2Process.properties.envVariables.description - schemas.GoogleCloudSecuritycenterV2Process.properties.envVariablesTruncated.description - schemas.GoogleCloudSecuritycenterV2Process.properties.libraries.description - schemas.GoogleCloudSecuritycenterV2Process.properties.name.description - schemas.GoogleCloudSecuritycenterV2Process.properties.parentPid.description - schemas.GoogleCloudSecuritycenterV2Process.properties.pid.description - schemas.GoogleCloudSecuritycenterV2Process.properties.script.description - schemas.GoogleCloudSecuritycenterV2Process.properties.userId.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.memoryHashSignature.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.signatureType.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.yaraRuleSignature.description - schemas.GoogleCloudSecuritycenterV2Reference.description - schemas.GoogleCloudSecuritycenterV2Reference.properties.source.description - schemas.GoogleCloudSecuritycenterV2Reference.properties.uri.description - schemas.GoogleCloudSecuritycenterV2Requests.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.longTermAllowed.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.longTermDenied.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.ratio.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.shortTermAllowed.description - schemas.GoogleCloudSecuritycenterV2Resource.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.application.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.gcpMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.location.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.resourcePath.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.resourcePathString.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.service.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourcePath.description - schemas.GoogleCloudSecuritycenterV2ResourcePath.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.id.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.nodeType.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceLabelsSelector.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceType.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceValue.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.scope.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.sensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.tagValues.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2Role.description - schemas.GoogleCloudSecuritycenterV2Role.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Role.properties.name.description - schemas.GoogleCloudSecuritycenterV2Role.properties.ns.description - schemas.GoogleCloudSecuritycenterV2Secret.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.environmentVariable.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.filePath.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.status.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.type.description - schemas.GoogleCloudSecuritycenterV2SecretEnvironmentVariable.description - schemas.GoogleCloudSecuritycenterV2SecretEnvironmentVariable.properties.key.description - schemas.GoogleCloudSecuritycenterV2SecretFilePath.description - schemas.GoogleCloudSecuritycenterV2SecretFilePath.properties.path.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.lastUpdatedTime.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.validity.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.bulletinId.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.submissionTime.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.suggestedUpgradeVersion.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.preview.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.type.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.changedPolicy.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policy.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policyDriftDetails.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policySet.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.postureDeployment.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.postureDeploymentResource.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.revisionId.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.highSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV2SensitivityScore.description - schemas.GoogleCloudSecuritycenterV2SensitivityScore.properties.score.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2StaticMute.description - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.applyTime.description - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.state.description - schemas.GoogleCloudSecuritycenterV2Subject.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.name.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.ns.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.assignee.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.description.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.id.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.status.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.uri.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.properties.attackExposureScore.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2VertexAi.description - schemas.GoogleCloudSecuritycenterV2VertexAi.properties.datasets.description - schemas.GoogleCloudSecuritycenterV2VertexAi.properties.pipelines.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.cve.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.cwes.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.fixedPackage.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.offendingPackage.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.providerRiskScore.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.reachable.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.securityBulletin.description - schemas.GoogleCloudSecuritycenterV2YaraRuleSignature.description - schemas.GoogleCloudSecuritycenterV2YaraRuleSignature.properties.yaraRule.description - schemas.GroupAssetsRequest.description - schemas.GroupAssetsRequest.properties.compareDuration.description - schemas.GroupAssetsRequest.properties.filter.description - schemas.GroupAssetsRequest.properties.groupBy.description - schemas.GroupAssetsRequest.properties.pageSize.description - schemas.GroupAssetsRequest.properties.pageToken.description - schemas.GroupAssetsRequest.properties.readTime.description - schemas.GroupAssetsResponse.description - schemas.GroupAssetsResponse.properties.groupByResults.description - schemas.GroupAssetsResponse.properties.nextPageToken.description - schemas.GroupAssetsResponse.properties.readTime.description - schemas.GroupFindingsRequest.description - schemas.GroupFindingsRequest.properties.filter.description - schemas.GroupFindingsRequest.properties.groupBy.description - schemas.GroupFindingsRequest.properties.pageSize.description - schemas.GroupFindingsRequest.properties.pageToken.description - schemas.GroupFindingsRequest.properties.readTime.description - schemas.GroupFindingsResponse.description - schemas.GroupFindingsResponse.properties.groupByResults.description - schemas.GroupFindingsResponse.properties.nextPageToken.description - schemas.GroupFindingsResponse.properties.readTime.description - schemas.GroupMembership.description - schemas.GroupMembership.properties.groupId.description - schemas.GroupMembership.properties.groupType.description - schemas.GroupResult.description - schemas.GroupResult.properties.count.description - schemas.GroupResult.properties.properties.description - schemas.HttpResponse.description - schemas.HttpResponse.properties.path.description - schemas.HttpResponse.properties.statusCode.description - schemas.IamBinding.description - schemas.IamBinding.properties.action.description - schemas.IamBinding.properties.member.description - schemas.IamBinding.properties.role.description - schemas.Indicator.description - schemas.Indicator.properties.domains.description - schemas.Indicator.properties.ipAddresses.description - schemas.Indicator.properties.signatures.description - schemas.Indicator.properties.uris.description - schemas.InfoType.description - schemas.InfoType.properties.name.description - schemas.InfoType.properties.sensitivityScore.description - schemas.InfoType.properties.version.description - schemas.IpRule.description - schemas.IpRule.properties.portRanges.description - schemas.IpRule.properties.protocol.description - schemas.IpRules.description - schemas.IpRules.properties.allowed.description - schemas.IpRules.properties.denied.description - schemas.IpRules.properties.destinationIpRanges.description - schemas.IpRules.properties.direction.description - schemas.IpRules.properties.exposedServices.description - schemas.IpRules.properties.sourceIpRanges.description - schemas.Job.description - schemas.Job.properties.errorCode.description - schemas.Job.properties.location.description - schemas.Job.properties.name.description - schemas.Job.properties.state.description - schemas.KernelRootkit.description - schemas.KernelRootkit.properties.name.description - schemas.KernelRootkit.properties.unexpectedCodeModification.description - schemas.KernelRootkit.properties.unexpectedFtraceHandler.description - schemas.KernelRootkit.properties.unexpectedInterruptHandler.description - schemas.KernelRootkit.properties.unexpectedKernelCodePages.description - schemas.KernelRootkit.properties.unexpectedKprobeHandler.description - schemas.KernelRootkit.properties.unexpectedProcessesInRunqueue.description - schemas.KernelRootkit.properties.unexpectedReadOnlyDataModification.description - schemas.KernelRootkit.properties.unexpectedSystemCallHandler.description - schemas.Kubernetes.description - schemas.Kubernetes.properties.accessReviews.description - schemas.Kubernetes.properties.bindings.description - schemas.Kubernetes.properties.nodePools.description - schemas.Kubernetes.properties.nodes.description - schemas.Kubernetes.properties.objects.description - schemas.Kubernetes.properties.pods.description - schemas.Kubernetes.properties.roles.description - schemas.Label.description - schemas.Label.properties.name.description - schemas.Label.properties.value.description - schemas.ListAssetsResponse.description - schemas.ListAssetsResponse.properties.listAssetsResults.description - schemas.ListAssetsResponse.properties.nextPageToken.description - schemas.ListAssetsResponse.properties.readTime.description - schemas.ListAssetsResponse.properties.totalSize.description - schemas.ListAssetsResult.description - schemas.ListAssetsResult.properties.asset.description - schemas.ListAssetsResult.properties.state.description - schemas.ListFindingsResponse.description - schemas.ListFindingsResponse.properties.findings.description - schemas.ListFindingsResponse.properties.nextPageToken.description - schemas.ListFindingsResponse.properties.readTime.description - schemas.ListFindingsResponse.properties.totalSize.description - schemas.ListOperationsResponse.description - schemas.ListOperationsResponse.properties.nextPageToken.description - schemas.ListOperationsResponse.properties.operations.description - schemas.ListOperationsResponse.properties.unreachable.description - schemas.ListSourcesResponse.description - schemas.ListSourcesResponse.properties.nextPageToken.description - schemas.ListSourcesResponse.properties.sources.description - schemas.LoadBalancer.description - schemas.LoadBalancer.properties.name.description - schemas.LogEntry.description - schemas.LogEntry.properties.cloudLoggingEntry.description - schemas.MemoryHashSignature.description - schemas.MemoryHashSignature.properties.binaryFamily.description - schemas.MemoryHashSignature.properties.detections.description - schemas.MitreAttack.description - schemas.MitreAttack.properties.additionalTactics.description - schemas.MitreAttack.properties.additionalTechniques.description - schemas.MitreAttack.properties.primaryTactic.description - schemas.MitreAttack.properties.primaryTechniques.description - schemas.MitreAttack.properties.version.description - schemas.MuteInfo.description - schemas.MuteInfo.properties.dynamicMuteRecords.description - schemas.MuteInfo.properties.staticMute.description - schemas.Network.description - schemas.Network.properties.name.description - schemas.Node.description - schemas.Node.properties.name.description - schemas.NodePool.description - schemas.NodePool.properties.name.description - schemas.NodePool.properties.nodes.description - schemas.Notebook.description - schemas.Notebook.properties.lastAuthor.description - schemas.Notebook.properties.name.description - schemas.Notebook.properties.notebookUpdateTime.description - schemas.Notebook.properties.service.description - schemas.Object.description - schemas.Object.properties.containers.description - schemas.Object.properties.group.description - schemas.Object.properties.kind.description - schemas.Object.properties.name.description - schemas.Object.properties.ns.description - schemas.Operation.description - schemas.Operation.properties.done.description - schemas.Operation.properties.error.description - schemas.Operation.properties.metadata.description - schemas.Operation.properties.name.description - schemas.Operation.properties.response.description - schemas.OrgPolicy.description - schemas.OrgPolicy.properties.name.description - schemas.OrganizationSettings.description - schemas.OrganizationSettings.properties.assetDiscoveryConfig.description - schemas.OrganizationSettings.properties.enableAssetDiscovery.description - schemas.OrganizationSettings.properties.name.description - schemas.Package.description - schemas.Package.properties.cpeUri.description - schemas.Package.properties.packageName.description - schemas.Package.properties.packageType.description - schemas.Package.properties.packageVersion.description - schemas.Pipeline.description - schemas.Pipeline.properties.displayName.description - schemas.Pipeline.properties.name.description - schemas.Pod.description - schemas.Pod.properties.containers.description - schemas.Pod.properties.labels.description - schemas.Pod.properties.name.description - schemas.Pod.properties.ns.description - schemas.Policy.description - schemas.Policy.properties.auditConfigs.description - schemas.Policy.properties.bindings.description - schemas.Policy.properties.etag.description - schemas.Policy.properties.version.description - schemas.PolicyDriftDetails.description - schemas.PolicyDriftDetails.properties.detectedValue.description - schemas.PolicyDriftDetails.properties.expectedValue.description - schemas.PolicyDriftDetails.properties.field.description - schemas.PolicyViolationSummary.description - schemas.PolicyViolationSummary.properties.conformantResourcesCount.description - schemas.PolicyViolationSummary.properties.evaluationErrorsCount.description - schemas.PolicyViolationSummary.properties.outOfScopeResourcesCount.description - schemas.PolicyViolationSummary.properties.policyViolationsCount.description - schemas.PortRange.description - schemas.PortRange.properties.max.description - schemas.PortRange.properties.min.description - schemas.Process.description - schemas.Process.properties.args.description - schemas.Process.properties.argumentsTruncated.description - schemas.Process.properties.binary.description - schemas.Process.properties.envVariables.description - schemas.Process.properties.envVariablesTruncated.description - schemas.Process.properties.libraries.description - schemas.Process.properties.name.description - schemas.Process.properties.parentPid.description - schemas.Process.properties.pid.description - schemas.Process.properties.script.description - schemas.Process.properties.userId.description - schemas.ProcessSignature.description - schemas.ProcessSignature.properties.memoryHashSignature.description - schemas.ProcessSignature.properties.signatureType.description - schemas.ProcessSignature.properties.yaraRuleSignature.description - schemas.Reference.description - schemas.Reference.properties.source.description - schemas.Reference.properties.uri.description - schemas.Requests.description - schemas.Requests.properties.longTermAllowed.description - schemas.Requests.properties.longTermDenied.description - schemas.Requests.properties.ratio.description - schemas.Requests.properties.shortTermAllowed.description - schemas.ResourcePath.description - schemas.ResourcePath.properties.nodes.description - schemas.ResourcePathNode.description - schemas.ResourcePathNode.properties.displayName.description - schemas.ResourcePathNode.properties.id.description - schemas.ResourcePathNode.properties.nodeType.description - schemas.Role.description - schemas.Role.properties.kind.description - schemas.Role.properties.name.description - schemas.Role.properties.ns.description - schemas.RunAssetDiscoveryRequest.description - schemas.Secret.description - schemas.Secret.properties.environmentVariable.description - schemas.Secret.properties.filePath.description - schemas.Secret.properties.status.description - schemas.Secret.properties.type.description - schemas.SecretEnvironmentVariable.description - schemas.SecretEnvironmentVariable.properties.key.description - schemas.SecretFilePath.description - schemas.SecretFilePath.properties.path.description - schemas.SecretStatus.description - schemas.SecretStatus.properties.lastUpdatedTime.description - schemas.SecretStatus.properties.validity.description - schemas.SecurityBulletin.description - schemas.SecurityBulletin.properties.bulletinId.description - schemas.SecurityBulletin.properties.submissionTime.description - schemas.SecurityBulletin.properties.suggestedUpgradeVersion.description - schemas.SecurityCenterProperties.description - schemas.SecurityCenterProperties.properties.resourceName.description - schemas.SecurityCenterProperties.properties.resourceOwners.description - schemas.SecurityCenterProperties.properties.resourceParent.description - schemas.SecurityCenterProperties.properties.resourceProject.description - schemas.SecurityCenterProperties.properties.resourceType.description - schemas.SecurityMarks.description - schemas.SecurityMarks.properties.canonicalName.description - schemas.SecurityMarks.properties.marks.description - schemas.SecurityMarks.properties.name.description - schemas.SecurityPolicy.description - schemas.SecurityPolicy.properties.name.description - schemas.SecurityPolicy.properties.preview.description - schemas.SecurityPolicy.properties.type.description - schemas.SecurityPosture.description - schemas.SecurityPosture.properties.changedPolicy.description - schemas.SecurityPosture.properties.name.description - schemas.SecurityPosture.properties.policy.description - schemas.SecurityPosture.properties.policyDriftDetails.description - schemas.SecurityPosture.properties.policySet.description - schemas.SecurityPosture.properties.postureDeployment.description - schemas.SecurityPosture.properties.postureDeploymentResource.description - schemas.SecurityPosture.properties.revisionId.description - schemas.SensitivityScore.description - schemas.SensitivityScore.properties.score.description - schemas.ServiceAccountDelegationInfo.description - schemas.ServiceAccountDelegationInfo.properties.principalEmail.description - schemas.ServiceAccountDelegationInfo.properties.principalSubject.description - schemas.SetFindingStateRequest.description - schemas.SetFindingStateRequest.properties.startTime.description - schemas.SetFindingStateRequest.properties.state.description - schemas.SetIamPolicyRequest.description - schemas.SetIamPolicyRequest.properties.policy.description - schemas.SetIamPolicyRequest.properties.updateMask.description - schemas.Source.description - schemas.Source.properties.description.description - schemas.Source.properties.displayName.description - schemas.Source.properties.name.description - schemas.StaticMute.description - schemas.StaticMute.properties.applyTime.description - schemas.StaticMute.properties.state.description - schemas.Status.description - schemas.Status.properties.code.description - schemas.Status.properties.details.description - schemas.Status.properties.message.description - schemas.Subject.description - schemas.Subject.properties.kind.description - schemas.Subject.properties.name.description - schemas.Subject.properties.ns.description - schemas.TestIamPermissionsRequest.description - schemas.TestIamPermissionsRequest.properties.permissions.description - schemas.TestIamPermissionsResponse.description - schemas.TestIamPermissionsResponse.properties.permissions.description - schemas.TicketInfo.description - schemas.TicketInfo.properties.assignee.description - schemas.TicketInfo.properties.description.description - schemas.TicketInfo.properties.id.description - schemas.TicketInfo.properties.status.description - schemas.TicketInfo.properties.updateTime.description - schemas.TicketInfo.properties.uri.description - schemas.ToxicCombination.description - schemas.ToxicCombination.properties.attackExposureScore.description - schemas.ToxicCombination.properties.relatedFindings.description - schemas.VertexAi.description - schemas.VertexAi.properties.datasets.description - schemas.VertexAi.properties.pipelines.description - schemas.Vulnerability.description - schemas.Vulnerability.properties.cve.description - schemas.Vulnerability.properties.cwes.description - schemas.Vulnerability.properties.fixedPackage.description - schemas.Vulnerability.properties.offendingPackage.description - schemas.Vulnerability.properties.providerRiskScore.description - schemas.Vulnerability.properties.reachable.description - schemas.Vulnerability.properties.securityBulletin.description - schemas.VulnerabilityCountBySeverity.description - schemas.VulnerabilityCountBySeverity.properties.severityToFindingCount.description - schemas.VulnerabilitySnapshot.description - schemas.VulnerabilitySnapshot.properties.cloudProvider.description - schemas.VulnerabilitySnapshot.properties.findingCount.description - schemas.VulnerabilitySnapshot.properties.name.description - schemas.VulnerabilitySnapshot.properties.snapshotTime.description - schemas.YaraRuleSignature.description - schemas.YaraRuleSignature.properties.yaraRule.description The following keys were changed: - schemas.AgentDataAccessEvent.properties.operation.enumDescriptions - schemas.AiModel.properties.deploymentPlatform.enumDescriptions - schemas.ArtifactGuardPolicy.properties.type.enumDescriptions - schemas.AssetDiscoveryConfig.properties.inclusionMode.enumDescriptions - schemas.AttackExposure.properties.state.enumDescriptions - schemas.AuditLogConfig.properties.logType.enumDescriptions - schemas.CloudControl.properties.type.enumDescriptions - schemas.CloudDlpDataProfile.properties.parentType.enumDescriptions - schemas.Connection.properties.protocol.enumDescriptions - schemas.Cve.properties.exploitationActivity.enumDescriptions - schemas.Cve.properties.impact.enumDescriptions - schemas.Cvssv3.properties.attackComplexity.enumDescriptions - schemas.Cvssv3.properties.attackVector.enumDescriptions - schemas.Cvssv3.properties.availabilityImpact.enumDescriptions - schemas.Cvssv3.properties.confidentialityImpact.enumDescriptions - schemas.Cvssv3.properties.integrityImpact.enumDescriptions - schemas.Cvssv3.properties.privilegesRequired.enumDescriptions - schemas.Cvssv3.properties.scope.enumDescriptions - schemas.Cvssv3.properties.userInteraction.enumDescriptions - schemas.DataAccessEvent.properties.operation.enumDescriptions - schemas.DataFlowEvent.properties.operation.enumDescriptions - schemas.DataRetentionDeletionEvent.properties.eventType.enumDescriptions - schemas.DiscoveredWorkload.properties.confidence.enumDescriptions - schemas.DiscoveredWorkload.properties.workloadType.enumDescriptions - schemas.File.properties.fileLoadState.enumDescriptions - schemas.FileOperation.properties.type.enumDescriptions - schemas.Finding.properties.findingClass.enumDescriptions - schemas.Finding.properties.mute.enumDescriptions - schemas.Finding.properties.severity.enumDescriptions - schemas.Finding.properties.state.enumDescriptions - schemas.Framework.properties.category.items.enumDescriptions - schemas.Framework.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.enablementState.enumDescriptions - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1Resource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceValue.enumDescriptions - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.enablementState.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.highSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV1beta1Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AiModel.properties.deploymentPlatform.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.parentType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Connection.properties.protocol.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitationActivity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cve.properties.impact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackComplexity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackVector.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.availabilityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.confidentialityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.integrityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.privilegesRequired.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.scope.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.userInteraction.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.confidence.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.workloadType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2File.properties.fileLoadState.enumDescriptions - schemas.GoogleCloudSecuritycenterV2FileOperation.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.findingClass.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.mute.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Framework.properties.category.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Framework.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.action.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IpRules.properties.direction.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.issueType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueDomain.properties.domainCategory.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteState.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Job.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTactics.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTechniques.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTactic.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTechniques.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.signatureType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Resource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.nodeType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceValue.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Role.properties.kind.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.validity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.highSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitivityScore.properties.score.enumDescriptions - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Subject.properties.kind.enumDescriptions - schemas.GroupMembership.properties.groupType.enumDescriptions - schemas.IamBinding.properties.action.enumDescriptions - schemas.IpRules.properties.direction.enumDescriptions - schemas.Job.properties.state.enumDescriptions - schemas.ListAssetsResult.properties.state.enumDescriptions - schemas.MitreAttack.properties.additionalTactics.items.enumDescriptions - schemas.MitreAttack.properties.additionalTechniques.items.enumDescriptions - schemas.MitreAttack.properties.primaryTactic.enumDescriptions - schemas.MitreAttack.properties.primaryTechniques.items.enumDescriptions - schemas.ProcessSignature.properties.signatureType.enumDescriptions - schemas.ResourcePathNode.properties.nodeType.enumDescriptions - schemas.Role.properties.kind.enumDescriptions - schemas.SecretStatus.properties.validity.enumDescriptions - schemas.SensitivityScore.properties.score.enumDescriptions - schemas.SetFindingStateRequest.properties.state.enumDescriptions - schemas.StaticMute.properties.state.enumDescriptions - schemas.Subject.properties.kind.enumDescriptions - schemas.VulnerabilitySnapshot.properties.cloudProvider.enumDescriptions #### securitycenter:v1beta2 The following keys were deleted: - resources.folders.methods.getContainerThreatDetectionSettings.parameters.name.description - resources.folders.methods.getEventThreatDetectionSettings.parameters.name.description - resources.folders.methods.getRapidVulnerabilityDetectionSettings.parameters.name.description - resources.folders.methods.getSecurityCenterSettings.parameters.name.description - resources.folders.methods.getSecurityHealthAnalyticsSettings.parameters.name.description - resources.folders.methods.getVirtualMachineThreatDetectionSettings.parameters.name.description - resources.folders.methods.getWebSecurityScannerSettings.parameters.name.description - resources.folders.methods.updateContainerThreatDetectionSettings.parameters.name.description - resources.folders.methods.updateContainerThreatDetectionSettings.parameters.updateMask.description - resources.folders.methods.updateEventThreatDetectionSettings.parameters.name.description - resources.folders.methods.updateEventThreatDetectionSettings.parameters.updateMask.description - resources.folders.methods.updateRapidVulnerabilityDetectionSettings.parameters.name.description - resources.folders.methods.updateRapidVulnerabilityDetectionSettings.parameters.updateMask.description - resources.folders.methods.updateSecurityHealthAnalyticsSettings.parameters.name.description - resources.folders.methods.updateSecurityHealthAnalyticsSettings.parameters.updateMask.description - resources.folders.methods.updateVirtualMachineThreatDetectionSettings.parameters.name.description - resources.folders.methods.updateVirtualMachineThreatDetectionSettings.parameters.updateMask.description - resources.folders.methods.updateWebSecurityScannerSettings.parameters.name.description - resources.folders.methods.updateWebSecurityScannerSettings.parameters.updateMask.description - resources.folders.resources.containerThreatDetectionSettings.methods.calculate.parameters.name.description - resources.folders.resources.containerThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.folders.resources.eventThreatDetectionSettings.methods.calculate.parameters.name.description - resources.folders.resources.eventThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.folders.resources.rapidVulnerabilityDetectionSettings.methods.calculate.parameters.name.description - resources.folders.resources.securityHealthAnalyticsSettings.methods.calculate.parameters.name.description - resources.folders.resources.securityHealthAnalyticsSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.folders.resources.virtualMachineThreatDetectionSettings.methods.calculate.parameters.name.description - resources.folders.resources.virtualMachineThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.folders.resources.webSecurityScannerSettings.methods.calculate.parameters.name.description - resources.folders.resources.webSecurityScannerSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.organizations.methods.getContainerThreatDetectionSettings.parameters.name.description - resources.organizations.methods.getEventThreatDetectionSettings.parameters.name.description - resources.organizations.methods.getRapidVulnerabilityDetectionSettings.parameters.name.description - resources.organizations.methods.getSecurityCenterSettings.parameters.name.description - resources.organizations.methods.getSecurityHealthAnalyticsSettings.parameters.name.description - resources.organizations.methods.getSubscription.parameters.name.description - resources.organizations.methods.getVirtualMachineThreatDetectionSettings.parameters.name.description - resources.organizations.methods.getWebSecurityScannerSettings.parameters.name.description - resources.organizations.methods.updateContainerThreatDetectionSettings.parameters.name.description - resources.organizations.methods.updateContainerThreatDetectionSettings.parameters.updateMask.description - resources.organizations.methods.updateEventThreatDetectionSettings.parameters.name.description - resources.organizations.methods.updateEventThreatDetectionSettings.parameters.updateMask.description - resources.organizations.methods.updateRapidVulnerabilityDetectionSettings.parameters.name.description - resources.organizations.methods.updateRapidVulnerabilityDetectionSettings.parameters.updateMask.description - resources.organizations.methods.updateSecurityHealthAnalyticsSettings.parameters.name.description - resources.organizations.methods.updateSecurityHealthAnalyticsSettings.parameters.updateMask.description - resources.organizations.methods.updateVirtualMachineThreatDetectionSettings.parameters.name.description - resources.organizations.methods.updateVirtualMachineThreatDetectionSettings.parameters.updateMask.description - resources.organizations.methods.updateWebSecurityScannerSettings.parameters.name.description - resources.organizations.methods.updateWebSecurityScannerSettings.parameters.updateMask.description - resources.organizations.resources.containerThreatDetectionSettings.methods.calculate.parameters.name.description - resources.organizations.resources.containerThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.organizations.resources.eventThreatDetectionSettings.methods.calculate.parameters.name.description - resources.organizations.resources.eventThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.organizations.resources.rapidVulnerabilityDetectionSettings.methods.calculate.parameters.name.description - resources.organizations.resources.securityHealthAnalyticsSettings.methods.calculate.parameters.name.description - resources.organizations.resources.securityHealthAnalyticsSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.organizations.resources.virtualMachineThreatDetectionSettings.methods.calculate.parameters.name.description - resources.organizations.resources.virtualMachineThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.organizations.resources.webSecurityScannerSettings.methods.calculate.parameters.name.description - resources.organizations.resources.webSecurityScannerSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.projects.methods.getContainerThreatDetectionSettings.parameters.name.description - resources.projects.methods.getEventThreatDetectionSettings.parameters.name.description - resources.projects.methods.getRapidVulnerabilityDetectionSettings.parameters.name.description - resources.projects.methods.getSecurityCenterSettings.parameters.name.description - resources.projects.methods.getSecurityHealthAnalyticsSettings.parameters.name.description - resources.projects.methods.getVirtualMachineThreatDetectionSettings.parameters.name.description - resources.projects.methods.getWebSecurityScannerSettings.parameters.name.description - resources.projects.methods.updateContainerThreatDetectionSettings.parameters.name.description - resources.projects.methods.updateContainerThreatDetectionSettings.parameters.updateMask.description - resources.projects.methods.updateEventThreatDetectionSettings.parameters.name.description - resources.projects.methods.updateEventThreatDetectionSettings.parameters.updateMask.description - resources.projects.methods.updateRapidVulnerabilityDetectionSettings.parameters.name.description - resources.projects.methods.updateRapidVulnerabilityDetectionSettings.parameters.updateMask.description - resources.projects.methods.updateSecurityHealthAnalyticsSettings.parameters.name.description - resources.projects.methods.updateSecurityHealthAnalyticsSettings.parameters.updateMask.description - resources.projects.methods.updateVirtualMachineThreatDetectionSettings.parameters.name.description - resources.projects.methods.updateVirtualMachineThreatDetectionSettings.parameters.updateMask.description - resources.projects.methods.updateWebSecurityScannerSettings.parameters.name.description - resources.projects.methods.updateWebSecurityScannerSettings.parameters.updateMask.description - resources.projects.resources.containerThreatDetectionSettings.methods.calculate.parameters.name.description - resources.projects.resources.containerThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.projects.resources.eventThreatDetectionSettings.methods.calculate.parameters.name.description - resources.projects.resources.eventThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.projects.resources.locations.resources.clusters.methods.getContainerThreatDetectionSettings.parameters.name.description - resources.projects.resources.locations.resources.clusters.methods.updateContainerThreatDetectionSettings.parameters.name.description - resources.projects.resources.locations.resources.clusters.methods.updateContainerThreatDetectionSettings.parameters.updateMask.description - resources.projects.resources.locations.resources.clusters.resources.containerThreatDetectionSettings.methods.calculate.parameters.name.description - resources.projects.resources.locations.resources.clusters.resources.containerThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.projects.resources.rapidVulnerabilityDetectionSettings.methods.calculate.parameters.name.description - resources.projects.resources.securityHealthAnalyticsSettings.methods.calculate.parameters.name.description - resources.projects.resources.securityHealthAnalyticsSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.projects.resources.virtualMachineThreatDetectionSettings.methods.calculate.parameters.name.description - resources.projects.resources.virtualMachineThreatDetectionSettings.methods.calculate.parameters.showEligibleModulesOnly.description - resources.projects.resources.webSecurityScannerSettings.methods.calculate.parameters.name.description - resources.projects.resources.webSecurityScannerSettings.methods.calculate.parameters.showEligibleModulesOnly.description - schemas.Access.description - schemas.Access.properties.callerIp.description - schemas.Access.properties.callerIpGeo.description - schemas.Access.properties.methodName.description - schemas.Access.properties.principalEmail.description - schemas.Access.properties.principalSubject.description - schemas.Access.properties.serviceAccountDelegationInfo.description - schemas.Access.properties.serviceAccountKeyName.description - schemas.Access.properties.serviceName.description - schemas.Access.properties.userAgent.description - schemas.Access.properties.userAgentFamily.description - schemas.Access.properties.userName.description - schemas.AccessReview.description - schemas.AccessReview.properties.group.description - schemas.AccessReview.properties.name.description - schemas.AccessReview.properties.ns.description - schemas.AccessReview.properties.resource.description - schemas.AccessReview.properties.subresource.description - schemas.AccessReview.properties.verb.description - schemas.AccessReview.properties.version.description - schemas.AdaptiveProtection.description - schemas.AdaptiveProtection.properties.confidence.description - schemas.AdcApplication.description - schemas.AdcApplication.properties.attributes.description - schemas.AdcApplication.properties.name.description - schemas.AdcApplicationTemplateRevision.description - schemas.AdcApplicationTemplateRevision.properties.name.description - schemas.AdcSharedTemplateRevision.description - schemas.AdcSharedTemplateRevision.properties.name.description - schemas.AffectedResources.description - schemas.AffectedResources.properties.count.description - schemas.AgentDataAccessEvent.description - schemas.AgentDataAccessEvent.properties.eventId.description - schemas.AgentDataAccessEvent.properties.eventTime.description - schemas.AgentDataAccessEvent.properties.operation.description - schemas.AgentDataAccessEvent.properties.principalSubject.description - schemas.AiModel.description - schemas.AiModel.properties.deploymentPlatform.description - schemas.AiModel.properties.displayName.description - schemas.AiModel.properties.domain.description - schemas.AiModel.properties.library.description - schemas.AiModel.properties.location.description - schemas.AiModel.properties.name.description - schemas.AiModel.properties.publisher.description - schemas.AiModel.properties.usageCategory.description - schemas.Allowed.description - schemas.Allowed.properties.ipRules.description - schemas.Application.description - schemas.Application.properties.baseUri.description - schemas.Application.properties.fullUri.description - schemas.ArtifactGuardPolicies.description - schemas.ArtifactGuardPolicies.properties.failingPolicies.description - schemas.ArtifactGuardPolicies.properties.resourceId.description - schemas.ArtifactGuardPolicy.description - schemas.ArtifactGuardPolicy.properties.failureReason.description - schemas.ArtifactGuardPolicy.properties.policyId.description - schemas.ArtifactGuardPolicy.properties.type.description - schemas.Attack.description - schemas.Attack.properties.classification.description - schemas.Attack.properties.volumeBps.description - schemas.Attack.properties.volumeBpsLong.description - schemas.Attack.properties.volumePps.description - schemas.Attack.properties.volumePpsLong.description - schemas.AttackExposure.description - schemas.AttackExposure.properties.attackExposureResult.description - schemas.AttackExposure.properties.exposedHighValueResourcesCount.description - schemas.AttackExposure.properties.exposedLowValueResourcesCount.description - schemas.AttackExposure.properties.exposedMediumValueResourcesCount.description - schemas.AttackExposure.properties.latestCalculationTime.description - schemas.AttackExposure.properties.score.description - schemas.AttackExposure.properties.state.description - schemas.AwsAccount.description - schemas.AwsAccount.properties.id.description - schemas.AwsAccount.properties.name.description - schemas.AwsMetadata.description - schemas.AwsMetadata.properties.account.description - schemas.AwsMetadata.properties.organization.description - schemas.AwsMetadata.properties.organizationalUnits.description - schemas.AwsOrganization.description - schemas.AwsOrganization.properties.id.description - schemas.AwsOrganizationalUnit.description - schemas.AwsOrganizationalUnit.properties.id.description - schemas.AwsOrganizationalUnit.properties.name.description - schemas.AzureManagementGroup.description - schemas.AzureManagementGroup.properties.displayName.description - schemas.AzureManagementGroup.properties.id.description - schemas.AzureMetadata.description - schemas.AzureMetadata.properties.managementGroups.description - schemas.AzureMetadata.properties.resourceGroup.description - schemas.AzureMetadata.properties.subscription.description - schemas.AzureMetadata.properties.tenant.description - schemas.AzureResourceGroup.description - schemas.AzureResourceGroup.properties.id.description - schemas.AzureResourceGroup.properties.name.description - schemas.AzureSubscription.description - schemas.AzureSubscription.properties.displayName.description - schemas.AzureSubscription.properties.id.description - schemas.AzureTenant.description - schemas.AzureTenant.properties.displayName.description - schemas.AzureTenant.properties.id.description - schemas.BackupDisasterRecovery.description - schemas.BackupDisasterRecovery.properties.appliance.description - schemas.BackupDisasterRecovery.properties.applications.description - schemas.BackupDisasterRecovery.properties.backupCreateTime.description - schemas.BackupDisasterRecovery.properties.backupTemplate.description - schemas.BackupDisasterRecovery.properties.backupType.description - schemas.BackupDisasterRecovery.properties.host.description - schemas.BackupDisasterRecovery.properties.policies.description - schemas.BackupDisasterRecovery.properties.policyOptions.description - schemas.BackupDisasterRecovery.properties.profile.description - schemas.BackupDisasterRecovery.properties.storagePool.description - schemas.BigQueryDestination.description - schemas.BigQueryDestination.properties.dataset.description - schemas.Chokepoint.description - schemas.Chokepoint.properties.relatedFindings.description - schemas.CloudArmor.description - schemas.CloudArmor.properties.adaptiveProtection.description - schemas.CloudArmor.properties.attack.description - schemas.CloudArmor.properties.duration.description - schemas.CloudArmor.properties.requests.description - schemas.CloudArmor.properties.securityPolicy.description - schemas.CloudArmor.properties.threatVector.description - schemas.CloudControl.description - schemas.CloudControl.properties.cloudControlName.description - schemas.CloudControl.properties.policyType.description - schemas.CloudControl.properties.type.description - schemas.CloudControl.properties.version.description - schemas.CloudDlpDataProfile.description - schemas.CloudDlpDataProfile.properties.dataProfile.description - schemas.CloudDlpDataProfile.properties.infoTypes.description - schemas.CloudDlpDataProfile.properties.parentType.description - schemas.CloudDlpInspection.description - schemas.CloudDlpInspection.properties.fullScan.description - schemas.CloudDlpInspection.properties.infoType.description - schemas.CloudDlpInspection.properties.infoTypeCount.description - schemas.CloudDlpInspection.properties.inspectJob.description - schemas.CloudLoggingEntry.description - schemas.CloudLoggingEntry.properties.insertId.description - schemas.CloudLoggingEntry.properties.logId.description - schemas.CloudLoggingEntry.properties.resourceContainer.description - schemas.CloudLoggingEntry.properties.timestamp.description - schemas.Compliance.description - schemas.Compliance.properties.ids.description - schemas.Compliance.properties.standard.description - schemas.Compliance.properties.version.description - schemas.ComplianceDetails.description - schemas.ComplianceDetails.properties.cloudControl.description - schemas.ComplianceDetails.properties.cloudControlDeploymentNames.description - schemas.ComplianceDetails.properties.frameworks.description - schemas.Config.description - schemas.Config.properties.moduleEnablementState.description - schemas.Config.properties.value.description - schemas.Connection.description - schemas.Connection.properties.destinationIp.description - schemas.Connection.properties.destinationPort.description - schemas.Connection.properties.protocol.description - schemas.Connection.properties.sourceIp.description - schemas.Connection.properties.sourcePort.description - schemas.Contact.description - schemas.Contact.properties.email.description - schemas.ContactDetails.description - schemas.ContactDetails.properties.contacts.description - schemas.Container.description - schemas.Container.properties.createTime.description - schemas.Container.properties.imageId.description - schemas.Container.properties.labels.description - schemas.Container.properties.name.description - schemas.Container.properties.uri.description - schemas.ContainerThreatDetectionSettings.description - schemas.ContainerThreatDetectionSettings.properties.modules.description - schemas.ContainerThreatDetectionSettings.properties.name.description - schemas.ContainerThreatDetectionSettings.properties.serviceAccount.description - schemas.ContainerThreatDetectionSettings.properties.serviceEnablementState.description - schemas.ContainerThreatDetectionSettings.properties.updateTime.description - schemas.Control.description - schemas.Control.properties.controlName.description - schemas.Control.properties.displayName.description - schemas.Cve.description - schemas.Cve.properties.cvssv3.description - schemas.Cve.properties.exploitReleaseDate.description - schemas.Cve.properties.exploitationActivity.description - schemas.Cve.properties.firstExploitationDate.description - schemas.Cve.properties.id.description - schemas.Cve.properties.impact.description - schemas.Cve.properties.observedInTheWild.description - schemas.Cve.properties.references.description - schemas.Cve.properties.upstreamFixAvailable.description - schemas.Cve.properties.zeroDay.description - schemas.Cvssv3.description - schemas.Cvssv3.properties.attackComplexity.description - schemas.Cvssv3.properties.attackVector.description - schemas.Cvssv3.properties.availabilityImpact.description - schemas.Cvssv3.properties.baseScore.description - schemas.Cvssv3.properties.confidentialityImpact.description - schemas.Cvssv3.properties.integrityImpact.description - schemas.Cvssv3.properties.privilegesRequired.description - schemas.Cvssv3.properties.scope.description - schemas.Cvssv3.properties.userInteraction.description - schemas.Cwe.description - schemas.Cwe.properties.id.description - schemas.Cwe.properties.references.description - schemas.DataAccessEvent.description - schemas.DataAccessEvent.properties.eventId.description - schemas.DataAccessEvent.properties.eventTime.description - schemas.DataAccessEvent.properties.operation.description - schemas.DataAccessEvent.properties.principalEmail.description - schemas.DataFlowEvent.description - schemas.DataFlowEvent.properties.eventId.description - schemas.DataFlowEvent.properties.eventTime.description - schemas.DataFlowEvent.properties.operation.description - schemas.DataFlowEvent.properties.principalEmail.description - schemas.DataFlowEvent.properties.violatedLocation.description - schemas.DataRetentionDeletionEvent.description - schemas.DataRetentionDeletionEvent.properties.dataObjectCount.description - schemas.DataRetentionDeletionEvent.properties.eventDetectionTime.description - schemas.DataRetentionDeletionEvent.properties.eventType.description - schemas.DataRetentionDeletionEvent.properties.maxRetentionAllowed.description - schemas.DataRetentionDeletionEvent.properties.minRetentionAllowed.description - schemas.Database.description - schemas.Database.properties.displayName.description - schemas.Database.properties.grantees.description - schemas.Database.properties.name.description - schemas.Database.properties.query.description - schemas.Database.properties.userName.description - schemas.Database.properties.version.description - schemas.Dataset.description - schemas.Dataset.properties.displayName.description - schemas.Dataset.properties.name.description - schemas.Dataset.properties.source.description - schemas.Denied.description - schemas.Denied.properties.ipRules.description - schemas.Details.description - schemas.Details.properties.endTime.description - schemas.Details.properties.startTime.description - schemas.Details.properties.type.description - schemas.Detection.description - schemas.Detection.properties.binary.description - schemas.Detection.properties.percentPagesMatched.description - schemas.DiscoveredWorkload.description - schemas.DiscoveredWorkload.properties.confidence.description - schemas.DiscoveredWorkload.properties.detectedRelevantHardware.description - schemas.DiscoveredWorkload.properties.detectedRelevantKeywords.description - schemas.DiscoveredWorkload.properties.detectedRelevantPackages.description - schemas.DiscoveredWorkload.properties.workloadType.description - schemas.Disk.description - schemas.Disk.properties.name.description - schemas.DiskPath.description - schemas.DiskPath.properties.partitionUuid.description - schemas.DiskPath.properties.relativePath.description - schemas.DynamicMuteRecord.description - schemas.DynamicMuteRecord.properties.matchTime.description - schemas.DynamicMuteRecord.properties.muteConfig.description - schemas.EnvironmentVariable.description - schemas.EnvironmentVariable.properties.name.description - schemas.EnvironmentVariable.properties.val.description - schemas.EventThreatDetectionSettings.description - schemas.EventThreatDetectionSettings.properties.modules.description - schemas.EventThreatDetectionSettings.properties.name.description - schemas.EventThreatDetectionSettings.properties.serviceEnablementState.description - schemas.EventThreatDetectionSettings.properties.updateTime.description - schemas.ExfilResource.description - schemas.ExfilResource.properties.components.description - schemas.ExfilResource.properties.name.description - schemas.Exfiltration.description - schemas.Exfiltration.properties.sources.description - schemas.Exfiltration.properties.targets.description - schemas.Exfiltration.properties.totalExfiltratedBytes.description - schemas.ExportFindingsMetadata.description - schemas.ExportFindingsMetadata.properties.bigQueryDestination.description - schemas.ExportFindingsMetadata.properties.exportStartTime.description - schemas.ExportFindingsResponse.description - schemas.Expr.description - schemas.Expr.properties.description.description - schemas.Expr.properties.expression.description - schemas.Expr.properties.location.description - schemas.Expr.properties.title.description - schemas.ExternalExposure.description - schemas.ExternalExposure.properties.backendBucket.description - schemas.ExternalExposure.properties.backendService.description - schemas.ExternalExposure.properties.exposedApplication.description - schemas.ExternalExposure.properties.exposedEndpoint.description - schemas.ExternalExposure.properties.exposedService.description - schemas.ExternalExposure.properties.forwardingRule.description - schemas.ExternalExposure.properties.hostnameUri.description - schemas.ExternalExposure.properties.httpResponse.description - schemas.ExternalExposure.properties.instanceGroup.description - schemas.ExternalExposure.properties.internalBackendService.description - schemas.ExternalExposure.properties.loadBalancerFirewallPolicy.description - schemas.ExternalExposure.properties.networkEndpointGroup.description - schemas.ExternalExposure.properties.networkIngressFirewallPolicy.description - schemas.ExternalExposure.properties.privateIpAddress.description - schemas.ExternalExposure.properties.privatePort.description - schemas.ExternalExposure.properties.pscNetworkAttachment.description - schemas.ExternalExposure.properties.pscServiceAttachment.description - schemas.ExternalExposure.properties.publicIpAddress.description - schemas.ExternalExposure.properties.publicPort.description - schemas.ExternalExposure.properties.serviceFirewallPolicy.description - schemas.File.description - schemas.File.properties.contents.description - schemas.File.properties.diskPath.description - schemas.File.properties.fileLoadState.description - schemas.File.properties.hashedSize.description - schemas.File.properties.operations.description - schemas.File.properties.partiallyHashed.description - schemas.File.properties.path.description - schemas.File.properties.sha256.description - schemas.File.properties.size.description - schemas.FileOperation.description - schemas.FileOperation.properties.type.description - schemas.Finding.description - schemas.Finding.properties.access.description - schemas.Finding.properties.affectedResources.description - schemas.Finding.properties.agentDataAccessEvents.description - schemas.Finding.properties.aiModel.description - schemas.Finding.properties.application.description - schemas.Finding.properties.artifactGuardPolicies.description - schemas.Finding.properties.attackExposure.description - schemas.Finding.properties.backupDisasterRecovery.description - schemas.Finding.properties.canonicalName.description - schemas.Finding.properties.category.description - schemas.Finding.properties.chokepoint.description - schemas.Finding.properties.cloudArmor.description - schemas.Finding.properties.cloudDlpDataProfile.description - schemas.Finding.properties.cloudDlpInspection.description - schemas.Finding.properties.complianceDetails.description - schemas.Finding.properties.compliances.description - schemas.Finding.properties.connections.description - schemas.Finding.properties.contacts.description - schemas.Finding.properties.containers.description - schemas.Finding.properties.createTime.description - schemas.Finding.properties.dataAccessEvents.description - schemas.Finding.properties.dataFlowEvents.description - schemas.Finding.properties.dataRetentionDeletionEvents.description - schemas.Finding.properties.database.description - schemas.Finding.properties.description.description - schemas.Finding.properties.discoveredWorkload.description - schemas.Finding.properties.disk.description - schemas.Finding.properties.eventTime.description - schemas.Finding.properties.exfiltration.description - schemas.Finding.properties.externalExposure.description - schemas.Finding.properties.externalSystems.description - schemas.Finding.properties.externalUri.description - schemas.Finding.properties.files.description - schemas.Finding.properties.findingClass.description - schemas.Finding.properties.groupMemberships.description - schemas.Finding.properties.iamBindings.description - schemas.Finding.properties.indicator.description - schemas.Finding.properties.ipRules.description - schemas.Finding.properties.job.description - schemas.Finding.properties.kernelRootkit.description - schemas.Finding.properties.kubernetes.description - schemas.Finding.properties.loadBalancers.description - schemas.Finding.properties.logEntries.description - schemas.Finding.properties.mitreAttack.description - schemas.Finding.properties.moduleName.description - schemas.Finding.properties.mute.description - schemas.Finding.properties.muteInfo.description - schemas.Finding.properties.muteInitiator.description - schemas.Finding.properties.muteUpdateTime.description - schemas.Finding.properties.name.description - schemas.Finding.properties.networks.description - schemas.Finding.properties.nextSteps.description - schemas.Finding.properties.notebook.description - schemas.Finding.properties.orgPolicies.description - schemas.Finding.properties.parent.description - schemas.Finding.properties.parentDisplayName.description - schemas.Finding.properties.policyViolationSummary.description - schemas.Finding.properties.processes.description - schemas.Finding.properties.resourceName.description - schemas.Finding.properties.secret.description - schemas.Finding.properties.securityMarks.description - schemas.Finding.properties.securityPosture.description - schemas.Finding.properties.severity.description - schemas.Finding.properties.sourceProperties.description - schemas.Finding.properties.state.description - schemas.Finding.properties.toxicCombination.description - schemas.Finding.properties.vertexAi.description - schemas.Finding.properties.vulnerability.description - schemas.Folder.description - schemas.Folder.properties.resourceFolder.description - schemas.Folder.properties.resourceFolderDisplayName.description - schemas.Framework.description - schemas.Framework.properties.category.description - schemas.Framework.properties.controls.description - schemas.Framework.properties.displayName.description - schemas.Framework.properties.name.description - schemas.Framework.properties.type.description - schemas.GcpMetadata.description - schemas.GcpMetadata.properties.folders.description - schemas.GcpMetadata.properties.organization.description - schemas.GcpMetadata.properties.parent.description - schemas.GcpMetadata.properties.parentDisplayName.description - schemas.GcpMetadata.properties.project.description - schemas.GcpMetadata.properties.projectDisplayName.description - schemas.Geolocation.description - schemas.Geolocation.properties.regionCode.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.dataset.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.description.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.filter.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.name.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.principal.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1Binding.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.name.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.ns.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.role.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.subjects.description - schemas.GoogleCloudSecuritycenterV1BulkMuteFindingsResponse.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.customOutput.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.predicate.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.recommendation.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.resourceSelector.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.severity.description - schemas.GoogleCloudSecuritycenterV1CustomOutputSpec.description - schemas.GoogleCloudSecuritycenterV1CustomOutputSpec.properties.properties.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.customConfig.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.enablementState.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.name.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.assignees.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseCloseTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseCreateTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.casePriority.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseSla.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseUri.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.externalSystemUpdateTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.externalUid.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.name.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.status.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.ticketInfo.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.expiryTime.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.filter.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.type.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV1Property.description - schemas.GoogleCloudSecuritycenterV1Property.properties.name.description - schemas.GoogleCloudSecuritycenterV1Property.properties.valueExpression.description - schemas.GoogleCloudSecuritycenterV1Resource.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.application.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.folders.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.location.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.organization.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.parent.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.project.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.projectDisplayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.resourcePath.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.resourcePathString.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.service.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceSelector.description - schemas.GoogleCloudSecuritycenterV1ResourceSelector.properties.resourceTypes.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceLabelsSelector.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceType.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceValue.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.scope.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.sensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.tagValues.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.ancestorModule.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.customConfig.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.enablementState.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.lastEditor.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.name.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.highSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.severity.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.properties.resourceFolder.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.properties.resourceFolderDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.folders.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.parent.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.project.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.projectDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV2Access.description - schemas.GoogleCloudSecuritycenterV2Access.properties.callerIp.description - schemas.GoogleCloudSecuritycenterV2Access.properties.callerIpGeo.description - schemas.GoogleCloudSecuritycenterV2Access.properties.methodName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2Access.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceAccountDelegationInfo.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceAccountKeyName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userAgent.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userAgentFamily.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userName.description - schemas.GoogleCloudSecuritycenterV2AccessReview.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.group.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.name.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.ns.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.resource.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.subresource.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.verb.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.version.description - schemas.GoogleCloudSecuritycenterV2AdaptiveProtection.description - schemas.GoogleCloudSecuritycenterV2AdaptiveProtection.properties.confidence.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2AdcSharedTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2AdcSharedTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2AffectedResources.description - schemas.GoogleCloudSecuritycenterV2AffectedResources.properties.count.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2AiModel.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.deploymentPlatform.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.domain.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.library.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.location.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.name.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.publisher.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.usageCategory.description - schemas.GoogleCloudSecuritycenterV2Allowed.description - schemas.GoogleCloudSecuritycenterV2Allowed.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Application.description - schemas.GoogleCloudSecuritycenterV2Application.properties.baseUri.description - schemas.GoogleCloudSecuritycenterV2Application.properties.fullUri.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.properties.failingPolicies.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.properties.resourceId.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.failureReason.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.policyId.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.type.description - schemas.GoogleCloudSecuritycenterV2Attack.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.classification.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumeBps.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumeBpsLong.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumePps.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumePpsLong.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.attackExposureResult.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedHighValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedLowValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedMediumValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.latestCalculationTime.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.score.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.state.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.properties.name.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.account.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.organization.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.organizationalUnits.description - schemas.GoogleCloudSecuritycenterV2AwsOrganization.description - schemas.GoogleCloudSecuritycenterV2AwsOrganization.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.properties.name.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.managementGroups.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.resourceGroup.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.subscription.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.tenant.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.properties.name.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.properties.id.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.appliance.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.applications.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupCreateTime.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupTemplate.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupType.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.host.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.policies.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.policyOptions.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.profile.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.storagePool.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.dataset.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.description.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.filter.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.name.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.principal.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2Binding.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.name.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.ns.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.role.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.subjects.description - schemas.GoogleCloudSecuritycenterV2BulkMuteFindingsResponse.description - schemas.GoogleCloudSecuritycenterV2Chokepoint.description - schemas.GoogleCloudSecuritycenterV2Chokepoint.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.adaptiveProtection.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.attack.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.duration.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.requests.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.securityPolicy.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.threatVector.description - schemas.GoogleCloudSecuritycenterV2CloudControl.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.cloudControlName.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.policyType.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.type.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.version.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.dataProfile.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.infoTypes.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.parentType.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.fullScan.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.infoType.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.infoTypeCount.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.inspectJob.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.insertId.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.logId.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.resourceContainer.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.timestamp.description - schemas.GoogleCloudSecuritycenterV2Compliance.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.ids.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.standard.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.version.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.cloudControl.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.cloudControlDeploymentNames.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.frameworks.description - schemas.GoogleCloudSecuritycenterV2Connection.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.destinationIp.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.destinationPort.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.protocol.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.sourceIp.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.sourcePort.description - schemas.GoogleCloudSecuritycenterV2Contact.description - schemas.GoogleCloudSecuritycenterV2Contact.properties.email.description - schemas.GoogleCloudSecuritycenterV2ContactDetails.description - schemas.GoogleCloudSecuritycenterV2ContactDetails.properties.contacts.description - schemas.GoogleCloudSecuritycenterV2Container.description - schemas.GoogleCloudSecuritycenterV2Container.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Container.properties.imageId.description - schemas.GoogleCloudSecuritycenterV2Container.properties.labels.description - schemas.GoogleCloudSecuritycenterV2Container.properties.name.description - schemas.GoogleCloudSecuritycenterV2Container.properties.uri.description - schemas.GoogleCloudSecuritycenterV2Control.description - schemas.GoogleCloudSecuritycenterV2Control.properties.controlName.description - schemas.GoogleCloudSecuritycenterV2Control.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Cve.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.cvssv3.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitReleaseDate.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitationActivity.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.firstExploitationDate.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.id.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.impact.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.observedInTheWild.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.references.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.upstreamFixAvailable.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.zeroDay.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackComplexity.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackVector.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.availabilityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.baseScore.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.confidentialityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.integrityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.privilegesRequired.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.scope.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.userInteraction.description - schemas.GoogleCloudSecuritycenterV2Cwe.description - schemas.GoogleCloudSecuritycenterV2Cwe.properties.id.description - schemas.GoogleCloudSecuritycenterV2Cwe.properties.references.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.violatedLocation.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.dataObjectCount.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventDetectionTime.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventType.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.maxRetentionAllowed.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.minRetentionAllowed.description - schemas.GoogleCloudSecuritycenterV2Database.description - schemas.GoogleCloudSecuritycenterV2Database.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Database.properties.grantees.description - schemas.GoogleCloudSecuritycenterV2Database.properties.name.description - schemas.GoogleCloudSecuritycenterV2Database.properties.query.description - schemas.GoogleCloudSecuritycenterV2Database.properties.userName.description - schemas.GoogleCloudSecuritycenterV2Database.properties.version.description - schemas.GoogleCloudSecuritycenterV2Dataset.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.name.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.source.description - schemas.GoogleCloudSecuritycenterV2Denied.description - schemas.GoogleCloudSecuritycenterV2Denied.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Detection.description - schemas.GoogleCloudSecuritycenterV2Detection.properties.binary.description - schemas.GoogleCloudSecuritycenterV2Detection.properties.percentPagesMatched.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.confidence.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantHardware.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantKeywords.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantPackages.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.workloadType.description - schemas.GoogleCloudSecuritycenterV2Disk.description - schemas.GoogleCloudSecuritycenterV2Disk.properties.name.description - schemas.GoogleCloudSecuritycenterV2DiskPath.description - schemas.GoogleCloudSecuritycenterV2DiskPath.properties.partitionUuid.description - schemas.GoogleCloudSecuritycenterV2DiskPath.properties.relativePath.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.properties.matchTime.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.properties.muteConfig.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.properties.name.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.properties.val.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.properties.components.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.properties.name.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.sources.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.targets.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.totalExfiltratedBytes.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.backendBucket.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.backendService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedApplication.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedEndpoint.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.forwardingRule.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.hostnameUri.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.httpResponse.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.instanceGroup.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.internalBackendService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.loadBalancerFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.networkEndpointGroup.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.networkIngressFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.privateIpAddress.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.privatePort.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.pscNetworkAttachment.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.pscServiceAttachment.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.publicIpAddress.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.publicPort.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.serviceFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.assignees.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseCloseTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseCreateTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.casePriority.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseSla.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseUri.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.externalSystemUpdateTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.externalUid.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.name.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.status.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.ticketInfo.description - schemas.GoogleCloudSecuritycenterV2File.description - schemas.GoogleCloudSecuritycenterV2File.properties.contents.description - schemas.GoogleCloudSecuritycenterV2File.properties.diskPath.description - schemas.GoogleCloudSecuritycenterV2File.properties.fileLoadState.description - schemas.GoogleCloudSecuritycenterV2File.properties.hashedSize.description - schemas.GoogleCloudSecuritycenterV2File.properties.operations.description - schemas.GoogleCloudSecuritycenterV2File.properties.partiallyHashed.description - schemas.GoogleCloudSecuritycenterV2File.properties.path.description - schemas.GoogleCloudSecuritycenterV2File.properties.sha256.description - schemas.GoogleCloudSecuritycenterV2File.properties.size.description - schemas.GoogleCloudSecuritycenterV2FileOperation.description - schemas.GoogleCloudSecuritycenterV2FileOperation.properties.type.description - schemas.GoogleCloudSecuritycenterV2Finding.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.access.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.affectedResources.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.agentDataAccessEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.aiModel.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.application.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.artifactGuardPolicies.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.attackExposure.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.backupDisasterRecovery.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.chokepoint.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudArmor.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudDlpDataProfile.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudDlpInspection.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.complianceDetails.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.compliances.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.connections.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.contacts.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataAccessEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataFlowEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataRetentionDeletionEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.database.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.description.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.discoveredWorkload.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.disk.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.exfiltration.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalExposure.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalSystems.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.files.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.findingClass.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.groupMemberships.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.iamBindings.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.indicator.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.job.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.kernelRootkit.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.kubernetes.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.loadBalancers.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.logEntries.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.mitreAttack.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.moduleName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.mute.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteInfo.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteInitiator.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteUpdateTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.networks.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.nextSteps.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.notebook.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.orgPolicies.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.policyViolationSummary.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.processes.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.secret.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.securityPosture.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.severity.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.toxicCombination.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.vertexAi.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.vulnerability.description - schemas.GoogleCloudSecuritycenterV2Folder.description - schemas.GoogleCloudSecuritycenterV2Folder.properties.resourceFolder.description - schemas.GoogleCloudSecuritycenterV2Folder.properties.resourceFolderDisplayName.description - schemas.GoogleCloudSecuritycenterV2Framework.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.category.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.controls.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.name.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.type.description - schemas.GoogleCloudSecuritycenterV2Geolocation.description - schemas.GoogleCloudSecuritycenterV2Geolocation.properties.regionCode.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupId.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupType.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.properties.path.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.properties.statusCode.description - schemas.GoogleCloudSecuritycenterV2IamBinding.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.action.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.member.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.role.description - schemas.GoogleCloudSecuritycenterV2Indicator.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.domains.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.ipAddresses.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.signatures.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.uris.description - schemas.GoogleCloudSecuritycenterV2InfoType.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.name.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.sensitivityScore.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.version.description - schemas.GoogleCloudSecuritycenterV2IpRule.description - schemas.GoogleCloudSecuritycenterV2IpRule.properties.portRanges.description - schemas.GoogleCloudSecuritycenterV2IpRule.properties.protocol.description - schemas.GoogleCloudSecuritycenterV2IpRules.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.allowed.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.denied.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.destinationIpRanges.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.direction.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.exposedServices.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.sourceIpRanges.description - schemas.GoogleCloudSecuritycenterV2Issue.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.description.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.detection.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.domains.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.exposureScore.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.issueType.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.lastObservationTime.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.mute.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.name.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.primaryResource.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.remediations.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.secondaryResources.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.securityContexts.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.severity.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.state.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2IssueDomain.description - schemas.GoogleCloudSecuritycenterV2IssueDomain.properties.domainCategory.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.cve.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.securityBulletin.description - schemas.GoogleCloudSecuritycenterV2IssueFindingCve.description - schemas.GoogleCloudSecuritycenterV2IssueFindingCve.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin.description - schemas.GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueMute.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteInitiator.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteReason.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteState.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteUpdateTime.description - schemas.GoogleCloudSecuritycenterV2IssueResource.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.application.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.googleCloudMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadata.properties.account.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.properties.id.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadata.properties.subscription.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.properties.id.description - schemas.GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata.properties.projectId.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.properties.aggregatedCount.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.properties.context.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.properties.key.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.properties.value.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.properties.values.description - schemas.GoogleCloudSecuritycenterV2Job.description - schemas.GoogleCloudSecuritycenterV2Job.properties.errorCode.description - schemas.GoogleCloudSecuritycenterV2Job.properties.location.description - schemas.GoogleCloudSecuritycenterV2Job.properties.name.description - schemas.GoogleCloudSecuritycenterV2Job.properties.state.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.name.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedCodeModification.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedFtraceHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedInterruptHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedKernelCodePages.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedKprobeHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedProcessesInRunqueue.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedReadOnlyDataModification.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedSystemCallHandler.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.accessReviews.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.bindings.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.nodePools.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.objects.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.pods.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.roles.description - schemas.GoogleCloudSecuritycenterV2Label.description - schemas.GoogleCloudSecuritycenterV2Label.properties.name.description - schemas.GoogleCloudSecuritycenterV2Label.properties.value.description - schemas.GoogleCloudSecuritycenterV2LoadBalancer.description - schemas.GoogleCloudSecuritycenterV2LoadBalancer.properties.name.description - schemas.GoogleCloudSecuritycenterV2LogEntry.description - schemas.GoogleCloudSecuritycenterV2LogEntry.properties.cloudLoggingEntry.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.properties.binaryFamily.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.properties.detections.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTactics.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTechniques.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTactic.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTechniques.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.version.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.expiryTime.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.filter.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.type.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.properties.dynamicMuteRecords.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.properties.staticMute.description - schemas.GoogleCloudSecuritycenterV2Network.description - schemas.GoogleCloudSecuritycenterV2Network.properties.name.description - schemas.GoogleCloudSecuritycenterV2Node.description - schemas.GoogleCloudSecuritycenterV2Node.properties.name.description - schemas.GoogleCloudSecuritycenterV2NodePool.description - schemas.GoogleCloudSecuritycenterV2NodePool.properties.name.description - schemas.GoogleCloudSecuritycenterV2NodePool.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2Notebook.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.lastAuthor.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.name.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.notebookUpdateTime.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.service.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV2Object.description - schemas.GoogleCloudSecuritycenterV2Object.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Object.properties.group.description - schemas.GoogleCloudSecuritycenterV2Object.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Object.properties.name.description - schemas.GoogleCloudSecuritycenterV2Object.properties.ns.description - schemas.GoogleCloudSecuritycenterV2OrgPolicy.description - schemas.GoogleCloudSecuritycenterV2OrgPolicy.properties.name.description - schemas.GoogleCloudSecuritycenterV2Package.description - schemas.GoogleCloudSecuritycenterV2Package.properties.cpeUri.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageName.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageType.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageVersion.description - schemas.GoogleCloudSecuritycenterV2Pipeline.description - schemas.GoogleCloudSecuritycenterV2Pipeline.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Pipeline.properties.name.description - schemas.GoogleCloudSecuritycenterV2Pod.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.labels.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.name.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.ns.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.detectedValue.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.expectedValue.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.field.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.conformantResourcesCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.evaluationErrorsCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.outOfScopeResourcesCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.policyViolationsCount.description - schemas.GoogleCloudSecuritycenterV2PortRange.description - schemas.GoogleCloudSecuritycenterV2PortRange.properties.max.description - schemas.GoogleCloudSecuritycenterV2PortRange.properties.min.description - schemas.GoogleCloudSecuritycenterV2Process.description - schemas.GoogleCloudSecuritycenterV2Process.properties.args.description - schemas.GoogleCloudSecuritycenterV2Process.properties.argumentsTruncated.description - schemas.GoogleCloudSecuritycenterV2Process.properties.binary.description - schemas.GoogleCloudSecuritycenterV2Process.properties.envVariables.description - schemas.GoogleCloudSecuritycenterV2Process.properties.envVariablesTruncated.description - schemas.GoogleCloudSecuritycenterV2Process.properties.libraries.description - schemas.GoogleCloudSecuritycenterV2Process.properties.name.description - schemas.GoogleCloudSecuritycenterV2Process.properties.parentPid.description - schemas.GoogleCloudSecuritycenterV2Process.properties.pid.description - schemas.GoogleCloudSecuritycenterV2Process.properties.script.description - schemas.GoogleCloudSecuritycenterV2Process.properties.userId.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.memoryHashSignature.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.signatureType.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.yaraRuleSignature.description - schemas.GoogleCloudSecuritycenterV2Reference.description - schemas.GoogleCloudSecuritycenterV2Reference.properties.source.description - schemas.GoogleCloudSecuritycenterV2Reference.properties.uri.description - schemas.GoogleCloudSecuritycenterV2Requests.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.longTermAllowed.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.longTermDenied.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.ratio.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.shortTermAllowed.description - schemas.GoogleCloudSecuritycenterV2Resource.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.application.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.gcpMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.location.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.resourcePath.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.resourcePathString.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.service.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourcePath.description - schemas.GoogleCloudSecuritycenterV2ResourcePath.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.id.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.nodeType.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceLabelsSelector.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceType.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceValue.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.scope.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.sensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.tagValues.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2Role.description - schemas.GoogleCloudSecuritycenterV2Role.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Role.properties.name.description - schemas.GoogleCloudSecuritycenterV2Role.properties.ns.description - schemas.GoogleCloudSecuritycenterV2Secret.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.environmentVariable.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.filePath.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.status.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.type.description - schemas.GoogleCloudSecuritycenterV2SecretEnvironmentVariable.description - schemas.GoogleCloudSecuritycenterV2SecretEnvironmentVariable.properties.key.description - schemas.GoogleCloudSecuritycenterV2SecretFilePath.description - schemas.GoogleCloudSecuritycenterV2SecretFilePath.properties.path.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.lastUpdatedTime.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.validity.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.bulletinId.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.submissionTime.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.suggestedUpgradeVersion.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.preview.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.type.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.changedPolicy.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policy.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policyDriftDetails.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policySet.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.postureDeployment.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.postureDeploymentResource.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.revisionId.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.highSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV2SensitivityScore.description - schemas.GoogleCloudSecuritycenterV2SensitivityScore.properties.score.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2StaticMute.description - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.applyTime.description - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.state.description - schemas.GoogleCloudSecuritycenterV2Subject.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.name.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.ns.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.assignee.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.description.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.id.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.status.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.uri.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.properties.attackExposureScore.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2VertexAi.description - schemas.GoogleCloudSecuritycenterV2VertexAi.properties.datasets.description - schemas.GoogleCloudSecuritycenterV2VertexAi.properties.pipelines.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.cve.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.cwes.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.fixedPackage.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.offendingPackage.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.providerRiskScore.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.reachable.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.securityBulletin.description - schemas.GoogleCloudSecuritycenterV2YaraRuleSignature.description - schemas.GoogleCloudSecuritycenterV2YaraRuleSignature.properties.yaraRule.description - schemas.GroupMembership.description - schemas.GroupMembership.properties.groupId.description - schemas.GroupMembership.properties.groupType.description - schemas.HttpResponse.description - schemas.HttpResponse.properties.path.description - schemas.HttpResponse.properties.statusCode.description - schemas.IamBinding.description - schemas.IamBinding.properties.action.description - schemas.IamBinding.properties.member.description - schemas.IamBinding.properties.role.description - schemas.Indicator.description - schemas.Indicator.properties.domains.description - schemas.Indicator.properties.ipAddresses.description - schemas.Indicator.properties.signatures.description - schemas.Indicator.properties.uris.description - schemas.InfoType.description - schemas.InfoType.properties.name.description - schemas.InfoType.properties.sensitivityScore.description - schemas.InfoType.properties.version.description - schemas.IpRule.description - schemas.IpRule.properties.portRanges.description - schemas.IpRule.properties.protocol.description - schemas.IpRules.description - schemas.IpRules.properties.allowed.description - schemas.IpRules.properties.denied.description - schemas.IpRules.properties.destinationIpRanges.description - schemas.IpRules.properties.direction.description - schemas.IpRules.properties.exposedServices.description - schemas.IpRules.properties.sourceIpRanges.description - schemas.Job.description - schemas.Job.properties.errorCode.description - schemas.Job.properties.location.description - schemas.Job.properties.name.description - schemas.Job.properties.state.description - schemas.KernelRootkit.description - schemas.KernelRootkit.properties.name.description - schemas.KernelRootkit.properties.unexpectedCodeModification.description - schemas.KernelRootkit.properties.unexpectedFtraceHandler.description - schemas.KernelRootkit.properties.unexpectedInterruptHandler.description - schemas.KernelRootkit.properties.unexpectedKernelCodePages.description - schemas.KernelRootkit.properties.unexpectedKprobeHandler.description - schemas.KernelRootkit.properties.unexpectedProcessesInRunqueue.description - schemas.KernelRootkit.properties.unexpectedReadOnlyDataModification.description - schemas.KernelRootkit.properties.unexpectedSystemCallHandler.description - schemas.Kubernetes.description - schemas.Kubernetes.properties.accessReviews.description - schemas.Kubernetes.properties.bindings.description - schemas.Kubernetes.properties.nodePools.description - schemas.Kubernetes.properties.nodes.description - schemas.Kubernetes.properties.objects.description - schemas.Kubernetes.properties.pods.description - schemas.Kubernetes.properties.roles.description - schemas.Label.description - schemas.Label.properties.name.description - schemas.Label.properties.value.description - schemas.LoadBalancer.description - schemas.LoadBalancer.properties.name.description - schemas.LogEntry.description - schemas.LogEntry.properties.cloudLoggingEntry.description - schemas.MemoryHashSignature.description - schemas.MemoryHashSignature.properties.binaryFamily.description - schemas.MemoryHashSignature.properties.detections.description - schemas.MitreAttack.description - schemas.MitreAttack.properties.additionalTactics.description - schemas.MitreAttack.properties.additionalTechniques.description - schemas.MitreAttack.properties.primaryTactic.description - schemas.MitreAttack.properties.primaryTechniques.description - schemas.MitreAttack.properties.version.description - schemas.MuteInfo.description - schemas.MuteInfo.properties.dynamicMuteRecords.description - schemas.MuteInfo.properties.staticMute.description - schemas.Network.description - schemas.Network.properties.name.description - schemas.Node.description - schemas.Node.properties.name.description - schemas.NodePool.description - schemas.NodePool.properties.name.description - schemas.NodePool.properties.nodes.description - schemas.Notebook.description - schemas.Notebook.properties.lastAuthor.description - schemas.Notebook.properties.name.description - schemas.Notebook.properties.notebookUpdateTime.description - schemas.Notebook.properties.service.description - schemas.Object.description - schemas.Object.properties.containers.description - schemas.Object.properties.group.description - schemas.Object.properties.kind.description - schemas.Object.properties.name.description - schemas.Object.properties.ns.description - schemas.OrgPolicy.description - schemas.OrgPolicy.properties.name.description - schemas.Package.description - schemas.Package.properties.cpeUri.description - schemas.Package.properties.packageName.description - schemas.Package.properties.packageType.description - schemas.Package.properties.packageVersion.description - schemas.Pipeline.description - schemas.Pipeline.properties.displayName.description - schemas.Pipeline.properties.name.description - schemas.Pod.description - schemas.Pod.properties.containers.description - schemas.Pod.properties.labels.description - schemas.Pod.properties.name.description - schemas.Pod.properties.ns.description - schemas.PolicyDriftDetails.description - schemas.PolicyDriftDetails.properties.detectedValue.description - schemas.PolicyDriftDetails.properties.expectedValue.description - schemas.PolicyDriftDetails.properties.field.description - schemas.PolicyViolationSummary.description - schemas.PolicyViolationSummary.properties.conformantResourcesCount.description - schemas.PolicyViolationSummary.properties.evaluationErrorsCount.description - schemas.PolicyViolationSummary.properties.outOfScopeResourcesCount.description - schemas.PolicyViolationSummary.properties.policyViolationsCount.description - schemas.PortRange.description - schemas.PortRange.properties.max.description - schemas.PortRange.properties.min.description - schemas.Process.description - schemas.Process.properties.args.description - schemas.Process.properties.argumentsTruncated.description - schemas.Process.properties.binary.description - schemas.Process.properties.envVariables.description - schemas.Process.properties.envVariablesTruncated.description - schemas.Process.properties.libraries.description - schemas.Process.properties.name.description - schemas.Process.properties.parentPid.description - schemas.Process.properties.pid.description - schemas.Process.properties.script.description - schemas.Process.properties.userId.description - schemas.ProcessSignature.description - schemas.ProcessSignature.properties.memoryHashSignature.description - schemas.ProcessSignature.properties.signatureType.description - schemas.ProcessSignature.properties.yaraRuleSignature.description - schemas.RapidVulnerabilityDetectionSettings.description - schemas.RapidVulnerabilityDetectionSettings.properties.modules.description - schemas.RapidVulnerabilityDetectionSettings.properties.name.description - schemas.RapidVulnerabilityDetectionSettings.properties.serviceEnablementState.description - schemas.RapidVulnerabilityDetectionSettings.properties.updateTime.description - schemas.Reference.description - schemas.Reference.properties.source.description - schemas.Reference.properties.uri.description - schemas.Requests.description - schemas.Requests.properties.longTermAllowed.description - schemas.Requests.properties.longTermDenied.description - schemas.Requests.properties.ratio.description - schemas.Requests.properties.shortTermAllowed.description - schemas.ResourcePath.description - schemas.ResourcePath.properties.nodes.description - schemas.ResourcePathNode.description - schemas.ResourcePathNode.properties.displayName.description - schemas.ResourcePathNode.properties.id.description - schemas.ResourcePathNode.properties.nodeType.description - schemas.Role.description - schemas.Role.properties.kind.description - schemas.Role.properties.name.description - schemas.Role.properties.ns.description - schemas.Secret.description - schemas.Secret.properties.environmentVariable.description - schemas.Secret.properties.filePath.description - schemas.Secret.properties.status.description - schemas.Secret.properties.type.description - schemas.SecretEnvironmentVariable.description - schemas.SecretEnvironmentVariable.properties.key.description - schemas.SecretFilePath.description - schemas.SecretFilePath.properties.path.description - schemas.SecretStatus.description - schemas.SecretStatus.properties.lastUpdatedTime.description - schemas.SecretStatus.properties.validity.description - schemas.SecurityBulletin.description - schemas.SecurityBulletin.properties.bulletinId.description - schemas.SecurityBulletin.properties.submissionTime.description - schemas.SecurityBulletin.properties.suggestedUpgradeVersion.description - schemas.SecurityCenterSettings.description - schemas.SecurityCenterSettings.properties.cryptoKeyName.description - schemas.SecurityCenterSettings.properties.logSinkProject.description - schemas.SecurityCenterSettings.properties.name.description - schemas.SecurityCenterSettings.properties.onboardingTime.description - schemas.SecurityCenterSettings.properties.orgServiceAccount.description - schemas.SecurityHealthAnalyticsSettings.description - schemas.SecurityHealthAnalyticsSettings.properties.modules.description - schemas.SecurityHealthAnalyticsSettings.properties.name.description - schemas.SecurityHealthAnalyticsSettings.properties.serviceAccount.description - schemas.SecurityHealthAnalyticsSettings.properties.serviceEnablementState.description - schemas.SecurityHealthAnalyticsSettings.properties.updateTime.description - schemas.SecurityMarks.description - schemas.SecurityMarks.properties.canonicalName.description - schemas.SecurityMarks.properties.marks.description - schemas.SecurityMarks.properties.name.description - schemas.SecurityPolicy.description - schemas.SecurityPolicy.properties.name.description - schemas.SecurityPolicy.properties.preview.description - schemas.SecurityPolicy.properties.type.description - schemas.SecurityPosture.description - schemas.SecurityPosture.properties.changedPolicy.description - schemas.SecurityPosture.properties.name.description - schemas.SecurityPosture.properties.policy.description - schemas.SecurityPosture.properties.policyDriftDetails.description - schemas.SecurityPosture.properties.policySet.description - schemas.SecurityPosture.properties.postureDeployment.description - schemas.SecurityPosture.properties.postureDeploymentResource.description - schemas.SecurityPosture.properties.revisionId.description - schemas.SensitivityScore.description - schemas.SensitivityScore.properties.score.description - schemas.ServiceAccountDelegationInfo.description - schemas.ServiceAccountDelegationInfo.properties.principalEmail.description - schemas.ServiceAccountDelegationInfo.properties.principalSubject.description - schemas.StaticMute.description - schemas.StaticMute.properties.applyTime.description - schemas.StaticMute.properties.state.description - schemas.Subject.description - schemas.Subject.properties.kind.description - schemas.Subject.properties.name.description - schemas.Subject.properties.ns.description - schemas.Subscription.description - schemas.Subscription.properties.details.description - schemas.Subscription.properties.name.description - schemas.Subscription.properties.tier.description - schemas.TicketInfo.description - schemas.TicketInfo.properties.assignee.description - schemas.TicketInfo.properties.description.description - schemas.TicketInfo.properties.id.description - schemas.TicketInfo.properties.status.description - schemas.TicketInfo.properties.updateTime.description - schemas.TicketInfo.properties.uri.description - schemas.ToxicCombination.description - schemas.ToxicCombination.properties.attackExposureScore.description - schemas.ToxicCombination.properties.relatedFindings.description - schemas.VertexAi.description - schemas.VertexAi.properties.datasets.description - schemas.VertexAi.properties.pipelines.description - schemas.VirtualMachineThreatDetectionSettings.description - schemas.VirtualMachineThreatDetectionSettings.properties.modules.description - schemas.VirtualMachineThreatDetectionSettings.properties.name.description - schemas.VirtualMachineThreatDetectionSettings.properties.serviceAccount.description - schemas.VirtualMachineThreatDetectionSettings.properties.serviceEnablementState.description - schemas.VirtualMachineThreatDetectionSettings.properties.updateTime.description - schemas.Vulnerability.description - schemas.Vulnerability.properties.cve.description - schemas.Vulnerability.properties.cwes.description - schemas.Vulnerability.properties.fixedPackage.description - schemas.Vulnerability.properties.offendingPackage.description - schemas.Vulnerability.properties.providerRiskScore.description - schemas.Vulnerability.properties.reachable.description - schemas.Vulnerability.properties.securityBulletin.description - schemas.VulnerabilityCountBySeverity.description - schemas.VulnerabilityCountBySeverity.properties.severityToFindingCount.description - schemas.VulnerabilitySnapshot.description - schemas.VulnerabilitySnapshot.properties.cloudProvider.description - schemas.VulnerabilitySnapshot.properties.findingCount.description - schemas.VulnerabilitySnapshot.properties.name.description - schemas.VulnerabilitySnapshot.properties.snapshotTime.description - schemas.WebSecurityScannerSettings.description - schemas.WebSecurityScannerSettings.properties.modules.description - schemas.WebSecurityScannerSettings.properties.name.description - schemas.WebSecurityScannerSettings.properties.serviceEnablementState.description - schemas.WebSecurityScannerSettings.properties.updateTime.description - schemas.YaraRuleSignature.description - schemas.YaraRuleSignature.properties.yaraRule.description The following keys were changed: - schemas.AgentDataAccessEvent.properties.operation.enumDescriptions - schemas.AiModel.properties.deploymentPlatform.enumDescriptions - schemas.ArtifactGuardPolicy.properties.type.enumDescriptions - schemas.AttackExposure.properties.state.enumDescriptions - schemas.CloudControl.properties.type.enumDescriptions - schemas.CloudDlpDataProfile.properties.parentType.enumDescriptions - schemas.Config.properties.moduleEnablementState.enumDescriptions - schemas.Connection.properties.protocol.enumDescriptions - schemas.ContainerThreatDetectionSettings.properties.serviceEnablementState.enumDescriptions - schemas.Cve.properties.exploitationActivity.enumDescriptions - schemas.Cve.properties.impact.enumDescriptions - schemas.Cvssv3.properties.attackComplexity.enumDescriptions - schemas.Cvssv3.properties.attackVector.enumDescriptions - schemas.Cvssv3.properties.availabilityImpact.enumDescriptions - schemas.Cvssv3.properties.confidentialityImpact.enumDescriptions - schemas.Cvssv3.properties.integrityImpact.enumDescriptions - schemas.Cvssv3.properties.privilegesRequired.enumDescriptions - schemas.Cvssv3.properties.scope.enumDescriptions - schemas.Cvssv3.properties.userInteraction.enumDescriptions - schemas.DataAccessEvent.properties.operation.enumDescriptions - schemas.DataFlowEvent.properties.operation.enumDescriptions - schemas.DataRetentionDeletionEvent.properties.eventType.enumDescriptions - schemas.Details.properties.type.enum - schemas.Details.properties.type.enumDescriptions - schemas.DiscoveredWorkload.properties.confidence.enumDescriptions - schemas.DiscoveredWorkload.properties.workloadType.enumDescriptions - schemas.EventThreatDetectionSettings.properties.serviceEnablementState.enumDescriptions - schemas.File.properties.fileLoadState.enumDescriptions - schemas.FileOperation.properties.type.enumDescriptions - schemas.Finding.properties.findingClass.enumDescriptions - schemas.Finding.properties.mute.enumDescriptions - schemas.Finding.properties.severity.enumDescriptions - schemas.Finding.properties.state.enumDescriptions - schemas.Framework.properties.category.items.enumDescriptions - schemas.Framework.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.enablementState.enumDescriptions - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1Resource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceValue.enumDescriptions - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.enablementState.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.highSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AiModel.properties.deploymentPlatform.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.parentType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Connection.properties.protocol.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitationActivity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cve.properties.impact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackComplexity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackVector.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.availabilityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.confidentialityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.integrityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.privilegesRequired.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.scope.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.userInteraction.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.confidence.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.workloadType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2File.properties.fileLoadState.enumDescriptions - schemas.GoogleCloudSecuritycenterV2FileOperation.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.findingClass.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.mute.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Framework.properties.category.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Framework.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.action.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IpRules.properties.direction.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.issueType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueDomain.properties.domainCategory.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteState.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Job.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTactics.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTechniques.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTactic.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTechniques.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.signatureType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Resource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.nodeType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceValue.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Role.properties.kind.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.validity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.highSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitivityScore.properties.score.enumDescriptions - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Subject.properties.kind.enumDescriptions - schemas.GroupMembership.properties.groupType.enumDescriptions - schemas.IamBinding.properties.action.enumDescriptions - schemas.IpRules.properties.direction.enumDescriptions - schemas.Job.properties.state.enumDescriptions - schemas.MitreAttack.properties.additionalTactics.items.enumDescriptions - schemas.MitreAttack.properties.additionalTechniques.items.enumDescriptions - schemas.MitreAttack.properties.primaryTactic.enumDescriptions - schemas.MitreAttack.properties.primaryTechniques.items.enumDescriptions - schemas.ProcessSignature.properties.signatureType.enumDescriptions - schemas.RapidVulnerabilityDetectionSettings.properties.serviceEnablementState.enumDescriptions - schemas.ResourcePathNode.properties.nodeType.enumDescriptions - schemas.Role.properties.kind.enumDescriptions - schemas.SecretStatus.properties.validity.enumDescriptions - schemas.SecurityHealthAnalyticsSettings.properties.serviceEnablementState.enumDescriptions - schemas.SensitivityScore.properties.score.enumDescriptions - schemas.StaticMute.properties.state.enumDescriptions - schemas.Subject.properties.kind.enumDescriptions - schemas.Subscription.properties.tier.enumDescriptions - schemas.VirtualMachineThreatDetectionSettings.properties.serviceEnablementState.enumDescriptions - schemas.VulnerabilitySnapshot.properties.cloudProvider.enumDescriptions - schemas.WebSecurityScannerSettings.properties.serviceEnablementState.enumDescriptions #### securitycenter:v1 The following keys were deleted: - resources.folders.resources.assets.methods.group.parameters.parent.description - resources.folders.resources.assets.methods.list.parameters.compareDuration.description - resources.folders.resources.assets.methods.list.parameters.fieldMask.description - resources.folders.resources.assets.methods.list.parameters.filter.description - resources.folders.resources.assets.methods.list.parameters.orderBy.description - resources.folders.resources.assets.methods.list.parameters.pageSize.description - resources.folders.resources.assets.methods.list.parameters.pageToken.description - resources.folders.resources.assets.methods.list.parameters.parent.description - resources.folders.resources.assets.methods.list.parameters.readTime.description - resources.folders.resources.assets.methods.updateSecurityMarks.parameters.name.description - resources.folders.resources.assets.methods.updateSecurityMarks.parameters.startTime.description - resources.folders.resources.assets.methods.updateSecurityMarks.parameters.updateMask.description - resources.folders.resources.bigQueryExports.methods.create.parameters.bigQueryExportId.description - resources.folders.resources.bigQueryExports.methods.create.parameters.parent.description - resources.folders.resources.bigQueryExports.methods.delete.parameters.name.description - resources.folders.resources.bigQueryExports.methods.get.parameters.name.description - resources.folders.resources.bigQueryExports.methods.list.parameters.pageSize.description - resources.folders.resources.bigQueryExports.methods.list.parameters.pageToken.description - resources.folders.resources.bigQueryExports.methods.list.parameters.parent.description - resources.folders.resources.bigQueryExports.methods.patch.parameters.name.description - resources.folders.resources.bigQueryExports.methods.patch.parameters.updateMask.description - resources.folders.resources.eventThreatDetectionSettings.methods.validateCustomModule.parameters.parent.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.create.parameters.parent.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.delete.parameters.name.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.get.parameters.name.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.pageSize.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.pageToken.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.parent.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.pageSize.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.pageToken.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.parent.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.patch.parameters.name.description - resources.folders.resources.eventThreatDetectionSettings.resources.customModules.methods.patch.parameters.updateMask.description - resources.folders.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.get.parameters.name.description - resources.folders.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.pageSize.description - resources.folders.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.pageToken.description - resources.folders.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.parent.description - resources.folders.resources.findings.methods.bulkMute.parameters.parent.description - resources.folders.resources.locations.resources.muteConfigs.methods.delete.parameters.name.description - resources.folders.resources.locations.resources.muteConfigs.methods.get.parameters.name.description - resources.folders.resources.locations.resources.muteConfigs.methods.patch.parameters.name.description - resources.folders.resources.locations.resources.muteConfigs.methods.patch.parameters.updateMask.description - resources.folders.resources.muteConfigs.methods.create.parameters.muteConfigId.description - resources.folders.resources.muteConfigs.methods.create.parameters.parent.description - resources.folders.resources.muteConfigs.methods.delete.parameters.name.description - resources.folders.resources.muteConfigs.methods.get.parameters.name.description - resources.folders.resources.muteConfigs.methods.list.parameters.pageSize.description - resources.folders.resources.muteConfigs.methods.list.parameters.pageToken.description - resources.folders.resources.muteConfigs.methods.list.parameters.parent.description - resources.folders.resources.muteConfigs.methods.patch.parameters.name.description - resources.folders.resources.muteConfigs.methods.patch.parameters.updateMask.description - resources.folders.resources.notificationConfigs.methods.create.parameters.configId.description - resources.folders.resources.notificationConfigs.methods.create.parameters.parent.description - resources.folders.resources.notificationConfigs.methods.delete.parameters.name.description - resources.folders.resources.notificationConfigs.methods.get.parameters.name.description - resources.folders.resources.notificationConfigs.methods.list.parameters.pageSize.description - resources.folders.resources.notificationConfigs.methods.list.parameters.pageToken.description - resources.folders.resources.notificationConfigs.methods.list.parameters.parent.description - resources.folders.resources.notificationConfigs.methods.patch.parameters.name.description - resources.folders.resources.notificationConfigs.methods.patch.parameters.updateMask.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.create.parameters.parent.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.delete.parameters.name.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.get.parameters.name.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.pageSize.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.pageToken.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.parent.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.pageSize.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.pageToken.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.parent.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.patch.parameters.name.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.patch.parameters.updateMask.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.customModules.methods.simulate.parameters.parent.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.get.parameters.name.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.pageSize.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.pageToken.description - resources.folders.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.parent.description - resources.folders.resources.sources.methods.list.parameters.pageSize.description - resources.folders.resources.sources.methods.list.parameters.pageToken.description - resources.folders.resources.sources.methods.list.parameters.parent.description - resources.folders.resources.sources.resources.findings.methods.group.parameters.parent.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.compareDuration.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.fieldMask.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.filter.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.orderBy.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.pageSize.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.pageToken.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.parent.description - resources.folders.resources.sources.resources.findings.methods.list.parameters.readTime.description - resources.folders.resources.sources.resources.findings.methods.patch.parameters.name.description - resources.folders.resources.sources.resources.findings.methods.patch.parameters.updateMask.description - resources.folders.resources.sources.resources.findings.methods.setMute.parameters.name.description - resources.folders.resources.sources.resources.findings.methods.setState.parameters.name.description - resources.folders.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.name.description - resources.folders.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.startTime.description - resources.folders.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.updateMask.description - resources.folders.resources.sources.resources.findings.resources.externalSystems.methods.patch.parameters.name.description - resources.folders.resources.sources.resources.findings.resources.externalSystems.methods.patch.parameters.updateMask.description - resources.organizations.methods.getOrganizationSettings.parameters.name.description - resources.organizations.methods.updateOrganizationSettings.parameters.name.description - resources.organizations.methods.updateOrganizationSettings.parameters.updateMask.description - resources.organizations.resources.assets.methods.group.parameters.parent.description - resources.organizations.resources.assets.methods.list.parameters.compareDuration.description - resources.organizations.resources.assets.methods.list.parameters.fieldMask.description - resources.organizations.resources.assets.methods.list.parameters.filter.description - resources.organizations.resources.assets.methods.list.parameters.orderBy.description - resources.organizations.resources.assets.methods.list.parameters.pageSize.description - resources.organizations.resources.assets.methods.list.parameters.pageToken.description - resources.organizations.resources.assets.methods.list.parameters.parent.description - resources.organizations.resources.assets.methods.list.parameters.readTime.description - resources.organizations.resources.assets.methods.runDiscovery.parameters.parent.description - resources.organizations.resources.assets.methods.updateSecurityMarks.parameters.name.description - resources.organizations.resources.assets.methods.updateSecurityMarks.parameters.startTime.description - resources.organizations.resources.assets.methods.updateSecurityMarks.parameters.updateMask.description - resources.organizations.resources.attackPaths.methods.list.parameters.filter.description - resources.organizations.resources.attackPaths.methods.list.parameters.pageSize.description - resources.organizations.resources.attackPaths.methods.list.parameters.pageToken.description - resources.organizations.resources.attackPaths.methods.list.parameters.parent.description - resources.organizations.resources.bigQueryExports.methods.create.parameters.bigQueryExportId.description - resources.organizations.resources.bigQueryExports.methods.create.parameters.parent.description - resources.organizations.resources.bigQueryExports.methods.delete.parameters.name.description - resources.organizations.resources.bigQueryExports.methods.get.parameters.name.description - resources.organizations.resources.bigQueryExports.methods.list.parameters.pageSize.description - resources.organizations.resources.bigQueryExports.methods.list.parameters.pageToken.description - resources.organizations.resources.bigQueryExports.methods.list.parameters.parent.description - resources.organizations.resources.bigQueryExports.methods.patch.parameters.name.description - resources.organizations.resources.bigQueryExports.methods.patch.parameters.updateMask.description - resources.organizations.resources.eventThreatDetectionSettings.methods.validateCustomModule.parameters.parent.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.create.parameters.parent.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.delete.parameters.name.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.get.parameters.name.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.pageSize.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.pageToken.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.parent.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.pageSize.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.pageToken.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.parent.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.patch.parameters.name.description - resources.organizations.resources.eventThreatDetectionSettings.resources.customModules.methods.patch.parameters.updateMask.description - resources.organizations.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.get.parameters.name.description - resources.organizations.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.pageSize.description - resources.organizations.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.pageToken.description - resources.organizations.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.parent.description - resources.organizations.resources.findings.methods.bulkMute.parameters.parent.description - resources.organizations.resources.locations.resources.muteConfigs.methods.delete.parameters.name.description - resources.organizations.resources.locations.resources.muteConfigs.methods.get.parameters.name.description - resources.organizations.resources.locations.resources.muteConfigs.methods.patch.parameters.name.description - resources.organizations.resources.locations.resources.muteConfigs.methods.patch.parameters.updateMask.description - resources.organizations.resources.muteConfigs.methods.create.parameters.muteConfigId.description - resources.organizations.resources.muteConfigs.methods.create.parameters.parent.description - resources.organizations.resources.muteConfigs.methods.delete.parameters.name.description - resources.organizations.resources.muteConfigs.methods.get.parameters.name.description - resources.organizations.resources.muteConfigs.methods.list.parameters.pageSize.description - resources.organizations.resources.muteConfigs.methods.list.parameters.pageToken.description - resources.organizations.resources.muteConfigs.methods.list.parameters.parent.description - resources.organizations.resources.muteConfigs.methods.patch.parameters.name.description - resources.organizations.resources.muteConfigs.methods.patch.parameters.updateMask.description - resources.organizations.resources.notificationConfigs.methods.create.parameters.configId.description - resources.organizations.resources.notificationConfigs.methods.create.parameters.parent.description - resources.organizations.resources.notificationConfigs.methods.delete.parameters.name.description - resources.organizations.resources.notificationConfigs.methods.get.parameters.name.description - resources.organizations.resources.notificationConfigs.methods.list.parameters.pageSize.description - resources.organizations.resources.notificationConfigs.methods.list.parameters.pageToken.description - resources.organizations.resources.notificationConfigs.methods.list.parameters.parent.description - resources.organizations.resources.notificationConfigs.methods.patch.parameters.name.description - resources.organizations.resources.notificationConfigs.methods.patch.parameters.updateMask.description - resources.organizations.resources.operations.methods.cancel.parameters.name.description - resources.organizations.resources.operations.methods.delete.parameters.name.description - resources.organizations.resources.operations.methods.get.parameters.name.description - resources.organizations.resources.operations.methods.list.parameters.filter.description - resources.organizations.resources.operations.methods.list.parameters.name.description - resources.organizations.resources.operations.methods.list.parameters.pageSize.description - resources.organizations.resources.operations.methods.list.parameters.pageToken.description - resources.organizations.resources.operations.methods.list.parameters.returnPartialSuccess.description - resources.organizations.resources.resourceValueConfigs.methods.batchCreate.parameters.parent.description - resources.organizations.resources.resourceValueConfigs.methods.delete.parameters.name.description - resources.organizations.resources.resourceValueConfigs.methods.get.parameters.name.description - resources.organizations.resources.resourceValueConfigs.methods.list.parameters.pageSize.description - resources.organizations.resources.resourceValueConfigs.methods.list.parameters.pageToken.description - resources.organizations.resources.resourceValueConfigs.methods.list.parameters.parent.description - resources.organizations.resources.resourceValueConfigs.methods.patch.parameters.name.description - resources.organizations.resources.resourceValueConfigs.methods.patch.parameters.updateMask.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.create.parameters.parent.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.delete.parameters.name.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.get.parameters.name.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.pageSize.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.pageToken.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.parent.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.pageSize.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.pageToken.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.parent.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.patch.parameters.name.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.patch.parameters.updateMask.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.customModules.methods.simulate.parameters.parent.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.get.parameters.name.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.pageSize.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.pageToken.description - resources.organizations.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.parent.description - resources.organizations.resources.simulations.methods.get.parameters.name.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.attackPaths.methods.list.parameters.filter.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.attackPaths.methods.list.parameters.pageSize.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.attackPaths.methods.list.parameters.pageToken.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.attackPaths.methods.list.parameters.parent.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.valuedResources.methods.list.parameters.filter.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.valuedResources.methods.list.parameters.orderBy.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.valuedResources.methods.list.parameters.pageSize.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.valuedResources.methods.list.parameters.pageToken.description - resources.organizations.resources.simulations.resources.attackExposureResults.resources.valuedResources.methods.list.parameters.parent.description - resources.organizations.resources.simulations.resources.attackPaths.methods.list.parameters.filter.description - resources.organizations.resources.simulations.resources.attackPaths.methods.list.parameters.pageSize.description - resources.organizations.resources.simulations.resources.attackPaths.methods.list.parameters.pageToken.description - resources.organizations.resources.simulations.resources.attackPaths.methods.list.parameters.parent.description - resources.organizations.resources.simulations.resources.valuedResources.methods.get.parameters.name.description - resources.organizations.resources.simulations.resources.valuedResources.methods.list.parameters.filter.description - resources.organizations.resources.simulations.resources.valuedResources.methods.list.parameters.orderBy.description - resources.organizations.resources.simulations.resources.valuedResources.methods.list.parameters.pageSize.description - resources.organizations.resources.simulations.resources.valuedResources.methods.list.parameters.pageToken.description - resources.organizations.resources.simulations.resources.valuedResources.methods.list.parameters.parent.description - resources.organizations.resources.simulations.resources.valuedResources.resources.attackPaths.methods.list.parameters.filter.description - resources.organizations.resources.simulations.resources.valuedResources.resources.attackPaths.methods.list.parameters.pageSize.description - resources.organizations.resources.simulations.resources.valuedResources.resources.attackPaths.methods.list.parameters.pageToken.description - resources.organizations.resources.simulations.resources.valuedResources.resources.attackPaths.methods.list.parameters.parent.description - resources.organizations.resources.sources.methods.create.parameters.parent.description - resources.organizations.resources.sources.methods.get.parameters.name.description - resources.organizations.resources.sources.methods.getIamPolicy.parameters.resource.description - resources.organizations.resources.sources.methods.list.parameters.pageSize.description - resources.organizations.resources.sources.methods.list.parameters.pageToken.description - resources.organizations.resources.sources.methods.list.parameters.parent.description - resources.organizations.resources.sources.methods.patch.parameters.name.description - resources.organizations.resources.sources.methods.patch.parameters.updateMask.description - resources.organizations.resources.sources.methods.setIamPolicy.parameters.resource.description - resources.organizations.resources.sources.methods.testIamPermissions.parameters.resource.description - resources.organizations.resources.sources.resources.findings.methods.create.parameters.findingId.description - resources.organizations.resources.sources.resources.findings.methods.create.parameters.parent.description - resources.organizations.resources.sources.resources.findings.methods.group.parameters.parent.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.compareDuration.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.fieldMask.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.filter.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.orderBy.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.pageSize.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.pageToken.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.parent.description - resources.organizations.resources.sources.resources.findings.methods.list.parameters.readTime.description - resources.organizations.resources.sources.resources.findings.methods.patch.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.patch.parameters.updateMask.description - resources.organizations.resources.sources.resources.findings.methods.setMute.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.setState.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.name.description - resources.organizations.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.startTime.description - resources.organizations.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.updateMask.description - resources.organizations.resources.sources.resources.findings.resources.externalSystems.methods.patch.parameters.name.description - resources.organizations.resources.sources.resources.findings.resources.externalSystems.methods.patch.parameters.updateMask.description - resources.organizations.resources.valuedResources.methods.list.parameters.filter.description - resources.organizations.resources.valuedResources.methods.list.parameters.orderBy.description - resources.organizations.resources.valuedResources.methods.list.parameters.pageSize.description - resources.organizations.resources.valuedResources.methods.list.parameters.pageToken.description - resources.organizations.resources.valuedResources.methods.list.parameters.parent.description - resources.projects.resources.assets.methods.group.parameters.parent.description - resources.projects.resources.assets.methods.list.parameters.compareDuration.description - resources.projects.resources.assets.methods.list.parameters.fieldMask.description - resources.projects.resources.assets.methods.list.parameters.filter.description - resources.projects.resources.assets.methods.list.parameters.orderBy.description - resources.projects.resources.assets.methods.list.parameters.pageSize.description - resources.projects.resources.assets.methods.list.parameters.pageToken.description - resources.projects.resources.assets.methods.list.parameters.parent.description - resources.projects.resources.assets.methods.list.parameters.readTime.description - resources.projects.resources.assets.methods.updateSecurityMarks.parameters.name.description - resources.projects.resources.assets.methods.updateSecurityMarks.parameters.startTime.description - resources.projects.resources.assets.methods.updateSecurityMarks.parameters.updateMask.description - resources.projects.resources.bigQueryExports.methods.create.parameters.bigQueryExportId.description - resources.projects.resources.bigQueryExports.methods.create.parameters.parent.description - resources.projects.resources.bigQueryExports.methods.delete.parameters.name.description - resources.projects.resources.bigQueryExports.methods.get.parameters.name.description - resources.projects.resources.bigQueryExports.methods.list.parameters.pageSize.description - resources.projects.resources.bigQueryExports.methods.list.parameters.pageToken.description - resources.projects.resources.bigQueryExports.methods.list.parameters.parent.description - resources.projects.resources.bigQueryExports.methods.patch.parameters.name.description - resources.projects.resources.bigQueryExports.methods.patch.parameters.updateMask.description - resources.projects.resources.eventThreatDetectionSettings.methods.validateCustomModule.parameters.parent.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.create.parameters.parent.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.delete.parameters.name.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.get.parameters.name.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.pageSize.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.pageToken.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.list.parameters.parent.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.pageSize.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.pageToken.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.listDescendant.parameters.parent.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.patch.parameters.name.description - resources.projects.resources.eventThreatDetectionSettings.resources.customModules.methods.patch.parameters.updateMask.description - resources.projects.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.get.parameters.name.description - resources.projects.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.pageSize.description - resources.projects.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.pageToken.description - resources.projects.resources.eventThreatDetectionSettings.resources.effectiveCustomModules.methods.list.parameters.parent.description - resources.projects.resources.findings.methods.bulkMute.parameters.parent.description - resources.projects.resources.locations.resources.muteConfigs.methods.delete.parameters.name.description - resources.projects.resources.locations.resources.muteConfigs.methods.get.parameters.name.description - resources.projects.resources.locations.resources.muteConfigs.methods.patch.parameters.name.description - resources.projects.resources.locations.resources.muteConfigs.methods.patch.parameters.updateMask.description - resources.projects.resources.muteConfigs.methods.create.parameters.muteConfigId.description - resources.projects.resources.muteConfigs.methods.create.parameters.parent.description - resources.projects.resources.muteConfigs.methods.delete.parameters.name.description - resources.projects.resources.muteConfigs.methods.get.parameters.name.description - resources.projects.resources.muteConfigs.methods.list.parameters.pageSize.description - resources.projects.resources.muteConfigs.methods.list.parameters.pageToken.description - resources.projects.resources.muteConfigs.methods.list.parameters.parent.description - resources.projects.resources.muteConfigs.methods.patch.parameters.name.description - resources.projects.resources.muteConfigs.methods.patch.parameters.updateMask.description - resources.projects.resources.notificationConfigs.methods.create.parameters.configId.description - resources.projects.resources.notificationConfigs.methods.create.parameters.parent.description - resources.projects.resources.notificationConfigs.methods.delete.parameters.name.description - resources.projects.resources.notificationConfigs.methods.get.parameters.name.description - resources.projects.resources.notificationConfigs.methods.list.parameters.pageSize.description - resources.projects.resources.notificationConfigs.methods.list.parameters.pageToken.description - resources.projects.resources.notificationConfigs.methods.list.parameters.parent.description - resources.projects.resources.notificationConfigs.methods.patch.parameters.name.description - resources.projects.resources.notificationConfigs.methods.patch.parameters.updateMask.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.create.parameters.parent.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.delete.parameters.name.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.get.parameters.name.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.pageSize.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.pageToken.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.list.parameters.parent.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.pageSize.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.pageToken.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.listDescendant.parameters.parent.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.patch.parameters.name.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.patch.parameters.updateMask.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.customModules.methods.simulate.parameters.parent.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.get.parameters.name.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.pageSize.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.pageToken.description - resources.projects.resources.securityHealthAnalyticsSettings.resources.effectiveCustomModules.methods.list.parameters.parent.description - resources.projects.resources.sources.methods.list.parameters.pageSize.description - resources.projects.resources.sources.methods.list.parameters.pageToken.description - resources.projects.resources.sources.methods.list.parameters.parent.description - resources.projects.resources.sources.resources.findings.methods.group.parameters.parent.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.compareDuration.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.fieldMask.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.filter.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.orderBy.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.pageSize.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.pageToken.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.parent.description - resources.projects.resources.sources.resources.findings.methods.list.parameters.readTime.description - resources.projects.resources.sources.resources.findings.methods.patch.parameters.name.description - resources.projects.resources.sources.resources.findings.methods.patch.parameters.updateMask.description - resources.projects.resources.sources.resources.findings.methods.setMute.parameters.name.description - resources.projects.resources.sources.resources.findings.methods.setState.parameters.name.description - resources.projects.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.name.description - resources.projects.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.startTime.description - resources.projects.resources.sources.resources.findings.methods.updateSecurityMarks.parameters.updateMask.description - resources.projects.resources.sources.resources.findings.resources.externalSystems.methods.patch.parameters.name.description - resources.projects.resources.sources.resources.findings.resources.externalSystems.methods.patch.parameters.updateMask.description - schemas.Access.description - schemas.Access.properties.callerIp.description - schemas.Access.properties.callerIpGeo.description - schemas.Access.properties.methodName.description - schemas.Access.properties.principalEmail.description - schemas.Access.properties.principalSubject.description - schemas.Access.properties.serviceAccountDelegationInfo.description - schemas.Access.properties.serviceAccountKeyName.description - schemas.Access.properties.serviceName.description - schemas.Access.properties.userAgent.description - schemas.Access.properties.userAgentFamily.description - schemas.Access.properties.userName.description - schemas.AccessReview.description - schemas.AccessReview.properties.group.description - schemas.AccessReview.properties.name.description - schemas.AccessReview.properties.ns.description - schemas.AccessReview.properties.resource.description - schemas.AccessReview.properties.subresource.description - schemas.AccessReview.properties.verb.description - schemas.AccessReview.properties.version.description - schemas.AdaptiveProtection.description - schemas.AdaptiveProtection.properties.confidence.description - schemas.AdcApplication.description - schemas.AdcApplication.properties.attributes.description - schemas.AdcApplication.properties.name.description - schemas.AdcApplicationTemplateRevision.description - schemas.AdcApplicationTemplateRevision.properties.name.description - schemas.AdcSharedTemplateRevision.description - schemas.AdcSharedTemplateRevision.properties.name.description - schemas.AffectedResources.description - schemas.AffectedResources.properties.count.description - schemas.AgentDataAccessEvent.description - schemas.AgentDataAccessEvent.properties.eventId.description - schemas.AgentDataAccessEvent.properties.eventTime.description - schemas.AgentDataAccessEvent.properties.operation.description - schemas.AgentDataAccessEvent.properties.principalSubject.description - schemas.AiModel.description - schemas.AiModel.properties.deploymentPlatform.description - schemas.AiModel.properties.displayName.description - schemas.AiModel.properties.domain.description - schemas.AiModel.properties.library.description - schemas.AiModel.properties.location.description - schemas.AiModel.properties.name.description - schemas.AiModel.properties.publisher.description - schemas.AiModel.properties.usageCategory.description - schemas.Allowed.description - schemas.Allowed.properties.ipRules.description - schemas.Application.description - schemas.Application.properties.baseUri.description - schemas.Application.properties.fullUri.description - schemas.ArtifactGuardPolicies.description - schemas.ArtifactGuardPolicies.properties.failingPolicies.description - schemas.ArtifactGuardPolicies.properties.resourceId.description - schemas.ArtifactGuardPolicy.description - schemas.ArtifactGuardPolicy.properties.failureReason.description - schemas.ArtifactGuardPolicy.properties.policyId.description - schemas.ArtifactGuardPolicy.properties.type.description - schemas.Asset.description - schemas.Asset.properties.canonicalName.description - schemas.Asset.properties.createTime.description - schemas.Asset.properties.iamPolicy.description - schemas.Asset.properties.name.description - schemas.Asset.properties.resourceProperties.description - schemas.Asset.properties.securityCenterProperties.description - schemas.Asset.properties.securityMarks.description - schemas.Asset.properties.updateTime.description - schemas.AssetDiscoveryConfig.description - schemas.AssetDiscoveryConfig.properties.folderIds.description - schemas.AssetDiscoveryConfig.properties.inclusionMode.description - schemas.AssetDiscoveryConfig.properties.projectIds.description - schemas.Attack.description - schemas.Attack.properties.classification.description - schemas.Attack.properties.volumeBps.description - schemas.Attack.properties.volumeBpsLong.description - schemas.Attack.properties.volumePps.description - schemas.Attack.properties.volumePpsLong.description - schemas.AttackExposure.description - schemas.AttackExposure.properties.attackExposureResult.description - schemas.AttackExposure.properties.exposedHighValueResourcesCount.description - schemas.AttackExposure.properties.exposedLowValueResourcesCount.description - schemas.AttackExposure.properties.exposedMediumValueResourcesCount.description - schemas.AttackExposure.properties.latestCalculationTime.description - schemas.AttackExposure.properties.score.description - schemas.AttackExposure.properties.state.description - schemas.AttackPath.description - schemas.AttackPath.properties.edges.description - schemas.AttackPath.properties.name.description - schemas.AttackPath.properties.pathNodes.description - schemas.AttackPathEdge.description - schemas.AttackPathEdge.properties.destination.description - schemas.AttackPathEdge.properties.source.description - schemas.AttackPathNode.description - schemas.AttackPathNode.properties.associatedFindings.description - schemas.AttackPathNode.properties.attackSteps.description - schemas.AttackPathNode.properties.displayName.description - schemas.AttackPathNode.properties.resource.description - schemas.AttackPathNode.properties.resourceType.description - schemas.AttackPathNode.properties.uuid.description - schemas.AttackStepNode.description - schemas.AttackStepNode.properties.description.description - schemas.AttackStepNode.properties.displayName.description - schemas.AttackStepNode.properties.labels.description - schemas.AttackStepNode.properties.type.description - schemas.AttackStepNode.properties.uuid.description - schemas.AuditConfig.description - schemas.AuditConfig.properties.auditLogConfigs.description - schemas.AuditConfig.properties.service.description - schemas.AuditLogConfig.description - schemas.AuditLogConfig.properties.exemptedMembers.description - schemas.AuditLogConfig.properties.logType.description - schemas.AwsAccount.description - schemas.AwsAccount.properties.id.description - schemas.AwsAccount.properties.name.description - schemas.AwsMetadata.description - schemas.AwsMetadata.properties.account.description - schemas.AwsMetadata.properties.organization.description - schemas.AwsMetadata.properties.organizationalUnits.description - schemas.AwsOrganization.description - schemas.AwsOrganization.properties.id.description - schemas.AwsOrganizationalUnit.description - schemas.AwsOrganizationalUnit.properties.id.description - schemas.AwsOrganizationalUnit.properties.name.description - schemas.AzureManagementGroup.description - schemas.AzureManagementGroup.properties.displayName.description - schemas.AzureManagementGroup.properties.id.description - schemas.AzureMetadata.description - schemas.AzureMetadata.properties.managementGroups.description - schemas.AzureMetadata.properties.resourceGroup.description - schemas.AzureMetadata.properties.subscription.description - schemas.AzureMetadata.properties.tenant.description - schemas.AzureResourceGroup.description - schemas.AzureResourceGroup.properties.id.description - schemas.AzureResourceGroup.properties.name.description - schemas.AzureSubscription.description - schemas.AzureSubscription.properties.displayName.description - schemas.AzureSubscription.properties.id.description - schemas.AzureTenant.description - schemas.AzureTenant.properties.displayName.description - schemas.AzureTenant.properties.id.description - schemas.BackupDisasterRecovery.description - schemas.BackupDisasterRecovery.properties.appliance.description - schemas.BackupDisasterRecovery.properties.applications.description - schemas.BackupDisasterRecovery.properties.backupCreateTime.description - schemas.BackupDisasterRecovery.properties.backupTemplate.description - schemas.BackupDisasterRecovery.properties.backupType.description - schemas.BackupDisasterRecovery.properties.host.description - schemas.BackupDisasterRecovery.properties.policies.description - schemas.BackupDisasterRecovery.properties.policyOptions.description - schemas.BackupDisasterRecovery.properties.profile.description - schemas.BackupDisasterRecovery.properties.storagePool.description - schemas.BatchCreateResourceValueConfigsRequest.description - schemas.BatchCreateResourceValueConfigsRequest.properties.requests.description - schemas.BatchCreateResourceValueConfigsResponse.description - schemas.BatchCreateResourceValueConfigsResponse.properties.resourceValueConfigs.description - schemas.BigQueryDestination.description - schemas.BigQueryDestination.properties.dataset.description - schemas.Binding.description - schemas.Binding.properties.condition.description - schemas.Binding.properties.members.description - schemas.Binding.properties.role.description - schemas.BulkMuteFindingsRequest.description - schemas.BulkMuteFindingsRequest.properties.filter.description - schemas.BulkMuteFindingsRequest.properties.muteAnnotation.description - schemas.BulkMuteFindingsRequest.properties.muteState.description - schemas.Chokepoint.description - schemas.Chokepoint.properties.relatedFindings.description - schemas.CloudArmor.description - schemas.CloudArmor.properties.adaptiveProtection.description - schemas.CloudArmor.properties.attack.description - schemas.CloudArmor.properties.duration.description - schemas.CloudArmor.properties.requests.description - schemas.CloudArmor.properties.securityPolicy.description - schemas.CloudArmor.properties.threatVector.description - schemas.CloudControl.description - schemas.CloudControl.properties.cloudControlName.description - schemas.CloudControl.properties.policyType.description - schemas.CloudControl.properties.type.description - schemas.CloudControl.properties.version.description - schemas.CloudDlpDataProfile.description - schemas.CloudDlpDataProfile.properties.dataProfile.description - schemas.CloudDlpDataProfile.properties.infoTypes.description - schemas.CloudDlpDataProfile.properties.parentType.description - schemas.CloudDlpInspection.description - schemas.CloudDlpInspection.properties.fullScan.description - schemas.CloudDlpInspection.properties.infoType.description - schemas.CloudDlpInspection.properties.infoTypeCount.description - schemas.CloudDlpInspection.properties.inspectJob.description - schemas.CloudLoggingEntry.description - schemas.CloudLoggingEntry.properties.insertId.description - schemas.CloudLoggingEntry.properties.logId.description - schemas.CloudLoggingEntry.properties.resourceContainer.description - schemas.CloudLoggingEntry.properties.timestamp.description - schemas.Compliance.description - schemas.Compliance.properties.ids.description - schemas.Compliance.properties.standard.description - schemas.Compliance.properties.version.description - schemas.ComplianceDetails.description - schemas.ComplianceDetails.properties.cloudControl.description - schemas.ComplianceDetails.properties.cloudControlDeploymentNames.description - schemas.ComplianceDetails.properties.frameworks.description - schemas.Connection.description - schemas.Connection.properties.destinationIp.description - schemas.Connection.properties.destinationPort.description - schemas.Connection.properties.protocol.description - schemas.Connection.properties.sourceIp.description - schemas.Connection.properties.sourcePort.description - schemas.Contact.description - schemas.Contact.properties.email.description - schemas.ContactDetails.description - schemas.ContactDetails.properties.contacts.description - schemas.Container.description - schemas.Container.properties.createTime.description - schemas.Container.properties.imageId.description - schemas.Container.properties.labels.description - schemas.Container.properties.name.description - schemas.Container.properties.uri.description - schemas.Control.description - schemas.Control.properties.controlName.description - schemas.Control.properties.displayName.description - schemas.CreateResourceValueConfigRequest.description - schemas.CreateResourceValueConfigRequest.properties.parent.description - schemas.CreateResourceValueConfigRequest.properties.resourceValueConfig.description - schemas.CustomModuleValidationError.description - schemas.CustomModuleValidationError.properties.description.description - schemas.CustomModuleValidationError.properties.end.description - schemas.CustomModuleValidationError.properties.fieldPath.description - schemas.CustomModuleValidationError.properties.start.description - schemas.CustomModuleValidationErrors.description - schemas.CustomModuleValidationErrors.properties.errors.description - schemas.Cve.description - schemas.Cve.properties.cvssv3.description - schemas.Cve.properties.exploitReleaseDate.description - schemas.Cve.properties.exploitationActivity.description - schemas.Cve.properties.firstExploitationDate.description - schemas.Cve.properties.id.description - schemas.Cve.properties.impact.description - schemas.Cve.properties.observedInTheWild.description - schemas.Cve.properties.references.description - schemas.Cve.properties.upstreamFixAvailable.description - schemas.Cve.properties.zeroDay.description - schemas.Cvssv3.description - schemas.Cvssv3.properties.attackComplexity.description - schemas.Cvssv3.properties.attackVector.description - schemas.Cvssv3.properties.availabilityImpact.description - schemas.Cvssv3.properties.baseScore.description - schemas.Cvssv3.properties.confidentialityImpact.description - schemas.Cvssv3.properties.integrityImpact.description - schemas.Cvssv3.properties.privilegesRequired.description - schemas.Cvssv3.properties.scope.description - schemas.Cvssv3.properties.userInteraction.description - schemas.Cwe.description - schemas.Cwe.properties.id.description - schemas.Cwe.properties.references.description - schemas.DataAccessEvent.description - schemas.DataAccessEvent.properties.eventId.description - schemas.DataAccessEvent.properties.eventTime.description - schemas.DataAccessEvent.properties.operation.description - schemas.DataAccessEvent.properties.principalEmail.description - schemas.DataFlowEvent.description - schemas.DataFlowEvent.properties.eventId.description - schemas.DataFlowEvent.properties.eventTime.description - schemas.DataFlowEvent.properties.operation.description - schemas.DataFlowEvent.properties.principalEmail.description - schemas.DataFlowEvent.properties.violatedLocation.description - schemas.DataRetentionDeletionEvent.description - schemas.DataRetentionDeletionEvent.properties.dataObjectCount.description - schemas.DataRetentionDeletionEvent.properties.eventDetectionTime.description - schemas.DataRetentionDeletionEvent.properties.eventType.description - schemas.DataRetentionDeletionEvent.properties.maxRetentionAllowed.description - schemas.DataRetentionDeletionEvent.properties.minRetentionAllowed.description - schemas.Database.description - schemas.Database.properties.displayName.description - schemas.Database.properties.grantees.description - schemas.Database.properties.name.description - schemas.Database.properties.query.description - schemas.Database.properties.userName.description - schemas.Database.properties.version.description - schemas.Dataset.description - schemas.Dataset.properties.displayName.description - schemas.Dataset.properties.name.description - schemas.Dataset.properties.source.description - schemas.Denied.description - schemas.Denied.properties.ipRules.description - schemas.Detection.description - schemas.Detection.properties.binary.description - schemas.Detection.properties.percentPagesMatched.description - schemas.DiscoveredWorkload.description - schemas.DiscoveredWorkload.properties.confidence.description - schemas.DiscoveredWorkload.properties.detectedRelevantHardware.description - schemas.DiscoveredWorkload.properties.detectedRelevantKeywords.description - schemas.DiscoveredWorkload.properties.detectedRelevantPackages.description - schemas.DiscoveredWorkload.properties.workloadType.description - schemas.Disk.description - schemas.Disk.properties.name.description - schemas.DiskPath.description - schemas.DiskPath.properties.partitionUuid.description - schemas.DiskPath.properties.relativePath.description - schemas.DynamicMuteRecord.description - schemas.DynamicMuteRecord.properties.matchTime.description - schemas.DynamicMuteRecord.properties.muteConfig.description - schemas.EffectiveEventThreatDetectionCustomModule.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.cloudProvider.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.config.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.description.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.displayName.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.enablementState.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.name.description - schemas.EffectiveEventThreatDetectionCustomModule.properties.type.description - schemas.Empty.description - schemas.EnvironmentVariable.description - schemas.EnvironmentVariable.properties.name.description - schemas.EnvironmentVariable.properties.val.description - schemas.EventThreatDetectionCustomModule.description - schemas.EventThreatDetectionCustomModule.properties.ancestorModule.description - schemas.EventThreatDetectionCustomModule.properties.cloudProvider.description - schemas.EventThreatDetectionCustomModule.properties.config.description - schemas.EventThreatDetectionCustomModule.properties.description.description - schemas.EventThreatDetectionCustomModule.properties.displayName.description - schemas.EventThreatDetectionCustomModule.properties.enablementState.description - schemas.EventThreatDetectionCustomModule.properties.lastEditor.description - schemas.EventThreatDetectionCustomModule.properties.name.description - schemas.EventThreatDetectionCustomModule.properties.type.description - schemas.EventThreatDetectionCustomModule.properties.updateTime.description - schemas.ExfilResource.description - schemas.ExfilResource.properties.components.description - schemas.ExfilResource.properties.name.description - schemas.Exfiltration.description - schemas.Exfiltration.properties.sources.description - schemas.Exfiltration.properties.targets.description - schemas.Exfiltration.properties.totalExfiltratedBytes.description - schemas.ExportFindingsMetadata.description - schemas.ExportFindingsMetadata.properties.bigQueryDestination.description - schemas.ExportFindingsMetadata.properties.exportStartTime.description - schemas.ExportFindingsResponse.description - schemas.Expr.description - schemas.Expr.properties.description.description - schemas.Expr.properties.expression.description - schemas.Expr.properties.location.description - schemas.Expr.properties.title.description - schemas.ExternalExposure.description - schemas.ExternalExposure.properties.backendBucket.description - schemas.ExternalExposure.properties.backendService.description - schemas.ExternalExposure.properties.exposedApplication.description - schemas.ExternalExposure.properties.exposedEndpoint.description - schemas.ExternalExposure.properties.exposedService.description - schemas.ExternalExposure.properties.forwardingRule.description - schemas.ExternalExposure.properties.hostnameUri.description - schemas.ExternalExposure.properties.httpResponse.description - schemas.ExternalExposure.properties.instanceGroup.description - schemas.ExternalExposure.properties.internalBackendService.description - schemas.ExternalExposure.properties.loadBalancerFirewallPolicy.description - schemas.ExternalExposure.properties.networkEndpointGroup.description - schemas.ExternalExposure.properties.networkIngressFirewallPolicy.description - schemas.ExternalExposure.properties.privateIpAddress.description - schemas.ExternalExposure.properties.privatePort.description - schemas.ExternalExposure.properties.pscNetworkAttachment.description - schemas.ExternalExposure.properties.pscServiceAttachment.description - schemas.ExternalExposure.properties.publicIpAddress.description - schemas.ExternalExposure.properties.publicPort.description - schemas.ExternalExposure.properties.serviceFirewallPolicy.description - schemas.File.description - schemas.File.properties.contents.description - schemas.File.properties.diskPath.description - schemas.File.properties.fileLoadState.description - schemas.File.properties.hashedSize.description - schemas.File.properties.operations.description - schemas.File.properties.partiallyHashed.description - schemas.File.properties.path.description - schemas.File.properties.sha256.description - schemas.File.properties.size.description - schemas.FileOperation.description - schemas.FileOperation.properties.type.description - schemas.Finding.description - schemas.Finding.properties.access.description - schemas.Finding.properties.affectedResources.description - schemas.Finding.properties.agentDataAccessEvents.description - schemas.Finding.properties.aiModel.description - schemas.Finding.properties.application.description - schemas.Finding.properties.artifactGuardPolicies.description - schemas.Finding.properties.attackExposure.description - schemas.Finding.properties.backupDisasterRecovery.description - schemas.Finding.properties.canonicalName.description - schemas.Finding.properties.category.description - schemas.Finding.properties.chokepoint.description - schemas.Finding.properties.cloudArmor.description - schemas.Finding.properties.cloudDlpDataProfile.description - schemas.Finding.properties.cloudDlpInspection.description - schemas.Finding.properties.complianceDetails.description - schemas.Finding.properties.compliances.description - schemas.Finding.properties.connections.description - schemas.Finding.properties.contacts.description - schemas.Finding.properties.containers.description - schemas.Finding.properties.createTime.description - schemas.Finding.properties.dataAccessEvents.description - schemas.Finding.properties.dataFlowEvents.description - schemas.Finding.properties.dataRetentionDeletionEvents.description - schemas.Finding.properties.database.description - schemas.Finding.properties.description.description - schemas.Finding.properties.discoveredWorkload.description - schemas.Finding.properties.disk.description - schemas.Finding.properties.eventTime.description - schemas.Finding.properties.exfiltration.description - schemas.Finding.properties.externalExposure.description - schemas.Finding.properties.externalSystems.description - schemas.Finding.properties.externalUri.description - schemas.Finding.properties.files.description - schemas.Finding.properties.findingClass.description - schemas.Finding.properties.groupMemberships.description - schemas.Finding.properties.iamBindings.description - schemas.Finding.properties.indicator.description - schemas.Finding.properties.ipRules.description - schemas.Finding.properties.job.description - schemas.Finding.properties.kernelRootkit.description - schemas.Finding.properties.kubernetes.description - schemas.Finding.properties.loadBalancers.description - schemas.Finding.properties.logEntries.description - schemas.Finding.properties.mitreAttack.description - schemas.Finding.properties.moduleName.description - schemas.Finding.properties.mute.description - schemas.Finding.properties.muteInfo.description - schemas.Finding.properties.muteInitiator.description - schemas.Finding.properties.muteUpdateTime.description - schemas.Finding.properties.name.description - schemas.Finding.properties.networks.description - schemas.Finding.properties.nextSteps.description - schemas.Finding.properties.notebook.description - schemas.Finding.properties.orgPolicies.description - schemas.Finding.properties.parent.description - schemas.Finding.properties.parentDisplayName.description - schemas.Finding.properties.policyViolationSummary.description - schemas.Finding.properties.processes.description - schemas.Finding.properties.resourceName.description - schemas.Finding.properties.secret.description - schemas.Finding.properties.securityMarks.description - schemas.Finding.properties.securityPosture.description - schemas.Finding.properties.severity.description - schemas.Finding.properties.sourceProperties.description - schemas.Finding.properties.state.description - schemas.Finding.properties.toxicCombination.description - schemas.Finding.properties.vertexAi.description - schemas.Finding.properties.vulnerability.description - schemas.Folder.description - schemas.Folder.properties.resourceFolder.description - schemas.Folder.properties.resourceFolderDisplayName.description - schemas.Framework.description - schemas.Framework.properties.category.description - schemas.Framework.properties.controls.description - schemas.Framework.properties.displayName.description - schemas.Framework.properties.name.description - schemas.Framework.properties.type.description - schemas.GcpMetadata.description - schemas.GcpMetadata.properties.folders.description - schemas.GcpMetadata.properties.organization.description - schemas.GcpMetadata.properties.parent.description - schemas.GcpMetadata.properties.parentDisplayName.description - schemas.GcpMetadata.properties.project.description - schemas.GcpMetadata.properties.projectDisplayName.description - schemas.Geolocation.description - schemas.Geolocation.properties.regionCode.description - schemas.GetIamPolicyRequest.description - schemas.GetIamPolicyRequest.properties.options.description - schemas.GetPolicyOptions.description - schemas.GetPolicyOptions.properties.requestedPolicyVersion.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.dataset.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.description.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.filter.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.name.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.principal.description - schemas.GoogleCloudSecuritycenterV1BigQueryExport.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1Binding.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.name.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.ns.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.role.description - schemas.GoogleCloudSecuritycenterV1Binding.properties.subjects.description - schemas.GoogleCloudSecuritycenterV1BulkMuteFindingsResponse.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.customOutput.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.predicate.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.recommendation.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.resourceSelector.description - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.severity.description - schemas.GoogleCloudSecuritycenterV1CustomOutputSpec.description - schemas.GoogleCloudSecuritycenterV1CustomOutputSpec.properties.properties.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.customConfig.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.enablementState.description - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.name.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.assignees.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseCloseTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseCreateTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.casePriority.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseSla.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.caseUri.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.externalSystemUpdateTime.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.externalUid.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.name.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.status.description - schemas.GoogleCloudSecuritycenterV1ExternalSystem.properties.ticketInfo.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.expiryTime.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.filter.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.type.description - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV1NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV1Property.description - schemas.GoogleCloudSecuritycenterV1Property.properties.name.description - schemas.GoogleCloudSecuritycenterV1Property.properties.valueExpression.description - schemas.GoogleCloudSecuritycenterV1Resource.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.application.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.folders.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.location.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.organization.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.parent.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.project.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.projectDisplayName.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.resourcePath.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.resourcePathString.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.service.description - schemas.GoogleCloudSecuritycenterV1Resource.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV1ResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV1ResourceSelector.description - schemas.GoogleCloudSecuritycenterV1ResourceSelector.properties.resourceTypes.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceLabelsSelector.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceType.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceValue.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.scope.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.sensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.tagValues.description - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.ancestorModule.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.customConfig.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.displayName.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.enablementState.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.lastEditor.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.name.description - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.highSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.severity.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.properties.resourceFolder.description - schemas.GoogleCloudSecuritycenterV1p1beta1Folder.properties.resourceFolderDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV1p1beta1NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.folders.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.parent.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.project.description - schemas.GoogleCloudSecuritycenterV1p1beta1Resource.properties.projectDisplayName.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.duration.description - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.state.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV1p1beta1SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV2Access.description - schemas.GoogleCloudSecuritycenterV2Access.properties.callerIp.description - schemas.GoogleCloudSecuritycenterV2Access.properties.callerIpGeo.description - schemas.GoogleCloudSecuritycenterV2Access.properties.methodName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2Access.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceAccountDelegationInfo.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceAccountKeyName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.serviceName.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userAgent.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userAgentFamily.description - schemas.GoogleCloudSecuritycenterV2Access.properties.userName.description - schemas.GoogleCloudSecuritycenterV2AccessReview.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.group.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.name.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.ns.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.resource.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.subresource.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.verb.description - schemas.GoogleCloudSecuritycenterV2AccessReview.properties.version.description - schemas.GoogleCloudSecuritycenterV2AdaptiveProtection.description - schemas.GoogleCloudSecuritycenterV2AdaptiveProtection.properties.confidence.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2AdcApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2AdcSharedTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2AdcSharedTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2AffectedResources.description - schemas.GoogleCloudSecuritycenterV2AffectedResources.properties.count.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2AiModel.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.deploymentPlatform.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.domain.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.library.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.location.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.name.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.publisher.description - schemas.GoogleCloudSecuritycenterV2AiModel.properties.usageCategory.description - schemas.GoogleCloudSecuritycenterV2Allowed.description - schemas.GoogleCloudSecuritycenterV2Allowed.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Application.description - schemas.GoogleCloudSecuritycenterV2Application.properties.baseUri.description - schemas.GoogleCloudSecuritycenterV2Application.properties.fullUri.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.properties.failingPolicies.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicies.properties.resourceId.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.failureReason.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.policyId.description - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.type.description - schemas.GoogleCloudSecuritycenterV2Attack.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.classification.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumeBps.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumeBpsLong.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumePps.description - schemas.GoogleCloudSecuritycenterV2Attack.properties.volumePpsLong.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.attackExposureResult.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedHighValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedLowValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.exposedMediumValueResourcesCount.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.latestCalculationTime.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.score.description - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.state.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsAccount.properties.name.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.account.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.organization.description - schemas.GoogleCloudSecuritycenterV2AwsMetadata.properties.organizationalUnits.description - schemas.GoogleCloudSecuritycenterV2AwsOrganization.description - schemas.GoogleCloudSecuritycenterV2AwsOrganization.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.properties.id.description - schemas.GoogleCloudSecuritycenterV2AwsOrganizationalUnit.properties.name.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureManagementGroup.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.managementGroups.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.resourceGroup.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.subscription.description - schemas.GoogleCloudSecuritycenterV2AzureMetadata.properties.tenant.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureResourceGroup.properties.name.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureSubscription.properties.id.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2AzureTenant.properties.id.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.appliance.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.applications.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupCreateTime.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupTemplate.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.backupType.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.host.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.policies.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.policyOptions.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.profile.description - schemas.GoogleCloudSecuritycenterV2BackupDisasterRecovery.properties.storagePool.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.dataset.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.description.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.filter.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.name.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.principal.description - schemas.GoogleCloudSecuritycenterV2BigQueryExport.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2Binding.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.name.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.ns.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.role.description - schemas.GoogleCloudSecuritycenterV2Binding.properties.subjects.description - schemas.GoogleCloudSecuritycenterV2BulkMuteFindingsResponse.description - schemas.GoogleCloudSecuritycenterV2Chokepoint.description - schemas.GoogleCloudSecuritycenterV2Chokepoint.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.adaptiveProtection.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.attack.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.duration.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.requests.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.securityPolicy.description - schemas.GoogleCloudSecuritycenterV2CloudArmor.properties.threatVector.description - schemas.GoogleCloudSecuritycenterV2CloudControl.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.cloudControlName.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.policyType.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.type.description - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.version.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.dataProfile.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.infoTypes.description - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.parentType.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.fullScan.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.infoType.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.infoTypeCount.description - schemas.GoogleCloudSecuritycenterV2CloudDlpInspection.properties.inspectJob.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.insertId.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.logId.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.resourceContainer.description - schemas.GoogleCloudSecuritycenterV2CloudLoggingEntry.properties.timestamp.description - schemas.GoogleCloudSecuritycenterV2Compliance.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.ids.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.standard.description - schemas.GoogleCloudSecuritycenterV2Compliance.properties.version.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.cloudControl.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.cloudControlDeploymentNames.description - schemas.GoogleCloudSecuritycenterV2ComplianceDetails.properties.frameworks.description - schemas.GoogleCloudSecuritycenterV2Connection.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.destinationIp.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.destinationPort.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.protocol.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.sourceIp.description - schemas.GoogleCloudSecuritycenterV2Connection.properties.sourcePort.description - schemas.GoogleCloudSecuritycenterV2Contact.description - schemas.GoogleCloudSecuritycenterV2Contact.properties.email.description - schemas.GoogleCloudSecuritycenterV2ContactDetails.description - schemas.GoogleCloudSecuritycenterV2ContactDetails.properties.contacts.description - schemas.GoogleCloudSecuritycenterV2Container.description - schemas.GoogleCloudSecuritycenterV2Container.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Container.properties.imageId.description - schemas.GoogleCloudSecuritycenterV2Container.properties.labels.description - schemas.GoogleCloudSecuritycenterV2Container.properties.name.description - schemas.GoogleCloudSecuritycenterV2Container.properties.uri.description - schemas.GoogleCloudSecuritycenterV2Control.description - schemas.GoogleCloudSecuritycenterV2Control.properties.controlName.description - schemas.GoogleCloudSecuritycenterV2Control.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Cve.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.cvssv3.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitReleaseDate.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitationActivity.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.firstExploitationDate.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.id.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.impact.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.observedInTheWild.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.references.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.upstreamFixAvailable.description - schemas.GoogleCloudSecuritycenterV2Cve.properties.zeroDay.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackComplexity.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackVector.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.availabilityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.baseScore.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.confidentialityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.integrityImpact.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.privilegesRequired.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.scope.description - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.userInteraction.description - schemas.GoogleCloudSecuritycenterV2Cwe.description - schemas.GoogleCloudSecuritycenterV2Cwe.properties.id.description - schemas.GoogleCloudSecuritycenterV2Cwe.properties.references.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.eventId.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.operation.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.violatedLocation.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.dataObjectCount.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventDetectionTime.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventType.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.maxRetentionAllowed.description - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.minRetentionAllowed.description - schemas.GoogleCloudSecuritycenterV2Database.description - schemas.GoogleCloudSecuritycenterV2Database.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Database.properties.grantees.description - schemas.GoogleCloudSecuritycenterV2Database.properties.name.description - schemas.GoogleCloudSecuritycenterV2Database.properties.query.description - schemas.GoogleCloudSecuritycenterV2Database.properties.userName.description - schemas.GoogleCloudSecuritycenterV2Database.properties.version.description - schemas.GoogleCloudSecuritycenterV2Dataset.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.name.description - schemas.GoogleCloudSecuritycenterV2Dataset.properties.source.description - schemas.GoogleCloudSecuritycenterV2Denied.description - schemas.GoogleCloudSecuritycenterV2Denied.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Detection.description - schemas.GoogleCloudSecuritycenterV2Detection.properties.binary.description - schemas.GoogleCloudSecuritycenterV2Detection.properties.percentPagesMatched.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.confidence.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantHardware.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantKeywords.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.detectedRelevantPackages.description - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.workloadType.description - schemas.GoogleCloudSecuritycenterV2Disk.description - schemas.GoogleCloudSecuritycenterV2Disk.properties.name.description - schemas.GoogleCloudSecuritycenterV2DiskPath.description - schemas.GoogleCloudSecuritycenterV2DiskPath.properties.partitionUuid.description - schemas.GoogleCloudSecuritycenterV2DiskPath.properties.relativePath.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.properties.matchTime.description - schemas.GoogleCloudSecuritycenterV2DynamicMuteRecord.properties.muteConfig.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.properties.name.description - schemas.GoogleCloudSecuritycenterV2EnvironmentVariable.properties.val.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.properties.components.description - schemas.GoogleCloudSecuritycenterV2ExfilResource.properties.name.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.sources.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.targets.description - schemas.GoogleCloudSecuritycenterV2Exfiltration.properties.totalExfiltratedBytes.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.backendBucket.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.backendService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedApplication.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedEndpoint.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.exposedService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.forwardingRule.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.hostnameUri.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.httpResponse.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.instanceGroup.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.internalBackendService.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.loadBalancerFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.networkEndpointGroup.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.networkIngressFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.privateIpAddress.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.privatePort.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.pscNetworkAttachment.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.pscServiceAttachment.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.publicIpAddress.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.publicPort.description - schemas.GoogleCloudSecuritycenterV2ExternalExposure.properties.serviceFirewallPolicy.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.assignees.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseCloseTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseCreateTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.casePriority.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseSla.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.caseUri.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.externalSystemUpdateTime.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.externalUid.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.name.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.status.description - schemas.GoogleCloudSecuritycenterV2ExternalSystem.properties.ticketInfo.description - schemas.GoogleCloudSecuritycenterV2File.description - schemas.GoogleCloudSecuritycenterV2File.properties.contents.description - schemas.GoogleCloudSecuritycenterV2File.properties.diskPath.description - schemas.GoogleCloudSecuritycenterV2File.properties.fileLoadState.description - schemas.GoogleCloudSecuritycenterV2File.properties.hashedSize.description - schemas.GoogleCloudSecuritycenterV2File.properties.operations.description - schemas.GoogleCloudSecuritycenterV2File.properties.partiallyHashed.description - schemas.GoogleCloudSecuritycenterV2File.properties.path.description - schemas.GoogleCloudSecuritycenterV2File.properties.sha256.description - schemas.GoogleCloudSecuritycenterV2File.properties.size.description - schemas.GoogleCloudSecuritycenterV2FileOperation.description - schemas.GoogleCloudSecuritycenterV2FileOperation.properties.type.description - schemas.GoogleCloudSecuritycenterV2Finding.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.access.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.affectedResources.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.agentDataAccessEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.aiModel.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.application.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.artifactGuardPolicies.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.attackExposure.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.backupDisasterRecovery.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.category.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.chokepoint.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudArmor.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudDlpDataProfile.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cloudDlpInspection.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.complianceDetails.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.compliances.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.connections.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.contacts.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataAccessEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataFlowEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.dataRetentionDeletionEvents.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.database.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.description.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.discoveredWorkload.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.disk.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.eventTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.exfiltration.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalExposure.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalSystems.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.externalUri.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.files.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.findingClass.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.groupMemberships.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.iamBindings.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.indicator.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.ipRules.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.job.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.kernelRootkit.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.kubernetes.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.loadBalancers.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.logEntries.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.mitreAttack.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.moduleName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.mute.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteInfo.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteInitiator.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.muteUpdateTime.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.name.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.networks.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.nextSteps.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.notebook.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.orgPolicies.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.parent.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.parentDisplayName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.policyViolationSummary.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.processes.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.resourceName.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.secret.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.securityMarks.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.securityPosture.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.severity.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.sourceProperties.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.state.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.toxicCombination.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.vertexAi.description - schemas.GoogleCloudSecuritycenterV2Finding.properties.vulnerability.description - schemas.GoogleCloudSecuritycenterV2Folder.description - schemas.GoogleCloudSecuritycenterV2Folder.properties.resourceFolder.description - schemas.GoogleCloudSecuritycenterV2Folder.properties.resourceFolderDisplayName.description - schemas.GoogleCloudSecuritycenterV2Framework.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.category.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.controls.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.name.description - schemas.GoogleCloudSecuritycenterV2Framework.properties.type.description - schemas.GoogleCloudSecuritycenterV2Geolocation.description - schemas.GoogleCloudSecuritycenterV2Geolocation.properties.regionCode.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupId.description - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupType.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.properties.path.description - schemas.GoogleCloudSecuritycenterV2HttpResponse.properties.statusCode.description - schemas.GoogleCloudSecuritycenterV2IamBinding.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.action.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.member.description - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.role.description - schemas.GoogleCloudSecuritycenterV2Indicator.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.domains.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.ipAddresses.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.signatures.description - schemas.GoogleCloudSecuritycenterV2Indicator.properties.uris.description - schemas.GoogleCloudSecuritycenterV2InfoType.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.name.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.sensitivityScore.description - schemas.GoogleCloudSecuritycenterV2InfoType.properties.version.description - schemas.GoogleCloudSecuritycenterV2IpRule.description - schemas.GoogleCloudSecuritycenterV2IpRule.properties.portRanges.description - schemas.GoogleCloudSecuritycenterV2IpRule.properties.protocol.description - schemas.GoogleCloudSecuritycenterV2IpRules.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.allowed.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.denied.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.destinationIpRanges.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.direction.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.exposedServices.description - schemas.GoogleCloudSecuritycenterV2IpRules.properties.sourceIpRanges.description - schemas.GoogleCloudSecuritycenterV2Issue.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.description.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.detection.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.domains.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.exposureScore.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.issueType.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.lastObservationTime.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.mute.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.name.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.primaryResource.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.remediations.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.secondaryResources.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.securityContexts.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.severity.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.state.description - schemas.GoogleCloudSecuritycenterV2Issue.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2IssueDomain.description - schemas.GoogleCloudSecuritycenterV2IssueDomain.properties.domainCategory.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.cve.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueFinding.properties.securityBulletin.description - schemas.GoogleCloudSecuritycenterV2IssueFindingCve.description - schemas.GoogleCloudSecuritycenterV2IssueFindingCve.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin.description - schemas.GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueMute.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteInitiator.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteReason.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteState.description - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteUpdateTime.description - schemas.GoogleCloudSecuritycenterV2IssueResource.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.application.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.googleCloudMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadata.properties.account.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.properties.id.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount.properties.name.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadata.properties.subscription.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription.properties.id.description - schemas.GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata.description - schemas.GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata.properties.projectId.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.properties.aggregatedCount.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContext.properties.context.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.properties.key.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount.properties.value.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.properties.type.description - schemas.GoogleCloudSecuritycenterV2IssueSecurityContextContext.properties.values.description - schemas.GoogleCloudSecuritycenterV2Job.description - schemas.GoogleCloudSecuritycenterV2Job.properties.errorCode.description - schemas.GoogleCloudSecuritycenterV2Job.properties.location.description - schemas.GoogleCloudSecuritycenterV2Job.properties.name.description - schemas.GoogleCloudSecuritycenterV2Job.properties.state.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.name.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedCodeModification.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedFtraceHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedInterruptHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedKernelCodePages.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedKprobeHandler.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedProcessesInRunqueue.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedReadOnlyDataModification.description - schemas.GoogleCloudSecuritycenterV2KernelRootkit.properties.unexpectedSystemCallHandler.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.accessReviews.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.bindings.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.nodePools.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.objects.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.pods.description - schemas.GoogleCloudSecuritycenterV2Kubernetes.properties.roles.description - schemas.GoogleCloudSecuritycenterV2Label.description - schemas.GoogleCloudSecuritycenterV2Label.properties.name.description - schemas.GoogleCloudSecuritycenterV2Label.properties.value.description - schemas.GoogleCloudSecuritycenterV2LoadBalancer.description - schemas.GoogleCloudSecuritycenterV2LoadBalancer.properties.name.description - schemas.GoogleCloudSecuritycenterV2LogEntry.description - schemas.GoogleCloudSecuritycenterV2LogEntry.properties.cloudLoggingEntry.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.properties.binaryFamily.description - schemas.GoogleCloudSecuritycenterV2MemoryHashSignature.properties.detections.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTactics.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTechniques.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTactic.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTechniques.description - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.version.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.cryptoKeyName.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.expiryTime.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.filter.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.mostRecentEditor.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.type.description - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.properties.dynamicMuteRecords.description - schemas.GoogleCloudSecuritycenterV2MuteInfo.properties.staticMute.description - schemas.GoogleCloudSecuritycenterV2Network.description - schemas.GoogleCloudSecuritycenterV2Network.properties.name.description - schemas.GoogleCloudSecuritycenterV2Node.description - schemas.GoogleCloudSecuritycenterV2Node.properties.name.description - schemas.GoogleCloudSecuritycenterV2NodePool.description - schemas.GoogleCloudSecuritycenterV2NodePool.properties.name.description - schemas.GoogleCloudSecuritycenterV2NodePool.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2Notebook.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.lastAuthor.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.name.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.notebookUpdateTime.description - schemas.GoogleCloudSecuritycenterV2Notebook.properties.service.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.finding.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.notificationConfigName.description - schemas.GoogleCloudSecuritycenterV2NotificationMessage.properties.resource.description - schemas.GoogleCloudSecuritycenterV2Object.description - schemas.GoogleCloudSecuritycenterV2Object.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Object.properties.group.description - schemas.GoogleCloudSecuritycenterV2Object.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Object.properties.name.description - schemas.GoogleCloudSecuritycenterV2Object.properties.ns.description - schemas.GoogleCloudSecuritycenterV2OrgPolicy.description - schemas.GoogleCloudSecuritycenterV2OrgPolicy.properties.name.description - schemas.GoogleCloudSecuritycenterV2Package.description - schemas.GoogleCloudSecuritycenterV2Package.properties.cpeUri.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageName.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageType.description - schemas.GoogleCloudSecuritycenterV2Package.properties.packageVersion.description - schemas.GoogleCloudSecuritycenterV2Pipeline.description - schemas.GoogleCloudSecuritycenterV2Pipeline.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Pipeline.properties.name.description - schemas.GoogleCloudSecuritycenterV2Pod.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.containers.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.labels.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.name.description - schemas.GoogleCloudSecuritycenterV2Pod.properties.ns.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.detectedValue.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.expectedValue.description - schemas.GoogleCloudSecuritycenterV2PolicyDriftDetails.properties.field.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.conformantResourcesCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.evaluationErrorsCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.outOfScopeResourcesCount.description - schemas.GoogleCloudSecuritycenterV2PolicyViolationSummary.properties.policyViolationsCount.description - schemas.GoogleCloudSecuritycenterV2PortRange.description - schemas.GoogleCloudSecuritycenterV2PortRange.properties.max.description - schemas.GoogleCloudSecuritycenterV2PortRange.properties.min.description - schemas.GoogleCloudSecuritycenterV2Process.description - schemas.GoogleCloudSecuritycenterV2Process.properties.args.description - schemas.GoogleCloudSecuritycenterV2Process.properties.argumentsTruncated.description - schemas.GoogleCloudSecuritycenterV2Process.properties.binary.description - schemas.GoogleCloudSecuritycenterV2Process.properties.envVariables.description - schemas.GoogleCloudSecuritycenterV2Process.properties.envVariablesTruncated.description - schemas.GoogleCloudSecuritycenterV2Process.properties.libraries.description - schemas.GoogleCloudSecuritycenterV2Process.properties.name.description - schemas.GoogleCloudSecuritycenterV2Process.properties.parentPid.description - schemas.GoogleCloudSecuritycenterV2Process.properties.pid.description - schemas.GoogleCloudSecuritycenterV2Process.properties.script.description - schemas.GoogleCloudSecuritycenterV2Process.properties.userId.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.memoryHashSignature.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.signatureType.description - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.yaraRuleSignature.description - schemas.GoogleCloudSecuritycenterV2Reference.description - schemas.GoogleCloudSecuritycenterV2Reference.properties.source.description - schemas.GoogleCloudSecuritycenterV2Reference.properties.uri.description - schemas.GoogleCloudSecuritycenterV2Requests.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.longTermAllowed.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.longTermDenied.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.ratio.description - schemas.GoogleCloudSecuritycenterV2Requests.properties.shortTermAllowed.description - schemas.GoogleCloudSecuritycenterV2Resource.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcApplication.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcApplicationTemplate.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.adcSharedTemplate.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.application.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.awsMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.azureMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.gcpMetadata.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.location.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.name.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.resourcePath.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.resourcePathString.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.service.description - schemas.GoogleCloudSecuritycenterV2Resource.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.properties.attributes.description - schemas.GoogleCloudSecuritycenterV2ResourceApplication.properties.name.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.businessOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.criticality.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.developerOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.environment.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributes.properties.operatorOwners.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo.properties.email.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.description - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.properties.type.description - schemas.GoogleCloudSecuritycenterV2ResourcePath.description - schemas.GoogleCloudSecuritycenterV2ResourcePath.properties.nodes.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.displayName.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.id.description - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.nodeType.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.cloudProvider.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.createTime.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.description.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.name.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceLabelsSelector.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceType.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceValue.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.scope.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.sensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.tagValues.description - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2Role.description - schemas.GoogleCloudSecuritycenterV2Role.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Role.properties.name.description - schemas.GoogleCloudSecuritycenterV2Role.properties.ns.description - schemas.GoogleCloudSecuritycenterV2Secret.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.environmentVariable.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.filePath.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.status.description - schemas.GoogleCloudSecuritycenterV2Secret.properties.type.description - schemas.GoogleCloudSecuritycenterV2SecretEnvironmentVariable.description - schemas.GoogleCloudSecuritycenterV2SecretEnvironmentVariable.properties.key.description - schemas.GoogleCloudSecuritycenterV2SecretFilePath.description - schemas.GoogleCloudSecuritycenterV2SecretFilePath.properties.path.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.lastUpdatedTime.description - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.validity.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.bulletinId.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.submissionTime.description - schemas.GoogleCloudSecuritycenterV2SecurityBulletin.properties.suggestedUpgradeVersion.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.canonicalName.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.marks.description - schemas.GoogleCloudSecuritycenterV2SecurityMarks.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.preview.description - schemas.GoogleCloudSecuritycenterV2SecurityPolicy.properties.type.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.changedPolicy.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.name.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policy.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policyDriftDetails.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.policySet.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.postureDeployment.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.postureDeploymentResource.description - schemas.GoogleCloudSecuritycenterV2SecurityPosture.properties.revisionId.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.highSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.description - schemas.GoogleCloudSecuritycenterV2SensitivityScore.description - schemas.GoogleCloudSecuritycenterV2SensitivityScore.properties.score.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.properties.principalEmail.description - schemas.GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo.properties.principalSubject.description - schemas.GoogleCloudSecuritycenterV2StaticMute.description - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.applyTime.description - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.state.description - schemas.GoogleCloudSecuritycenterV2Subject.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.kind.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.name.description - schemas.GoogleCloudSecuritycenterV2Subject.properties.ns.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.assignee.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.description.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.id.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.status.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.updateTime.description - schemas.GoogleCloudSecuritycenterV2TicketInfo.properties.uri.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.properties.attackExposureScore.description - schemas.GoogleCloudSecuritycenterV2ToxicCombination.properties.relatedFindings.description - schemas.GoogleCloudSecuritycenterV2VertexAi.description - schemas.GoogleCloudSecuritycenterV2VertexAi.properties.datasets.description - schemas.GoogleCloudSecuritycenterV2VertexAi.properties.pipelines.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.cve.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.cwes.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.fixedPackage.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.offendingPackage.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.providerRiskScore.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.reachable.description - schemas.GoogleCloudSecuritycenterV2Vulnerability.properties.securityBulletin.description - schemas.GoogleCloudSecuritycenterV2YaraRuleSignature.description - schemas.GoogleCloudSecuritycenterV2YaraRuleSignature.properties.yaraRule.description - schemas.GroupAssetsRequest.description - schemas.GroupAssetsRequest.properties.compareDuration.description - schemas.GroupAssetsRequest.properties.filter.description - schemas.GroupAssetsRequest.properties.groupBy.description - schemas.GroupAssetsRequest.properties.pageSize.description - schemas.GroupAssetsRequest.properties.pageToken.description - schemas.GroupAssetsRequest.properties.readTime.description - schemas.GroupAssetsResponse.description - schemas.GroupAssetsResponse.properties.groupByResults.description - schemas.GroupAssetsResponse.properties.nextPageToken.description - schemas.GroupAssetsResponse.properties.readTime.description - schemas.GroupAssetsResponse.properties.totalSize.description - schemas.GroupFindingsRequest.description - schemas.GroupFindingsRequest.properties.compareDuration.description - schemas.GroupFindingsRequest.properties.filter.description - schemas.GroupFindingsRequest.properties.groupBy.description - schemas.GroupFindingsRequest.properties.pageSize.description - schemas.GroupFindingsRequest.properties.pageToken.description - schemas.GroupFindingsRequest.properties.readTime.description - schemas.GroupFindingsResponse.description - schemas.GroupFindingsResponse.properties.groupByResults.description - schemas.GroupFindingsResponse.properties.nextPageToken.description - schemas.GroupFindingsResponse.properties.readTime.description - schemas.GroupFindingsResponse.properties.totalSize.description - schemas.GroupMembership.description - schemas.GroupMembership.properties.groupId.description - schemas.GroupMembership.properties.groupType.description - schemas.GroupResult.description - schemas.GroupResult.properties.count.description - schemas.GroupResult.properties.properties.description - schemas.HttpResponse.description - schemas.HttpResponse.properties.path.description - schemas.HttpResponse.properties.statusCode.description - schemas.IamBinding.description - schemas.IamBinding.properties.action.description - schemas.IamBinding.properties.member.description - schemas.IamBinding.properties.role.description - schemas.IamPolicy.description - schemas.IamPolicy.properties.policyBlob.description - schemas.Indicator.description - schemas.Indicator.properties.domains.description - schemas.Indicator.properties.ipAddresses.description - schemas.Indicator.properties.signatures.description - schemas.Indicator.properties.uris.description - schemas.InfoType.description - schemas.InfoType.properties.name.description - schemas.InfoType.properties.sensitivityScore.description - schemas.InfoType.properties.version.description - schemas.IpRule.description - schemas.IpRule.properties.portRanges.description - schemas.IpRule.properties.protocol.description - schemas.IpRules.description - schemas.IpRules.properties.allowed.description - schemas.IpRules.properties.denied.description - schemas.IpRules.properties.destinationIpRanges.description - schemas.IpRules.properties.direction.description - schemas.IpRules.properties.exposedServices.description - schemas.IpRules.properties.sourceIpRanges.description - schemas.Job.description - schemas.Job.properties.errorCode.description - schemas.Job.properties.location.description - schemas.Job.properties.name.description - schemas.Job.properties.state.description - schemas.KernelRootkit.description - schemas.KernelRootkit.properties.name.description - schemas.KernelRootkit.properties.unexpectedCodeModification.description - schemas.KernelRootkit.properties.unexpectedFtraceHandler.description - schemas.KernelRootkit.properties.unexpectedInterruptHandler.description - schemas.KernelRootkit.properties.unexpectedKernelCodePages.description - schemas.KernelRootkit.properties.unexpectedKprobeHandler.description - schemas.KernelRootkit.properties.unexpectedProcessesInRunqueue.description - schemas.KernelRootkit.properties.unexpectedReadOnlyDataModification.description - schemas.KernelRootkit.properties.unexpectedSystemCallHandler.description - schemas.Kubernetes.description - schemas.Kubernetes.properties.accessReviews.description - schemas.Kubernetes.properties.bindings.description - schemas.Kubernetes.properties.nodePools.description - schemas.Kubernetes.properties.nodes.description - schemas.Kubernetes.properties.objects.description - schemas.Kubernetes.properties.pods.description - schemas.Kubernetes.properties.roles.description - schemas.Label.description - schemas.Label.properties.name.description - schemas.Label.properties.value.description - schemas.ListAssetsResponse.description - schemas.ListAssetsResponse.properties.listAssetsResults.description - schemas.ListAssetsResponse.properties.nextPageToken.description - schemas.ListAssetsResponse.properties.readTime.description - schemas.ListAssetsResponse.properties.totalSize.description - schemas.ListAssetsResult.description - schemas.ListAssetsResult.properties.asset.description - schemas.ListAssetsResult.properties.stateChange.description - schemas.ListAttackPathsResponse.description - schemas.ListAttackPathsResponse.properties.attackPaths.description - schemas.ListAttackPathsResponse.properties.nextPageToken.description - schemas.ListBigQueryExportsResponse.description - schemas.ListBigQueryExportsResponse.properties.bigQueryExports.description - schemas.ListBigQueryExportsResponse.properties.nextPageToken.description - schemas.ListDescendantEventThreatDetectionCustomModulesResponse.description - schemas.ListDescendantEventThreatDetectionCustomModulesResponse.properties.eventThreatDetectionCustomModules.description - schemas.ListDescendantEventThreatDetectionCustomModulesResponse.properties.nextPageToken.description - schemas.ListDescendantSecurityHealthAnalyticsCustomModulesResponse.description - schemas.ListDescendantSecurityHealthAnalyticsCustomModulesResponse.properties.nextPageToken.description - schemas.ListDescendantSecurityHealthAnalyticsCustomModulesResponse.properties.securityHealthAnalyticsCustomModules.description - schemas.ListEffectiveEventThreatDetectionCustomModulesResponse.description - schemas.ListEffectiveEventThreatDetectionCustomModulesResponse.properties.effectiveEventThreatDetectionCustomModules.description - schemas.ListEffectiveEventThreatDetectionCustomModulesResponse.properties.nextPageToken.description - schemas.ListEffectiveSecurityHealthAnalyticsCustomModulesResponse.description - schemas.ListEffectiveSecurityHealthAnalyticsCustomModulesResponse.properties.effectiveSecurityHealthAnalyticsCustomModules.description - schemas.ListEffectiveSecurityHealthAnalyticsCustomModulesResponse.properties.nextPageToken.description - schemas.ListEventThreatDetectionCustomModulesResponse.description - schemas.ListEventThreatDetectionCustomModulesResponse.properties.eventThreatDetectionCustomModules.description - schemas.ListEventThreatDetectionCustomModulesResponse.properties.nextPageToken.description - schemas.ListFindingsResponse.description - schemas.ListFindingsResponse.properties.listFindingsResults.description - schemas.ListFindingsResponse.properties.nextPageToken.description - schemas.ListFindingsResponse.properties.readTime.description - schemas.ListFindingsResponse.properties.totalSize.description - schemas.ListFindingsResult.description - schemas.ListFindingsResult.properties.finding.description - schemas.ListFindingsResult.properties.resource.description - schemas.ListFindingsResult.properties.stateChange.description - schemas.ListMuteConfigsResponse.description - schemas.ListMuteConfigsResponse.properties.muteConfigs.description - schemas.ListMuteConfigsResponse.properties.nextPageToken.description - schemas.ListNotificationConfigsResponse.description - schemas.ListNotificationConfigsResponse.properties.nextPageToken.description - schemas.ListNotificationConfigsResponse.properties.notificationConfigs.description - schemas.ListOperationsResponse.description - schemas.ListOperationsResponse.properties.nextPageToken.description - schemas.ListOperationsResponse.properties.operations.description - schemas.ListOperationsResponse.properties.unreachable.description - schemas.ListResourceValueConfigsResponse.description - schemas.ListResourceValueConfigsResponse.properties.nextPageToken.description - schemas.ListResourceValueConfigsResponse.properties.resourceValueConfigs.description - schemas.ListSecurityHealthAnalyticsCustomModulesResponse.description - schemas.ListSecurityHealthAnalyticsCustomModulesResponse.properties.nextPageToken.description - schemas.ListSecurityHealthAnalyticsCustomModulesResponse.properties.securityHealthAnalyticsCustomModules.description - schemas.ListSourcesResponse.description - schemas.ListSourcesResponse.properties.nextPageToken.description - schemas.ListSourcesResponse.properties.sources.description - schemas.ListValuedResourcesResponse.description - schemas.ListValuedResourcesResponse.properties.nextPageToken.description - schemas.ListValuedResourcesResponse.properties.totalSize.description - schemas.ListValuedResourcesResponse.properties.valuedResources.description - schemas.LoadBalancer.description - schemas.LoadBalancer.properties.name.description - schemas.LogEntry.description - schemas.LogEntry.properties.cloudLoggingEntry.description - schemas.MemoryHashSignature.description - schemas.MemoryHashSignature.properties.binaryFamily.description - schemas.MemoryHashSignature.properties.detections.description - schemas.MitreAttack.description - schemas.MitreAttack.properties.additionalTactics.description - schemas.MitreAttack.properties.additionalTechniques.description - schemas.MitreAttack.properties.primaryTactic.description - schemas.MitreAttack.properties.primaryTechniques.description - schemas.MitreAttack.properties.version.description - schemas.MuteInfo.description - schemas.MuteInfo.properties.dynamicMuteRecords.description - schemas.MuteInfo.properties.staticMute.description - schemas.Network.description - schemas.Network.properties.name.description - schemas.Node.description - schemas.Node.properties.name.description - schemas.NodePool.description - schemas.NodePool.properties.name.description - schemas.NodePool.properties.nodes.description - schemas.Notebook.description - schemas.Notebook.properties.lastAuthor.description - schemas.Notebook.properties.name.description - schemas.Notebook.properties.notebookUpdateTime.description - schemas.Notebook.properties.service.description - schemas.NotificationConfig.description - schemas.NotificationConfig.properties.description.description - schemas.NotificationConfig.properties.name.description - schemas.NotificationConfig.properties.pubsubTopic.description - schemas.NotificationConfig.properties.serviceAccount.description - schemas.NotificationConfig.properties.streamingConfig.description - schemas.Object.description - schemas.Object.properties.containers.description - schemas.Object.properties.group.description - schemas.Object.properties.kind.description - schemas.Object.properties.name.description - schemas.Object.properties.ns.description - schemas.Operation.description - schemas.Operation.properties.done.description - schemas.Operation.properties.error.description - schemas.Operation.properties.metadata.description - schemas.Operation.properties.name.description - schemas.Operation.properties.response.description - schemas.OrgPolicy.description - schemas.OrgPolicy.properties.name.description - schemas.OrganizationSettings.description - schemas.OrganizationSettings.properties.assetDiscoveryConfig.description - schemas.OrganizationSettings.properties.enableAssetDiscovery.description - schemas.OrganizationSettings.properties.name.description - schemas.Package.description - schemas.Package.properties.cpeUri.description - schemas.Package.properties.packageName.description - schemas.Package.properties.packageType.description - schemas.Package.properties.packageVersion.description - schemas.PathNodeAssociatedFinding.description - schemas.PathNodeAssociatedFinding.properties.canonicalFinding.description - schemas.PathNodeAssociatedFinding.properties.findingCategory.description - schemas.PathNodeAssociatedFinding.properties.name.description - schemas.Pipeline.description - schemas.Pipeline.properties.displayName.description - schemas.Pipeline.properties.name.description - schemas.Pod.description - schemas.Pod.properties.containers.description - schemas.Pod.properties.labels.description - schemas.Pod.properties.name.description - schemas.Pod.properties.ns.description - schemas.Policy.description - schemas.Policy.properties.auditConfigs.description - schemas.Policy.properties.bindings.description - schemas.Policy.properties.etag.description - schemas.Policy.properties.version.description - schemas.PolicyDriftDetails.description - schemas.PolicyDriftDetails.properties.detectedValue.description - schemas.PolicyDriftDetails.properties.expectedValue.description - schemas.PolicyDriftDetails.properties.field.description - schemas.PolicyViolationSummary.description - schemas.PolicyViolationSummary.properties.conformantResourcesCount.description - schemas.PolicyViolationSummary.properties.evaluationErrorsCount.description - schemas.PolicyViolationSummary.properties.outOfScopeResourcesCount.description - schemas.PolicyViolationSummary.properties.policyViolationsCount.description - schemas.PortRange.description - schemas.PortRange.properties.max.description - schemas.PortRange.properties.min.description - schemas.Position.description - schemas.Position.properties.columnNumber.description - schemas.Position.properties.lineNumber.description - schemas.Process.description - schemas.Process.properties.args.description - schemas.Process.properties.argumentsTruncated.description - schemas.Process.properties.binary.description - schemas.Process.properties.envVariables.description - schemas.Process.properties.envVariablesTruncated.description - schemas.Process.properties.libraries.description - schemas.Process.properties.name.description - schemas.Process.properties.parentPid.description - schemas.Process.properties.pid.description - schemas.Process.properties.script.description - schemas.Process.properties.userId.description - schemas.ProcessSignature.description - schemas.ProcessSignature.properties.memoryHashSignature.description - schemas.ProcessSignature.properties.signatureType.description - schemas.ProcessSignature.properties.yaraRuleSignature.description - schemas.Reference.description - schemas.Reference.properties.source.description - schemas.Reference.properties.uri.description - schemas.Requests.description - schemas.Requests.properties.longTermAllowed.description - schemas.Requests.properties.longTermDenied.description - schemas.Requests.properties.ratio.description - schemas.Requests.properties.shortTermAllowed.description - schemas.Resource.description - schemas.Resource.properties.adcApplication.description - schemas.Resource.properties.adcApplicationTemplate.description - schemas.Resource.properties.adcSharedTemplate.description - schemas.Resource.properties.application.description - schemas.Resource.properties.awsMetadata.description - schemas.Resource.properties.azureMetadata.description - schemas.Resource.properties.cloudProvider.description - schemas.Resource.properties.displayName.description - schemas.Resource.properties.folders.description - schemas.Resource.properties.location.description - schemas.Resource.properties.name.description - schemas.Resource.properties.organization.description - schemas.Resource.properties.parentDisplayName.description - schemas.Resource.properties.parentName.description - schemas.Resource.properties.projectDisplayName.description - schemas.Resource.properties.projectName.description - schemas.Resource.properties.resourcePath.description - schemas.Resource.properties.resourcePathString.description - schemas.Resource.properties.service.description - schemas.Resource.properties.type.description - schemas.ResourcePath.description - schemas.ResourcePath.properties.nodes.description - schemas.ResourcePathNode.description - schemas.ResourcePathNode.properties.displayName.description - schemas.ResourcePathNode.properties.id.description - schemas.ResourcePathNode.properties.nodeType.description - schemas.ResourceValueConfigMetadata.description - schemas.ResourceValueConfigMetadata.properties.name.description - schemas.Role.description - schemas.Role.properties.kind.description - schemas.Role.properties.name.description - schemas.Role.properties.ns.description - schemas.RunAssetDiscoveryRequest.description - schemas.Secret.description - schemas.Secret.properties.environmentVariable.description - schemas.Secret.properties.filePath.description - schemas.Secret.properties.status.description - schemas.Secret.properties.type.description - schemas.SecretEnvironmentVariable.description - schemas.SecretEnvironmentVariable.properties.key.description - schemas.SecretFilePath.description - schemas.SecretFilePath.properties.path.description - schemas.SecretStatus.description - schemas.SecretStatus.properties.lastUpdatedTime.description - schemas.SecretStatus.properties.validity.description - schemas.SecurityBulletin.description - schemas.SecurityBulletin.properties.bulletinId.description - schemas.SecurityBulletin.properties.submissionTime.description - schemas.SecurityBulletin.properties.suggestedUpgradeVersion.description - schemas.SecurityCenterProperties.description - schemas.SecurityCenterProperties.properties.folders.description - schemas.SecurityCenterProperties.properties.resourceDisplayName.description - schemas.SecurityCenterProperties.properties.resourceName.description - schemas.SecurityCenterProperties.properties.resourceOwners.description - schemas.SecurityCenterProperties.properties.resourceParent.description - schemas.SecurityCenterProperties.properties.resourceParentDisplayName.description - schemas.SecurityCenterProperties.properties.resourceProject.description - schemas.SecurityCenterProperties.properties.resourceProjectDisplayName.description - schemas.SecurityCenterProperties.properties.resourceType.description - schemas.SecurityMarks.description - schemas.SecurityMarks.properties.canonicalName.description - schemas.SecurityMarks.properties.marks.description - schemas.SecurityMarks.properties.name.description - schemas.SecurityPolicy.description - schemas.SecurityPolicy.properties.name.description - schemas.SecurityPolicy.properties.preview.description - schemas.SecurityPolicy.properties.type.description - schemas.SecurityPosture.description - schemas.SecurityPosture.properties.changedPolicy.description - schemas.SecurityPosture.properties.name.description - schemas.SecurityPosture.properties.policy.description - schemas.SecurityPosture.properties.policyDriftDetails.description - schemas.SecurityPosture.properties.policySet.description - schemas.SecurityPosture.properties.postureDeployment.description - schemas.SecurityPosture.properties.postureDeploymentResource.description - schemas.SecurityPosture.properties.revisionId.description - schemas.SensitivityScore.description - schemas.SensitivityScore.properties.score.description - schemas.ServiceAccountDelegationInfo.description - schemas.ServiceAccountDelegationInfo.properties.principalEmail.description - schemas.ServiceAccountDelegationInfo.properties.principalSubject.description - schemas.SetFindingStateRequest.description - schemas.SetFindingStateRequest.properties.startTime.description - schemas.SetFindingStateRequest.properties.state.description - schemas.SetIamPolicyRequest.description - schemas.SetIamPolicyRequest.properties.policy.description - schemas.SetIamPolicyRequest.properties.updateMask.description - schemas.SetMuteRequest.description - schemas.SetMuteRequest.properties.mute.description - schemas.SimulateSecurityHealthAnalyticsCustomModuleRequest.description - schemas.SimulateSecurityHealthAnalyticsCustomModuleRequest.properties.customConfig.description - schemas.SimulateSecurityHealthAnalyticsCustomModuleRequest.properties.resource.description - schemas.SimulateSecurityHealthAnalyticsCustomModuleResponse.description - schemas.SimulateSecurityHealthAnalyticsCustomModuleResponse.properties.result.description - schemas.SimulatedResource.description - schemas.SimulatedResource.properties.iamPolicyData.description - schemas.SimulatedResource.properties.resourceData.description - schemas.SimulatedResource.properties.resourceType.description - schemas.SimulatedResult.description - schemas.SimulatedResult.properties.error.description - schemas.SimulatedResult.properties.finding.description - schemas.SimulatedResult.properties.noViolation.description - schemas.Simulation.description - schemas.Simulation.properties.cloudProvider.description - schemas.Simulation.properties.createTime.description - schemas.Simulation.properties.name.description - schemas.Simulation.properties.resourceValueConfigsMetadata.description - schemas.Source.description - schemas.Source.properties.canonicalName.description - schemas.Source.properties.description.description - schemas.Source.properties.displayName.description - schemas.Source.properties.name.description - schemas.StaticMute.description - schemas.StaticMute.properties.applyTime.description - schemas.StaticMute.properties.state.description - schemas.Status.description - schemas.Status.properties.code.description - schemas.Status.properties.details.description - schemas.Status.properties.message.description - schemas.StreamingConfig.description - schemas.StreamingConfig.properties.filter.description - schemas.Subject.description - schemas.Subject.properties.kind.description - schemas.Subject.properties.name.description - schemas.Subject.properties.ns.description - schemas.TestIamPermissionsRequest.description - schemas.TestIamPermissionsRequest.properties.permissions.description - schemas.TestIamPermissionsResponse.description - schemas.TestIamPermissionsResponse.properties.permissions.description - schemas.TicketInfo.description - schemas.TicketInfo.properties.assignee.description - schemas.TicketInfo.properties.description.description - schemas.TicketInfo.properties.id.description - schemas.TicketInfo.properties.status.description - schemas.TicketInfo.properties.updateTime.description - schemas.TicketInfo.properties.uri.description - schemas.ToxicCombination.description - schemas.ToxicCombination.properties.attackExposureScore.description - schemas.ToxicCombination.properties.relatedFindings.description - schemas.ValidateEventThreatDetectionCustomModuleRequest.description - schemas.ValidateEventThreatDetectionCustomModuleRequest.properties.rawText.description - schemas.ValidateEventThreatDetectionCustomModuleRequest.properties.type.description - schemas.ValidateEventThreatDetectionCustomModuleResponse.description - schemas.ValidateEventThreatDetectionCustomModuleResponse.properties.errors.description - schemas.ValuedResource.description - schemas.ValuedResource.properties.displayName.description - schemas.ValuedResource.properties.exposedScore.description - schemas.ValuedResource.properties.name.description - schemas.ValuedResource.properties.resource.description - schemas.ValuedResource.properties.resourceType.description - schemas.ValuedResource.properties.resourceValue.description - schemas.ValuedResource.properties.resourceValueConfigsUsed.description - schemas.VertexAi.description - schemas.VertexAi.properties.datasets.description - schemas.VertexAi.properties.pipelines.description - schemas.Vulnerability.description - schemas.Vulnerability.properties.cve.description - schemas.Vulnerability.properties.cwes.description - schemas.Vulnerability.properties.fixedPackage.description - schemas.Vulnerability.properties.offendingPackage.description - schemas.Vulnerability.properties.providerRiskScore.description - schemas.Vulnerability.properties.reachable.description - schemas.Vulnerability.properties.securityBulletin.description - schemas.VulnerabilityCountBySeverity.description - schemas.VulnerabilityCountBySeverity.properties.severityToFindingCount.description - schemas.VulnerabilitySnapshot.description - schemas.VulnerabilitySnapshot.properties.cloudProvider.description - schemas.VulnerabilitySnapshot.properties.findingCount.description - schemas.VulnerabilitySnapshot.properties.name.description - schemas.VulnerabilitySnapshot.properties.snapshotTime.description - schemas.YaraRuleSignature.description - schemas.YaraRuleSignature.properties.yaraRule.description The following keys were changed: - schemas.AgentDataAccessEvent.properties.operation.enumDescriptions - schemas.AiModel.properties.deploymentPlatform.enumDescriptions - schemas.ArtifactGuardPolicy.properties.type.enumDescriptions - schemas.AssetDiscoveryConfig.properties.inclusionMode.enumDescriptions - schemas.AttackExposure.properties.state.enumDescriptions - schemas.AttackStepNode.properties.type.enumDescriptions - schemas.AuditLogConfig.properties.logType.enumDescriptions - schemas.BulkMuteFindingsRequest.properties.muteState.enumDescriptions - schemas.CloudControl.properties.type.enumDescriptions - schemas.CloudDlpDataProfile.properties.parentType.enumDescriptions - schemas.Connection.properties.protocol.enumDescriptions - schemas.Cve.properties.exploitationActivity.enumDescriptions - schemas.Cve.properties.impact.enumDescriptions - schemas.Cvssv3.properties.attackComplexity.enumDescriptions - schemas.Cvssv3.properties.attackVector.enumDescriptions - schemas.Cvssv3.properties.availabilityImpact.enumDescriptions - schemas.Cvssv3.properties.confidentialityImpact.enumDescriptions - schemas.Cvssv3.properties.integrityImpact.enumDescriptions - schemas.Cvssv3.properties.privilegesRequired.enumDescriptions - schemas.Cvssv3.properties.scope.enumDescriptions - schemas.Cvssv3.properties.userInteraction.enumDescriptions - schemas.DataAccessEvent.properties.operation.enumDescriptions - schemas.DataFlowEvent.properties.operation.enumDescriptions - schemas.DataRetentionDeletionEvent.properties.eventType.enumDescriptions - schemas.DiscoveredWorkload.properties.confidence.enumDescriptions - schemas.DiscoveredWorkload.properties.workloadType.enumDescriptions - schemas.EffectiveEventThreatDetectionCustomModule.properties.cloudProvider.enumDescriptions - schemas.EffectiveEventThreatDetectionCustomModule.properties.enablementState.enumDescriptions - schemas.EventThreatDetectionCustomModule.properties.cloudProvider.enumDescriptions - schemas.EventThreatDetectionCustomModule.properties.enablementState.enumDescriptions - schemas.File.properties.fileLoadState.enumDescriptions - schemas.FileOperation.properties.type.enumDescriptions - schemas.Finding.properties.findingClass.enumDescriptions - schemas.Finding.properties.mute.enumDescriptions - schemas.Finding.properties.severity.enumDescriptions - schemas.Finding.properties.state.enumDescriptions - schemas.Framework.properties.category.items.enumDescriptions - schemas.Framework.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1CustomConfig.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule.properties.enablementState.enumDescriptions - schemas.GoogleCloudSecuritycenterV1MuteConfig.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1Resource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1ResourceValueConfig.properties.resourceValue.enumDescriptions - schemas.GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.properties.enablementState.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.highSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AgentDataAccessEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AiModel.properties.deploymentPlatform.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ArtifactGuardPolicy.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2AttackExposure.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2CloudControl.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2CloudDlpDataProfile.properties.parentType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Connection.properties.protocol.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cve.properties.exploitationActivity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cve.properties.impact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackComplexity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.attackVector.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.availabilityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.confidentialityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.integrityImpact.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.privilegesRequired.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.scope.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Cvssv3.properties.userInteraction.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataAccessEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataFlowEvent.properties.operation.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DataRetentionDeletionEvent.properties.eventType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.confidence.enumDescriptions - schemas.GoogleCloudSecuritycenterV2DiscoveredWorkload.properties.workloadType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2File.properties.fileLoadState.enumDescriptions - schemas.GoogleCloudSecuritycenterV2FileOperation.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.findingClass.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.mute.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Finding.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Framework.properties.category.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Framework.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2GroupMembership.properties.groupType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IamBinding.properties.action.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IpRules.properties.direction.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.issueType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.severity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Issue.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueDomain.properties.domainCategory.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueMute.properties.muteState.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Job.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTactics.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.additionalTechniques.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTactic.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MitreAttack.properties.primaryTechniques.items.enumDescriptions - schemas.GoogleCloudSecuritycenterV2MuteConfig.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ProcessSignature.properties.signatureType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Resource.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment.properties.type.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourcePathNode.properties.nodeType.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.cloudProvider.enumDescriptions - schemas.GoogleCloudSecuritycenterV2ResourceValueConfig.properties.resourceValue.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Role.properties.kind.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SecretStatus.properties.validity.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.highSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping.properties.mediumSensitivityMapping.enumDescriptions - schemas.GoogleCloudSecuritycenterV2SensitivityScore.properties.score.enumDescriptions - schemas.GoogleCloudSecuritycenterV2StaticMute.properties.state.enumDescriptions - schemas.GoogleCloudSecuritycenterV2Subject.properties.kind.enumDescriptions - schemas.GroupMembership.properties.groupType.enumDescriptions - schemas.IamBinding.properties.action.enumDescriptions - schemas.IpRules.properties.direction.enumDescriptions - schemas.Job.properties.state.enumDescriptions - schemas.ListAssetsResult.properties.stateChange.enumDescriptions - schemas.ListFindingsResult.properties.stateChange.enumDescriptions - schemas.MitreAttack.properties.additionalTactics.items.enumDescriptions - schemas.MitreAttack.properties.additionalTechniques.items.enumDescriptions - schemas.MitreAttack.properties.primaryTactic.enumDescriptions - schemas.MitreAttack.properties.primaryTechniques.items.enumDescriptions - schemas.ProcessSignature.properties.signatureType.enumDescriptions - schemas.Resource.properties.cloudProvider.enumDescriptions - schemas.ResourcePathNode.properties.nodeType.enumDescriptions - schemas.Role.properties.kind.enumDescriptions - schemas.SecretStatus.properties.validity.enumDescriptions - schemas.SensitivityScore.properties.score.enumDescriptions - schemas.SetFindingStateRequest.properties.state.enumDescriptions - schemas.SetMuteRequest.properties.mute.enumDescriptions - schemas.Simulation.properties.cloudProvider.enumDescriptions - schemas.StaticMute.properties.state.enumDescriptions - schemas.Subject.properties.kind.enumDescriptions - schemas.ValuedResource.properties.resourceValue.enumDescriptions - schemas.VulnerabilitySnapshot.properties.cloudProvider.enumDescriptions --- discovery/securitycenter-v1.json | 5283 ++++++------------- discovery/securitycenter-v1beta1.json | 4393 +++++----------- discovery/securitycenter-v1beta2.json | 4477 +++++----------- src/apis/securitycenter/v1.ts | 6852 ++----------------------- src/apis/securitycenter/v1beta1.ts | 5149 +------------------ src/apis/securitycenter/v1beta2.ts | 5109 +----------------- 6 files changed, 5085 insertions(+), 26178 deletions(-) diff --git a/discovery/securitycenter-v1.json b/discovery/securitycenter-v1.json index a0640137d6..207935494b 100644 --- a/discovery/securitycenter-v1.json +++ b/discovery/securitycenter-v1.json @@ -128,7 +128,7 @@ "methods": { "group": { "deprecated": true, - "description": "Filters an organization's assets and groups them by their specified properties.", + "description": "", "flatPath": "v1/folders/{foldersId}/assets:group", "httpMethod": "POST", "id": "securitycenter.folders.assets.group", @@ -137,7 +137,6 @@ ], "parameters": { "parent": { - "description": "Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -157,7 +156,7 @@ }, "list": { "deprecated": true, - "description": "Lists an organization's assets.", + "description": "", "flatPath": "v1/folders/{foldersId}/assets", "httpMethod": "GET", "id": "securitycenter.folders.assets.list", @@ -166,47 +165,39 @@ ], "parameters": { "compareDuration": { - "description": "When compare_duration is set, the ListAssetsResult's \"state_change\" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible \"state_change\" values when compare_duration is specified: * \"ADDED\": indicates that the asset was not present at the start of compare_duration, but present at read_time. * \"REMOVED\": indicates that the asset was present at the start of compare_duration, but not present at read_time. * \"ACTIVE\": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all assets present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = \"2019-06-10T16:07:18-07:00\"` `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = \"2019-06-10T16:07:18-07:00\"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : \"\"`", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,resource_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,resource_properties.a_property\" and \" name desc , resource_properties.a_property \" are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -221,7 +212,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1/folders/{foldersId}/assets/{assetsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.folders.assets.updateSecurityMarks", @@ -230,20 +221,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^folders/[^/]+/assets/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to \"marks\", all marks will be replaced. Individual marks can be updated using \"marks.\".", "format": "google-fieldmask", "location": "query", "type": "string" @@ -265,7 +253,7 @@ "bigQueryExports": { "methods": { "create": { - "description": "Creates a BigQuery export.", + "description": "", "flatPath": "v1/folders/{foldersId}/bigQueryExports", "httpMethod": "POST", "id": "securitycenter.folders.bigQueryExports.create", @@ -274,12 +262,10 @@ ], "parameters": { "bigQueryExportId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -298,7 +284,7 @@ ] }, "delete": { - "description": "Deletes an existing BigQuery export.", + "description": "", "flatPath": "v1/folders/{foldersId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "DELETE", "id": "securitycenter.folders.bigQueryExports.delete", @@ -307,7 +293,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the BigQuery export to delete. Its format is `organizations/{organization}/bigQueryExports/{export_id}`, `folders/{folder}/bigQueryExports/{export_id}`, or `projects/{project}/bigQueryExports/{export_id}`", "location": "path", "pattern": "^folders/[^/]+/bigQueryExports/[^/]+$", "required": true, @@ -323,7 +308,7 @@ ] }, "get": { - "description": "Gets a BigQuery export.", + "description": "", "flatPath": "v1/folders/{foldersId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "GET", "id": "securitycenter.folders.bigQueryExports.get", @@ -332,7 +317,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization}/bigQueryExports/{export_id}`, `folders/{folder}/bigQueryExports/{export_id}`, or `projects/{project}/bigQueryExports/{export_id}`", "location": "path", "pattern": "^folders/[^/]+/bigQueryExports/[^/]+$", "required": true, @@ -348,7 +332,7 @@ ] }, "list": { - "description": "Lists BigQuery exports. Note that when requesting BigQuery exports at a given level all exports under that level are also returned e.g. if requesting BigQuery exports under a folder, then all BigQuery exports immediately under the folder plus the ones created under the projects within the folder are returned.", + "description": "", "flatPath": "v1/folders/{foldersId}/bigQueryExports", "httpMethod": "GET", "id": "securitycenter.folders.bigQueryExports.list", @@ -357,18 +341,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -384,7 +365,7 @@ ] }, "patch": { - "description": "Updates a BigQuery export.", + "description": "", "flatPath": "v1/folders/{foldersId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "PATCH", "id": "securitycenter.folders.bigQueryExports.patch", @@ -393,14 +374,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: \"organizations/{organization_id}/bigQueryExports/{export_id}\" Example format: \"folders/{folder_id}/bigQueryExports/{export_id}\" Example format: \"projects/{project_id}/bigQueryExports/{export_id}\" This field is provided in responses, and is ignored when provided in create requests.", "location": "path", "pattern": "^folders/[^/]+/bigQueryExports/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -422,7 +401,7 @@ "eventThreatDetectionSettings": { "methods": { "validateCustomModule": { - "description": "Validates the given Event Threat Detection custom module.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings:validateCustomModule", "httpMethod": "POST", "id": "securitycenter.folders.eventThreatDetectionSettings.validateCustomModule", @@ -431,7 +410,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -454,7 +432,7 @@ "customModules": { "methods": { "create": { - "description": "Creates a resident Event Threat Detection custom module at the scope of the given Resource Manager parent, and also creates inherited custom modules for all descendants of the given parent. These modules are enabled by default.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/customModules", "httpMethod": "POST", "id": "securitycenter.folders.eventThreatDetectionSettings.customModules.create", @@ -463,7 +441,6 @@ ], "parameters": { "parent": { - "description": "Required. The new custom module's parent. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -482,7 +459,7 @@ ] }, "delete": { - "description": "Deletes the specified Event Threat Detection custom module and all of its descendants in the Resource Manager hierarchy. This method is only supported for resident custom modules.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "DELETE", "id": "securitycenter.folders.eventThreatDetectionSettings.customModules.delete", @@ -491,7 +468,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to delete. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, @@ -507,7 +483,7 @@ ] }, "get": { - "description": "Gets an Event Threat Detection custom module.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.customModules.get", @@ -516,7 +492,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to get. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, @@ -532,7 +507,7 @@ ] }, "list": { - "description": "Lists all Event Threat Detection custom modules for the given Resource Manager parent. This includes resident modules defined at the scope of the parent along with modules inherited from ancestors.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/customModules", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.customModules.list", @@ -541,18 +516,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -568,7 +540,7 @@ ] }, "listDescendant": { - "description": "Lists all resident Event Threat Detection custom modules under the given Resource Manager parent and its descendants.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/customModules:listDescendant", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.customModules.listDescendant", @@ -577,18 +549,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -604,7 +573,7 @@ ] }, "patch": { - "description": "Updates the Event Threat Detection custom module with the given name based on the given update mask. Updating the enablement state is supported for both resident and inherited modules (though resident modules cannot have an enablement state of \"inherited\"). Updating the display name or configuration of a module is supported for resident modules only. The type of a module cannot be changed.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "PATCH", "id": "securitycenter.folders.eventThreatDetectionSettings.customModules.patch", @@ -613,14 +582,12 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -642,7 +609,7 @@ "effectiveCustomModules": { "methods": { "get": { - "description": "Gets an effective Event Threat Detection custom module at the given level.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/effectiveCustomModules/{effectiveCustomModulesId}", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.effectiveCustomModules.get", @@ -651,7 +618,6 @@ ], "parameters": { "name": { - "description": "Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{module}`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings/effectiveCustomModules/[^/]+$", "required": true, @@ -667,7 +633,7 @@ ] }, "list": { - "description": "Lists all effective Event Threat Detection custom modules for the given parent. This includes resident modules defined at the scope of the parent along with modules inherited from its ancestors.", + "description": "", "flatPath": "v1/folders/{foldersId}/eventThreatDetectionSettings/effectiveCustomModules", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.effectiveCustomModules.list", @@ -676,18 +642,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -709,7 +672,7 @@ "findings": { "methods": { "bulkMute": { - "description": "Kicks off an LRO to bulk mute findings for a parent based on a filter. The parent can be either an organization, folder or project. The findings matched by the filter will be muted after the LRO is done.", + "description": "", "flatPath": "v1/folders/{foldersId}/findings:bulkMute", "httpMethod": "POST", "id": "securitycenter.folders.findings.bulkMute", @@ -718,7 +681,6 @@ ], "parameters": { "parent": { - "description": "Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -743,7 +705,7 @@ "muteConfigs": { "methods": { "delete": { - "description": "Deletes an existing mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.folders.locations.muteConfigs.delete", @@ -752,7 +714,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to delete. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^folders/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -768,7 +729,7 @@ ] }, "get": { - "description": "Gets a mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "GET", "id": "securitycenter.folders.locations.muteConfigs.get", @@ -777,7 +738,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to retrieve. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^folders/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -793,7 +753,7 @@ ] }, "patch": { - "description": "Updates a mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.folders.locations.muteConfigs.patch", @@ -802,14 +762,12 @@ ], "parameters": { "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "location": "path", "pattern": "^folders/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -833,7 +791,7 @@ "muteConfigs": { "methods": { "create": { - "description": "Creates a mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/muteConfigs", "httpMethod": "POST", "id": "securitycenter.folders.muteConfigs.create", @@ -842,12 +800,10 @@ ], "parameters": { "muteConfigId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -866,7 +822,7 @@ ] }, "delete": { - "description": "Deletes an existing mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/muteConfigs/{muteConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.folders.muteConfigs.delete", @@ -875,7 +831,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to delete. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^folders/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -891,7 +846,7 @@ ] }, "get": { - "description": "Gets a mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/muteConfigs/{muteConfigsId}", "httpMethod": "GET", "id": "securitycenter.folders.muteConfigs.get", @@ -900,7 +855,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to retrieve. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^folders/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -916,7 +870,7 @@ ] }, "list": { - "description": "Lists mute configs.", + "description": "", "flatPath": "v1/folders/{foldersId}/muteConfigs", "httpMethod": "GET", "id": "securitycenter.folders.muteConfigs.list", @@ -925,18 +879,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -952,7 +903,7 @@ ] }, "patch": { - "description": "Updates a mute config.", + "description": "", "flatPath": "v1/folders/{foldersId}/muteConfigs/{muteConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.folders.muteConfigs.patch", @@ -961,14 +912,12 @@ ], "parameters": { "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "location": "path", "pattern": "^folders/[^/]+/muteConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -990,7 +939,7 @@ "notificationConfigs": { "methods": { "create": { - "description": "Creates a notification config.", + "description": "", "flatPath": "v1/folders/{foldersId}/notificationConfigs", "httpMethod": "POST", "id": "securitycenter.folders.notificationConfigs.create", @@ -999,12 +948,10 @@ ], "parameters": { "configId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -1023,7 +970,7 @@ ] }, "delete": { - "description": "Deletes a notification config.", + "description": "", "flatPath": "v1/folders/{foldersId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.folders.notificationConfigs.delete", @@ -1032,7 +979,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`.", "location": "path", "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -1048,7 +994,7 @@ ] }, "get": { - "description": "Gets a notification config.", + "description": "", "flatPath": "v1/folders/{foldersId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "GET", "id": "securitycenter.folders.notificationConfigs.get", @@ -1057,7 +1003,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`.", "location": "path", "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -1073,7 +1018,7 @@ ] }, "list": { - "description": "Lists notification configs.", + "description": "", "flatPath": "v1/folders/{foldersId}/notificationConfigs", "httpMethod": "GET", "id": "securitycenter.folders.notificationConfigs.list", @@ -1082,18 +1027,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent in which to list the notification configurations. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -1109,7 +1051,7 @@ ] }, "patch": { - "description": " Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter", + "description": "", "flatPath": "v1/folders/{foldersId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.folders.notificationConfigs.patch", @@ -1118,14 +1060,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "location": "path", "pattern": "^folders/[^/]+/notificationConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the notification config. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1149,7 +1089,7 @@ "customModules": { "methods": { "create": { - "description": "Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the given CRM parent, and also creates inherited SecurityHealthAnalyticsCustomModules for all CRM descendants of the given parent. These modules are enabled by default.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules", "httpMethod": "POST", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.create", @@ -1158,7 +1098,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the new custom module's parent. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -1177,7 +1116,7 @@ ] }, "delete": { - "description": "Deletes the specified SecurityHealthAnalyticsCustomModule and all of its descendants in the CRM hierarchy. This method is only supported for resident custom modules.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "DELETE", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.delete", @@ -1186,7 +1125,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to delete. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, @@ -1202,7 +1140,7 @@ ] }, "get": { - "description": "Retrieves a SecurityHealthAnalyticsCustomModule.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.get", @@ -1211,7 +1149,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to get. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, @@ -1227,7 +1164,7 @@ ] }, "list": { - "description": "Returns a list of all SecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.list", @@ -1236,18 +1173,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -1263,7 +1197,7 @@ ] }, "listDescendant": { - "description": "Returns a list of all resident SecurityHealthAnalyticsCustomModules under the given CRM parent and all of the parent’s CRM descendants.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules:listDescendant", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.listDescendant", @@ -1272,18 +1206,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -1299,7 +1230,7 @@ ] }, "patch": { - "description": "Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask. Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of \"inherited\"). Updating the display name and custom config of a module is supported on resident modules only.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "PATCH", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.patch", @@ -1308,14 +1239,12 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}\" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits.", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1333,7 +1262,7 @@ ] }, "simulate": { - "description": "Simulates a given SecurityHealthAnalyticsCustomModule and Resource.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/customModules:simulate", "httpMethod": "POST", "id": "securitycenter.folders.securityHealthAnalyticsSettings.customModules.simulate", @@ -1342,7 +1271,6 @@ ], "parameters": { "parent": { - "description": "Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id}`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -1365,7 +1293,7 @@ "effectiveCustomModules": { "methods": { "get": { - "description": "Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/effectiveCustomModules/{effectiveCustomModulesId}", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.effectiveCustomModules.get", @@ -1374,7 +1302,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the effective custom module to get. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings/effectiveCustomModules/[^/]+$", "required": true, @@ -1390,7 +1317,7 @@ ] }, "list": { - "description": "Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors.", + "description": "", "flatPath": "v1/folders/{foldersId}/securityHealthAnalyticsSettings/effectiveCustomModules", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.effectiveCustomModules.list", @@ -1399,18 +1326,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list effective custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -1432,7 +1356,7 @@ "sources": { "methods": { "list": { - "description": "Lists all sources belonging to an organization.", + "description": "", "flatPath": "v1/folders/{foldersId}/sources", "httpMethod": "GET", "id": "securitycenter.folders.sources.list", @@ -1441,18 +1365,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^folders/[^/]+$", "required": true, @@ -1472,7 +1393,7 @@ "findings": { "methods": { "group": { - "description": "Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings, /v1/folders/{folder_id}/sources/-/findings, /v1/projects/{project_id}/sources/-/findings", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings:group", "httpMethod": "POST", "id": "securitycenter.folders.sources.findings.group", @@ -1481,7 +1402,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-`, or `projects/{project_id}/sources/-`", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+$", "required": true, @@ -1500,7 +1420,7 @@ ] }, "list": { - "description": "Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings", "httpMethod": "GET", "id": "securitycenter.folders.sources.findings.list", @@ -1510,40 +1430,33 @@ "parameters": { "compareDuration": { "deprecated": true, - "description": "When compare_duration is set, the ListFindingsResult's \"state_change\" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible \"state_change\" values when compare_duration is specified: * \"CHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * \"UNCHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * \"ADDED\": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * \"REMOVED\": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all findings present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = \"2019-06-10T16:07:18-07:00\"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : \"\"` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:`", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,source_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,source_properties.a_property\" and \" name desc , source_properties.a_property \" are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id}/sources/-`, `folders/{folder_id}/sources/-` or `projects/{projects_id}/sources/-`", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+$", "required": true, @@ -1551,7 +1464,6 @@ }, "readTime": { "deprecated": true, - "description": "Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -1566,7 +1478,7 @@ ] }, "patch": { - "description": "Creates or updates a finding. The corresponding source must exist for a finding creation to succeed.", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings/{findingsId}", "httpMethod": "PATCH", "id": "securitycenter.folders.sources.findings.patch", @@ -1575,14 +1487,12 @@ ], "parameters": { "name": { - "description": "The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\", \"projects/{project_id}/sources/{source_id}/findings/{finding_id}\".", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using \"source_properties.\" in the field mask.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1600,7 +1510,7 @@ ] }, "setMute": { - "description": "Updates the mute state of a finding.", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings/{findingsId}:setMute", "httpMethod": "POST", "id": "securitycenter.folders.sources.findings.setMute", @@ -1609,7 +1519,6 @@ ], "parameters": { "name": { - "description": "Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, `projects/{project_id}/sources/{source_id}/findings/{finding_id}`.", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -1628,7 +1537,7 @@ ] }, "setState": { - "description": "Updates the state of a finding.", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings/{findingsId}:setState", "httpMethod": "POST", "id": "securitycenter.folders.sources.findings.setState", @@ -1637,7 +1546,6 @@ ], "parameters": { "name": { - "description": "Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, `projects/{project_id}/sources/{source_id}/findings/{finding_id}`.", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -1656,7 +1564,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings/{findingsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.folders.sources.findings.updateSecurityMarks", @@ -1665,20 +1573,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+/findings/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to \"marks\", all marks will be replaced. Individual marks can be updated using \"marks.\".", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1700,7 +1605,7 @@ "externalSystems": { "methods": { "patch": { - "description": "Updates external system. This is for a given finding.", + "description": "", "flatPath": "v1/folders/{foldersId}/sources/{sourcesId}/findings/{findingsId}/externalSystems/{externalSystemsId}", "httpMethod": "PATCH", "id": "securitycenter.folders.sources.findings.externalSystems.patch", @@ -1709,14 +1614,12 @@ ], "parameters": { "name": { - "description": "Full resource name of the external system, for example: \"organizations/1234/sources/5678/findings/123456/externalSystems/jira\", \"folders/1234/sources/5678/findings/123456/externalSystems/jira\", \"projects/1234/sources/5678/findings/123456/externalSystems/jira\"", "location": "path", "pattern": "^folders/[^/]+/sources/[^/]+/findings/[^/]+/externalSystems/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1744,7 +1647,7 @@ "organizations": { "methods": { "getOrganizationSettings": { - "description": "Gets the settings for an organization.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/organizationSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getOrganizationSettings", @@ -1753,7 +1656,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the organization to get organization settings for. Its format is `organizations/[organization_id]/organizationSettings`.", "location": "path", "pattern": "^organizations/[^/]+/organizationSettings$", "required": true, @@ -1770,7 +1672,7 @@ }, "updateOrganizationSettings": { "deprecated": true, - "description": "Updates an organization's settings.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/organizationSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateOrganizationSettings", @@ -1779,14 +1681,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/organizationSettings\".", "location": "path", "pattern": "^organizations/[^/]+/organizationSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the settings resource. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1809,7 +1709,7 @@ "methods": { "group": { "deprecated": true, - "description": "Filters an organization's assets and groups them by their specified properties.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/assets:group", "httpMethod": "POST", "id": "securitycenter.organizations.assets.group", @@ -1818,7 +1718,6 @@ ], "parameters": { "parent": { - "description": "Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -1838,7 +1737,7 @@ }, "list": { "deprecated": true, - "description": "Lists an organization's assets.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/assets", "httpMethod": "GET", "id": "securitycenter.organizations.assets.list", @@ -1847,47 +1746,39 @@ ], "parameters": { "compareDuration": { - "description": "When compare_duration is set, the ListAssetsResult's \"state_change\" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible \"state_change\" values when compare_duration is specified: * \"ADDED\": indicates that the asset was not present at the start of compare_duration, but present at read_time. * \"REMOVED\": indicates that the asset was present at the start of compare_duration, but not present at read_time. * \"ACTIVE\": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all assets present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = \"2019-06-10T16:07:18-07:00\"` `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = \"2019-06-10T16:07:18-07:00\"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : \"\"`", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,resource_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,resource_properties.a_property\" and \" name desc , resource_properties.a_property \" are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -1903,7 +1794,7 @@ }, "runDiscovery": { "deprecated": true, - "description": "Runs asset discovery. The discovery is tracked with a long-running operation. This API can only be called with limited frequency for an organization. If it is called too frequently the caller will receive a TOO_MANY_REQUESTS error.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/assets:runDiscovery", "httpMethod": "POST", "id": "securitycenter.organizations.assets.runDiscovery", @@ -1912,7 +1803,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the organization to run asset discovery for. Its format is `organizations/[organization_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -1931,7 +1821,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/assets/{assetsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.organizations.assets.updateSecurityMarks", @@ -1940,20 +1830,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^organizations/[^/]+/assets/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to \"marks\", all marks will be replaced. Individual marks can be updated using \"marks.\".", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1975,7 +1862,7 @@ "attackPaths": { "methods": { "list": { - "description": "Lists the attack paths for a set of simulation results or valued resources and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/attackPaths", "httpMethod": "GET", "id": "securitycenter.organizations.attackPaths.list", @@ -1984,23 +1871,19 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports =", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list attack paths. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}` `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}`", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2020,7 +1903,7 @@ "bigQueryExports": { "methods": { "create": { - "description": "Creates a BigQuery export.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/bigQueryExports", "httpMethod": "POST", "id": "securitycenter.organizations.bigQueryExports.create", @@ -2029,12 +1912,10 @@ ], "parameters": { "bigQueryExportId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2053,7 +1934,7 @@ ] }, "delete": { - "description": "Deletes an existing BigQuery export.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.bigQueryExports.delete", @@ -2062,7 +1943,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the BigQuery export to delete. Its format is `organizations/{organization}/bigQueryExports/{export_id}`, `folders/{folder}/bigQueryExports/{export_id}`, or `projects/{project}/bigQueryExports/{export_id}`", "location": "path", "pattern": "^organizations/[^/]+/bigQueryExports/[^/]+$", "required": true, @@ -2078,7 +1958,7 @@ ] }, "get": { - "description": "Gets a BigQuery export.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "GET", "id": "securitycenter.organizations.bigQueryExports.get", @@ -2087,7 +1967,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization}/bigQueryExports/{export_id}`, `folders/{folder}/bigQueryExports/{export_id}`, or `projects/{project}/bigQueryExports/{export_id}`", "location": "path", "pattern": "^organizations/[^/]+/bigQueryExports/[^/]+$", "required": true, @@ -2103,7 +1982,7 @@ ] }, "list": { - "description": "Lists BigQuery exports. Note that when requesting BigQuery exports at a given level all exports under that level are also returned e.g. if requesting BigQuery exports under a folder, then all BigQuery exports immediately under the folder plus the ones created under the projects within the folder are returned.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/bigQueryExports", "httpMethod": "GET", "id": "securitycenter.organizations.bigQueryExports.list", @@ -2112,18 +1991,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2139,7 +2015,7 @@ ] }, "patch": { - "description": "Updates a BigQuery export.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.bigQueryExports.patch", @@ -2148,14 +2024,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: \"organizations/{organization_id}/bigQueryExports/{export_id}\" Example format: \"folders/{folder_id}/bigQueryExports/{export_id}\" Example format: \"projects/{project_id}/bigQueryExports/{export_id}\" This field is provided in responses, and is ignored when provided in create requests.", "location": "path", "pattern": "^organizations/[^/]+/bigQueryExports/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -2177,7 +2051,7 @@ "eventThreatDetectionSettings": { "methods": { "validateCustomModule": { - "description": "Validates the given Event Threat Detection custom module.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings:validateCustomModule", "httpMethod": "POST", "id": "securitycenter.organizations.eventThreatDetectionSettings.validateCustomModule", @@ -2186,7 +2060,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -2209,7 +2082,7 @@ "customModules": { "methods": { "create": { - "description": "Creates a resident Event Threat Detection custom module at the scope of the given Resource Manager parent, and also creates inherited custom modules for all descendants of the given parent. These modules are enabled by default.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/customModules", "httpMethod": "POST", "id": "securitycenter.organizations.eventThreatDetectionSettings.customModules.create", @@ -2218,7 +2091,6 @@ ], "parameters": { "parent": { - "description": "Required. The new custom module's parent. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -2237,7 +2109,7 @@ ] }, "delete": { - "description": "Deletes the specified Event Threat Detection custom module and all of its descendants in the Resource Manager hierarchy. This method is only supported for resident custom modules.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.eventThreatDetectionSettings.customModules.delete", @@ -2246,7 +2118,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to delete. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, @@ -2262,7 +2133,7 @@ ] }, "get": { - "description": "Gets an Event Threat Detection custom module.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.customModules.get", @@ -2271,7 +2142,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to get. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, @@ -2287,7 +2157,7 @@ ] }, "list": { - "description": "Lists all Event Threat Detection custom modules for the given Resource Manager parent. This includes resident modules defined at the scope of the parent along with modules inherited from ancestors.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/customModules", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.customModules.list", @@ -2296,18 +2166,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -2323,7 +2190,7 @@ ] }, "listDescendant": { - "description": "Lists all resident Event Threat Detection custom modules under the given Resource Manager parent and its descendants.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/customModules:listDescendant", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.customModules.listDescendant", @@ -2332,18 +2199,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -2359,7 +2223,7 @@ ] }, "patch": { - "description": "Updates the Event Threat Detection custom module with the given name based on the given update mask. Updating the enablement state is supported for both resident and inherited modules (though resident modules cannot have an enablement state of \"inherited\"). Updating the display name or configuration of a module is supported for resident modules only. The type of a module cannot be changed.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.eventThreatDetectionSettings.customModules.patch", @@ -2368,14 +2232,12 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -2397,7 +2259,7 @@ "effectiveCustomModules": { "methods": { "get": { - "description": "Gets an effective Event Threat Detection custom module at the given level.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/effectiveCustomModules/{effectiveCustomModulesId}", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.effectiveCustomModules.get", @@ -2406,7 +2268,6 @@ ], "parameters": { "name": { - "description": "Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{module}`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings/effectiveCustomModules/[^/]+$", "required": true, @@ -2422,7 +2283,7 @@ ] }, "list": { - "description": "Lists all effective Event Threat Detection custom modules for the given parent. This includes resident modules defined at the scope of the parent along with modules inherited from its ancestors.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/eventThreatDetectionSettings/effectiveCustomModules", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.effectiveCustomModules.list", @@ -2431,18 +2292,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -2464,7 +2322,7 @@ "findings": { "methods": { "bulkMute": { - "description": "Kicks off an LRO to bulk mute findings for a parent based on a filter. The parent can be either an organization, folder or project. The findings matched by the filter will be muted after the LRO is done.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/findings:bulkMute", "httpMethod": "POST", "id": "securitycenter.organizations.findings.bulkMute", @@ -2473,7 +2331,6 @@ ], "parameters": { "parent": { - "description": "Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2498,7 +2355,7 @@ "muteConfigs": { "methods": { "delete": { - "description": "Deletes an existing mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.locations.muteConfigs.delete", @@ -2507,7 +2364,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to delete. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^organizations/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -2523,7 +2379,7 @@ ] }, "get": { - "description": "Gets a mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "GET", "id": "securitycenter.organizations.locations.muteConfigs.get", @@ -2532,7 +2388,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to retrieve. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^organizations/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -2548,7 +2403,7 @@ ] }, "patch": { - "description": "Updates a mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.locations.muteConfigs.patch", @@ -2557,14 +2412,12 @@ ], "parameters": { "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "location": "path", "pattern": "^organizations/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -2588,7 +2441,7 @@ "muteConfigs": { "methods": { "create": { - "description": "Creates a mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/muteConfigs", "httpMethod": "POST", "id": "securitycenter.organizations.muteConfigs.create", @@ -2597,12 +2450,10 @@ ], "parameters": { "muteConfigId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2621,7 +2472,7 @@ ] }, "delete": { - "description": "Deletes an existing mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.muteConfigs.delete", @@ -2630,7 +2481,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to delete. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^organizations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -2646,7 +2496,7 @@ ] }, "get": { - "description": "Gets a mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "GET", "id": "securitycenter.organizations.muteConfigs.get", @@ -2655,7 +2505,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to retrieve. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^organizations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -2671,7 +2520,7 @@ ] }, "list": { - "description": "Lists mute configs.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/muteConfigs", "httpMethod": "GET", "id": "securitycenter.organizations.muteConfigs.list", @@ -2680,18 +2529,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2707,7 +2553,7 @@ ] }, "patch": { - "description": "Updates a mute config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.muteConfigs.patch", @@ -2716,14 +2562,12 @@ ], "parameters": { "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "location": "path", "pattern": "^organizations/[^/]+/muteConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -2745,7 +2589,7 @@ "notificationConfigs": { "methods": { "create": { - "description": "Creates a notification config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/notificationConfigs", "httpMethod": "POST", "id": "securitycenter.organizations.notificationConfigs.create", @@ -2754,12 +2598,10 @@ ], "parameters": { "configId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2778,7 +2620,7 @@ ] }, "delete": { - "description": "Deletes a notification config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.notificationConfigs.delete", @@ -2787,7 +2629,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`.", "location": "path", "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -2803,7 +2644,7 @@ ] }, "get": { - "description": "Gets a notification config.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "GET", "id": "securitycenter.organizations.notificationConfigs.get", @@ -2812,7 +2653,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`.", "location": "path", "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -2828,7 +2668,7 @@ ] }, "list": { - "description": "Lists notification configs.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/notificationConfigs", "httpMethod": "GET", "id": "securitycenter.organizations.notificationConfigs.list", @@ -2837,18 +2677,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent in which to list the notification configurations. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -2864,7 +2701,7 @@ ] }, "patch": { - "description": " Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter", + "description": "", "flatPath": "v1/organizations/{organizationsId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.notificationConfigs.patch", @@ -2873,14 +2710,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "location": "path", "pattern": "^organizations/[^/]+/notificationConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the notification config. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -2902,7 +2737,7 @@ "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`.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/operations/{operationsId}:cancel", "httpMethod": "POST", "id": "securitycenter.organizations.operations.cancel", @@ -2911,7 +2746,6 @@ ], "parameters": { "name": { - "description": "The name of the operation resource to be cancelled.", "location": "path", "pattern": "^organizations/[^/]+/operations/[^/]+$", "required": true, @@ -2927,7 +2761,7 @@ ] }, "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`.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/operations/{operationsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.operations.delete", @@ -2936,7 +2770,6 @@ ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", "location": "path", "pattern": "^organizations/[^/]+/operations/[^/]+$", "required": true, @@ -2952,7 +2785,7 @@ ] }, "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.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/operations/{operationsId}", "httpMethod": "GET", "id": "securitycenter.organizations.operations.get", @@ -2961,7 +2794,6 @@ ], "parameters": { "name": { - "description": "The name of the operation resource.", "location": "path", "pattern": "^organizations/[^/]+/operations/[^/]+$", "required": true, @@ -2977,7 +2809,7 @@ ] }, "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/operations", "httpMethod": "GET", "id": "securitycenter.organizations.operations.list", @@ -2986,30 +2818,25 @@ ], "parameters": { "filter": { - "description": "The standard list filter.", "location": "query", "type": "string" }, "name": { - "description": "The name of the operation's parent resource.", "location": "path", "pattern": "^organizations/[^/]+/operations$", "required": true, "type": "string" }, "pageSize": { - "description": "The standard list page size.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The standard list page token.", "location": "query", "type": "string" }, "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", "location": "query", "type": "boolean" } @@ -3027,7 +2854,7 @@ "resourceValueConfigs": { "methods": { "batchCreate": { - "description": "Creates a ResourceValueConfig for an organization. Maps user's tags to difference resource values for use by the attack path simulation.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/resourceValueConfigs:batchCreate", "httpMethod": "POST", "id": "securitycenter.organizations.resourceValueConfigs.batchCreate", @@ -3036,7 +2863,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the new ResourceValueConfig's parent. The parent field in the CreateResourceValueConfigRequest messages must either be empty or match this field.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -3055,7 +2881,7 @@ ] }, "delete": { - "description": "Deletes a ResourceValueConfig.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/resourceValueConfigs/{resourceValueConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.resourceValueConfigs.delete", @@ -3064,7 +2890,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the ResourceValueConfig to delete", "location": "path", "pattern": "^organizations/[^/]+/resourceValueConfigs/[^/]+$", "required": true, @@ -3080,7 +2905,7 @@ ] }, "get": { - "description": "Gets a ResourceValueConfig.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/resourceValueConfigs/{resourceValueConfigsId}", "httpMethod": "GET", "id": "securitycenter.organizations.resourceValueConfigs.get", @@ -3089,7 +2914,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the resource value config to retrieve. Its format is `organizations/{organization}/resourceValueConfigs/{config_id}`.", "location": "path", "pattern": "^organizations/[^/]+/resourceValueConfigs/[^/]+$", "required": true, @@ -3105,7 +2929,7 @@ ] }, "list": { - "description": "Lists all ResourceValueConfigs.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/resourceValueConfigs", "httpMethod": "GET", "id": "securitycenter.organizations.resourceValueConfigs.list", @@ -3114,18 +2938,15 @@ ], "parameters": { "pageSize": { - "description": "The number of results to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListResourceValueConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListResourceValueConfigs` must match the call that provided the page token. page_size can be specified, and the new page_size will be used.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of resource value configs. Its format is `organizations/[organization_id]`", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -3141,7 +2962,7 @@ ] }, "patch": { - "description": "Updates an existing ResourceValueConfigs with new rules.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/resourceValueConfigs/{resourceValueConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.resourceValueConfigs.patch", @@ -3150,14 +2971,12 @@ ], "parameters": { "name": { - "description": "Name for the resource value configuration", "location": "path", "pattern": "^organizations/[^/]+/resourceValueConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -3181,7 +3000,7 @@ "customModules": { "methods": { "create": { - "description": "Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the given CRM parent, and also creates inherited SecurityHealthAnalyticsCustomModules for all CRM descendants of the given parent. These modules are enabled by default.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules", "httpMethod": "POST", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.create", @@ -3190,7 +3009,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the new custom module's parent. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -3209,7 +3027,7 @@ ] }, "delete": { - "description": "Deletes the specified SecurityHealthAnalyticsCustomModule and all of its descendants in the CRM hierarchy. This method is only supported for resident custom modules.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.delete", @@ -3218,7 +3036,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to delete. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, @@ -3234,7 +3051,7 @@ ] }, "get": { - "description": "Retrieves a SecurityHealthAnalyticsCustomModule.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.get", @@ -3243,7 +3060,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to get. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, @@ -3259,7 +3075,7 @@ ] }, "list": { - "description": "Returns a list of all SecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.list", @@ -3268,18 +3084,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -3295,7 +3108,7 @@ ] }, "listDescendant": { - "description": "Returns a list of all resident SecurityHealthAnalyticsCustomModules under the given CRM parent and all of the parent’s CRM descendants.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules:listDescendant", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.listDescendant", @@ -3304,18 +3117,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -3331,7 +3141,7 @@ ] }, "patch": { - "description": "Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask. Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of \"inherited\"). Updating the display name and custom config of a module is supported on resident modules only.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.patch", @@ -3340,14 +3150,12 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}\" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits.", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -3365,7 +3173,7 @@ ] }, "simulate": { - "description": "Simulates a given SecurityHealthAnalyticsCustomModule and Resource.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/customModules:simulate", "httpMethod": "POST", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.customModules.simulate", @@ -3374,7 +3182,6 @@ ], "parameters": { "parent": { - "description": "Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id}`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -3397,7 +3204,7 @@ "effectiveCustomModules": { "methods": { "get": { - "description": "Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/effectiveCustomModules/{effectiveCustomModulesId}", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.effectiveCustomModules.get", @@ -3406,7 +3213,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the effective custom module to get. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings/effectiveCustomModules/[^/]+$", "required": true, @@ -3422,7 +3228,7 @@ ] }, "list": { - "description": "Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/securityHealthAnalyticsSettings/effectiveCustomModules", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.effectiveCustomModules.list", @@ -3431,18 +3237,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list effective custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -3464,7 +3267,7 @@ "simulations": { "methods": { "get": { - "description": "Get the simulation by name or the latest simulation for the given organization.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.get", @@ -3473,7 +3276,6 @@ ], "parameters": { "name": { - "description": "Required. The organization name or simulation name of this simulation Valid format: `organizations/{organization}/simulations/latest` `organizations/{organization}/simulations/{simulation}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+$", "required": true, @@ -3495,7 +3297,7 @@ "attackPaths": { "methods": { "list": { - "description": "Lists the attack paths for a set of simulation results or valued resources and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}/attackExposureResults/{attackExposureResultsId}/attackPaths", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.attackExposureResults.attackPaths.list", @@ -3504,23 +3306,19 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports =", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list attack paths. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}` `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+/attackExposureResults/[^/]+$", "required": true, @@ -3540,7 +3338,7 @@ "valuedResources": { "methods": { "list": { - "description": "Lists the valued resources for a set of simulation results and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}/attackExposureResults/{attackExposureResultsId}/valuedResources", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.attackExposureResults.valuedResources.list", @@ -3549,28 +3347,23 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports =", "location": "query", "type": "string" }, "orderBy": { - "description": "Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list valued resources. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+/attackExposureResults/[^/]+$", "required": true, @@ -3592,7 +3385,7 @@ "attackPaths": { "methods": { "list": { - "description": "Lists the attack paths for a set of simulation results or valued resources and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}/attackPaths", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.attackPaths.list", @@ -3601,23 +3394,19 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports =", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list attack paths. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}` `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+$", "required": true, @@ -3637,7 +3426,7 @@ "valuedResources": { "methods": { "get": { - "description": "Get the valued resource by name", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}/valuedResources/{valuedResourcesId}", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.valuedResources.get", @@ -3646,7 +3435,6 @@ ], "parameters": { "name": { - "description": "Required. The name of this valued resource Valid format: `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+/valuedResources/[^/]+$", "required": true, @@ -3662,7 +3450,7 @@ ] }, "list": { - "description": "Lists the valued resources for a set of simulation results and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}/valuedResources", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.valuedResources.list", @@ -3671,28 +3459,23 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports =", "location": "query", "type": "string" }, "orderBy": { - "description": "Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list valued resources. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+$", "required": true, @@ -3712,7 +3495,7 @@ "attackPaths": { "methods": { "list": { - "description": "Lists the attack paths for a set of simulation results or valued resources and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/simulations/{simulationsId}/valuedResources/{valuedResourcesId}/attackPaths", "httpMethod": "GET", "id": "securitycenter.organizations.simulations.valuedResources.attackPaths.list", @@ -3721,23 +3504,19 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports =", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list attack paths. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}` `organizations/{organization}/simulations/{simulation}/valuedResources/{valued_resource}`", "location": "path", "pattern": "^organizations/[^/]+/simulations/[^/]+/valuedResources/[^/]+$", "required": true, @@ -3761,7 +3540,7 @@ "sources": { "methods": { "create": { - "description": "Creates a source.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources", "httpMethod": "POST", "id": "securitycenter.organizations.sources.create", @@ -3770,7 +3549,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the new source's parent. Its format should be `organizations/[organization_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -3789,7 +3567,7 @@ ] }, "get": { - "description": "Gets a source.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}", "httpMethod": "GET", "id": "securitycenter.organizations.sources.get", @@ -3798,7 +3576,6 @@ ], "parameters": { "name": { - "description": "Required. Relative resource name of the source. Its format is `organizations/[organization_id]/source/[source_id]`.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -3814,7 +3591,7 @@ ] }, "getIamPolicy": { - "description": "Gets the access control policy on the specified Source.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}:getIamPolicy", "httpMethod": "POST", "id": "securitycenter.organizations.sources.getIamPolicy", @@ -3823,7 +3600,6 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -3842,7 +3618,7 @@ ] }, "list": { - "description": "Lists all sources belonging to an organization.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources", "httpMethod": "GET", "id": "securitycenter.organizations.sources.list", @@ -3851,18 +3627,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -3878,7 +3651,7 @@ ] }, "patch": { - "description": "Updates a source.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.patch", @@ -3887,14 +3660,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}\"", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the source resource. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -3912,7 +3683,7 @@ ] }, "setIamPolicy": { - "description": "Sets the access control policy on the specified Source.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}:setIamPolicy", "httpMethod": "POST", "id": "securitycenter.organizations.sources.setIamPolicy", @@ -3921,7 +3692,6 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -3940,7 +3710,7 @@ ] }, "testIamPermissions": { - "description": "Returns the permissions that a caller has on the specified source.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}:testIamPermissions", "httpMethod": "POST", "id": "securitycenter.organizations.sources.testIamPermissions", @@ -3949,7 +3719,6 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -3972,7 +3741,7 @@ "findings": { "methods": { "create": { - "description": "Creates a finding. The corresponding source must exist for finding creation to succeed.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.create", @@ -3981,12 +3750,10 @@ ], "parameters": { "findingId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new finding's parent. Its format should be `organizations/[organization_id]/sources/[source_id]`.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -4005,7 +3772,7 @@ ] }, "group": { - "description": "Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings, /v1/folders/{folder_id}/sources/-/findings, /v1/projects/{project_id}/sources/-/findings", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings:group", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.group", @@ -4014,7 +3781,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-`, or `projects/{project_id}/sources/-`", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -4033,7 +3799,7 @@ ] }, "list": { - "description": "Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings", "httpMethod": "GET", "id": "securitycenter.organizations.sources.findings.list", @@ -4043,40 +3809,33 @@ "parameters": { "compareDuration": { "deprecated": true, - "description": "When compare_duration is set, the ListFindingsResult's \"state_change\" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible \"state_change\" values when compare_duration is specified: * \"CHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * \"UNCHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * \"ADDED\": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * \"REMOVED\": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all findings present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = \"2019-06-10T16:07:18-07:00\"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : \"\"` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:`", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,source_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,source_properties.a_property\" and \" name desc , source_properties.a_property \" are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id}/sources/-`, `folders/{folder_id}/sources/-` or `projects/{projects_id}/sources/-`", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -4084,7 +3843,6 @@ }, "readTime": { "deprecated": true, - "description": "Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -4099,7 +3857,7 @@ ] }, "patch": { - "description": "Creates or updates a finding. The corresponding source must exist for a finding creation to succeed.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.findings.patch", @@ -4108,14 +3866,12 @@ ], "parameters": { "name": { - "description": "The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\", \"projects/{project_id}/sources/{source_id}/findings/{finding_id}\".", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using \"source_properties.\" in the field mask.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4133,7 +3889,7 @@ ] }, "setMute": { - "description": "Updates the mute state of a finding.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}:setMute", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.setMute", @@ -4142,7 +3898,6 @@ ], "parameters": { "name": { - "description": "Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, `projects/{project_id}/sources/{source_id}/findings/{finding_id}`.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -4161,7 +3916,7 @@ ] }, "setState": { - "description": "Updates the state of a finding.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}:setState", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.setState", @@ -4170,7 +3925,6 @@ ], "parameters": { "name": { - "description": "Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, `projects/{project_id}/sources/{source_id}/findings/{finding_id}`.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -4189,7 +3943,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.findings.updateSecurityMarks", @@ -4198,20 +3952,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to \"marks\", all marks will be replaced. Individual marks can be updated using \"marks.\".", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4233,7 +3984,7 @@ "externalSystems": { "methods": { "patch": { - "description": "Updates external system. This is for a given finding.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}/externalSystems/{externalSystemsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.findings.externalSystems.patch", @@ -4242,14 +3993,12 @@ ], "parameters": { "name": { - "description": "Full resource name of the external system, for example: \"organizations/1234/sources/5678/findings/123456/externalSystems/jira\", \"folders/1234/sources/5678/findings/123456/externalSystems/jira\", \"projects/1234/sources/5678/findings/123456/externalSystems/jira\"", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+/externalSystems/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4275,7 +4024,7 @@ "valuedResources": { "methods": { "list": { - "description": "Lists the valued resources for a set of simulation results and filter.", + "description": "", "flatPath": "v1/organizations/{organizationsId}/valuedResources", "httpMethod": "GET", "id": "securitycenter.organizations.valuedResources.list", @@ -4284,28 +4033,23 @@ ], "parameters": { "filter": { - "description": "The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports =", "location": "query", "type": "string" }, "orderBy": { - "description": "Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list valued resources. Valid formats: `organizations/{organization}`, `organizations/{organization}/simulations/{simulation}` `organizations/{organization}/simulations/{simulation}/attackExposureResults/{attack_exposure_result_v2}`", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -4330,7 +4074,7 @@ "methods": { "group": { "deprecated": true, - "description": "Filters an organization's assets and groups them by their specified properties.", + "description": "", "flatPath": "v1/projects/{projectsId}/assets:group", "httpMethod": "POST", "id": "securitycenter.projects.assets.group", @@ -4339,7 +4083,6 @@ ], "parameters": { "parent": { - "description": "Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -4359,7 +4102,7 @@ }, "list": { "deprecated": true, - "description": "Lists an organization's assets.", + "description": "", "flatPath": "v1/projects/{projectsId}/assets", "httpMethod": "GET", "id": "securitycenter.projects.assets.list", @@ -4368,47 +4111,39 @@ ], "parameters": { "compareDuration": { - "description": "When compare_duration is set, the ListAssetsResult's \"state_change\" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible \"state_change\" values when compare_duration is specified: * \"ADDED\": indicates that the asset was not present at the start of compare_duration, but present at read_time. * \"REMOVED\": indicates that the asset was present at the start of compare_duration, but not present at read_time. * \"ACTIVE\": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all assets present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = \"2019-06-10T16:07:18-07:00\"` `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = \"2019-06-10T16:07:18-07:00\"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : \"\"`", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,resource_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,resource_properties.a_property\" and \" name desc , resource_properties.a_property \" are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -4423,7 +4158,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1/projects/{projectsId}/assets/{assetsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.projects.assets.updateSecurityMarks", @@ -4432,20 +4167,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^projects/[^/]+/assets/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to \"marks\", all marks will be replaced. Individual marks can be updated using \"marks.\".", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4467,7 +4199,7 @@ "bigQueryExports": { "methods": { "create": { - "description": "Creates a BigQuery export.", + "description": "", "flatPath": "v1/projects/{projectsId}/bigQueryExports", "httpMethod": "POST", "id": "securitycenter.projects.bigQueryExports.create", @@ -4476,12 +4208,10 @@ ], "parameters": { "bigQueryExportId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -4500,7 +4230,7 @@ ] }, "delete": { - "description": "Deletes an existing BigQuery export.", + "description": "", "flatPath": "v1/projects/{projectsId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "DELETE", "id": "securitycenter.projects.bigQueryExports.delete", @@ -4509,7 +4239,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the BigQuery export to delete. Its format is `organizations/{organization}/bigQueryExports/{export_id}`, `folders/{folder}/bigQueryExports/{export_id}`, or `projects/{project}/bigQueryExports/{export_id}`", "location": "path", "pattern": "^projects/[^/]+/bigQueryExports/[^/]+$", "required": true, @@ -4525,7 +4254,7 @@ ] }, "get": { - "description": "Gets a BigQuery export.", + "description": "", "flatPath": "v1/projects/{projectsId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "GET", "id": "securitycenter.projects.bigQueryExports.get", @@ -4534,7 +4263,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization}/bigQueryExports/{export_id}`, `folders/{folder}/bigQueryExports/{export_id}`, or `projects/{project}/bigQueryExports/{export_id}`", "location": "path", "pattern": "^projects/[^/]+/bigQueryExports/[^/]+$", "required": true, @@ -4550,7 +4278,7 @@ ] }, "list": { - "description": "Lists BigQuery exports. Note that when requesting BigQuery exports at a given level all exports under that level are also returned e.g. if requesting BigQuery exports under a folder, then all BigQuery exports immediately under the folder plus the ones created under the projects within the folder are returned.", + "description": "", "flatPath": "v1/projects/{projectsId}/bigQueryExports", "httpMethod": "GET", "id": "securitycenter.projects.bigQueryExports.list", @@ -4559,18 +4287,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -4586,7 +4311,7 @@ ] }, "patch": { - "description": "Updates a BigQuery export.", + "description": "", "flatPath": "v1/projects/{projectsId}/bigQueryExports/{bigQueryExportsId}", "httpMethod": "PATCH", "id": "securitycenter.projects.bigQueryExports.patch", @@ -4595,14 +4320,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: \"organizations/{organization_id}/bigQueryExports/{export_id}\" Example format: \"folders/{folder_id}/bigQueryExports/{export_id}\" Example format: \"projects/{project_id}/bigQueryExports/{export_id}\" This field is provided in responses, and is ignored when provided in create requests.", "location": "path", "pattern": "^projects/[^/]+/bigQueryExports/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4624,7 +4347,7 @@ "eventThreatDetectionSettings": { "methods": { "validateCustomModule": { - "description": "Validates the given Event Threat Detection custom module.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings:validateCustomModule", "httpMethod": "POST", "id": "securitycenter.projects.eventThreatDetectionSettings.validateCustomModule", @@ -4633,7 +4356,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -4656,7 +4378,7 @@ "customModules": { "methods": { "create": { - "description": "Creates a resident Event Threat Detection custom module at the scope of the given Resource Manager parent, and also creates inherited custom modules for all descendants of the given parent. These modules are enabled by default.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/customModules", "httpMethod": "POST", "id": "securitycenter.projects.eventThreatDetectionSettings.customModules.create", @@ -4665,7 +4387,6 @@ ], "parameters": { "parent": { - "description": "Required. The new custom module's parent. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -4684,7 +4405,7 @@ ] }, "delete": { - "description": "Deletes the specified Event Threat Detection custom module and all of its descendants in the Resource Manager hierarchy. This method is only supported for resident custom modules.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "DELETE", "id": "securitycenter.projects.eventThreatDetectionSettings.customModules.delete", @@ -4693,7 +4414,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to delete. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, @@ -4709,7 +4429,7 @@ ] }, "get": { - "description": "Gets an Event Threat Detection custom module.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.customModules.get", @@ -4718,7 +4438,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to get. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, @@ -4734,7 +4453,7 @@ ] }, "list": { - "description": "Lists all Event Threat Detection custom modules for the given Resource Manager parent. This includes resident modules defined at the scope of the parent along with modules inherited from ancestors.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/customModules", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.customModules.list", @@ -4743,18 +4462,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -4770,7 +4486,7 @@ ] }, "listDescendant": { - "description": "Lists all resident Event Threat Detection custom modules under the given Resource Manager parent and its descendants.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/customModules:listDescendant", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.customModules.listDescendant", @@ -4779,18 +4495,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -4806,7 +4519,7 @@ ] }, "patch": { - "description": "Updates the Event Threat Detection custom module with the given name based on the given update mask. Updating the enablement state is supported for both resident and inherited modules (though resident modules cannot have an enablement state of \"inherited\"). Updating the display name or configuration of a module is supported for resident modules only. The type of a module cannot be changed.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/customModules/{customModulesId}", "httpMethod": "PATCH", "id": "securitycenter.projects.eventThreatDetectionSettings.customModules.patch", @@ -4815,14 +4528,12 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings/customModules/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -4844,7 +4555,7 @@ "effectiveCustomModules": { "methods": { "get": { - "description": "Gets an effective Event Threat Detection custom module at the given level.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/effectiveCustomModules/{effectiveCustomModulesId}", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.effectiveCustomModules.get", @@ -4853,7 +4564,6 @@ ], "parameters": { "name": { - "description": "Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{module}`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings/effectiveCustomModules/[^/]+$", "required": true, @@ -4869,7 +4579,7 @@ ] }, "list": { - "description": "Lists all effective Event Threat Detection custom modules for the given parent. This includes resident modules defined at the scope of the parent along with modules inherited from its ancestors.", + "description": "", "flatPath": "v1/projects/{projectsId}/eventThreatDetectionSettings/effectiveCustomModules", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.effectiveCustomModules.list", @@ -4878,18 +4588,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization}/eventThreatDetectionSettings`. * `folders/{folder}/eventThreatDetectionSettings`. * `projects/{project}/eventThreatDetectionSettings`.", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -4911,7 +4618,7 @@ "findings": { "methods": { "bulkMute": { - "description": "Kicks off an LRO to bulk mute findings for a parent based on a filter. The parent can be either an organization, folder or project. The findings matched by the filter will be muted after the LRO is done.", + "description": "", "flatPath": "v1/projects/{projectsId}/findings:bulkMute", "httpMethod": "POST", "id": "securitycenter.projects.findings.bulkMute", @@ -4920,7 +4627,6 @@ ], "parameters": { "parent": { - "description": "Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -4945,7 +4651,7 @@ "muteConfigs": { "methods": { "delete": { - "description": "Deletes an existing mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.projects.locations.muteConfigs.delete", @@ -4954,7 +4660,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to delete. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -4970,7 +4675,7 @@ ] }, "get": { - "description": "Gets a mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "GET", "id": "securitycenter.projects.locations.muteConfigs.get", @@ -4979,7 +4684,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to retrieve. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -4995,7 +4699,7 @@ ] }, "patch": { - "description": "Updates a mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/muteConfigs/{muteConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.projects.locations.muteConfigs.patch", @@ -5004,14 +4708,12 @@ ], "parameters": { "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/muteConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5035,7 +4737,7 @@ "muteConfigs": { "methods": { "create": { - "description": "Creates a mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/muteConfigs", "httpMethod": "POST", "id": "securitycenter.projects.muteConfigs.create", @@ -5044,12 +4746,10 @@ ], "parameters": { "muteConfigId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -5068,7 +4768,7 @@ ] }, "delete": { - "description": "Deletes an existing mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/muteConfigs/{muteConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.projects.muteConfigs.delete", @@ -5077,7 +4777,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to delete. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^projects/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -5093,7 +4792,7 @@ ] }, "get": { - "description": "Gets a mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/muteConfigs/{muteConfigsId}", "httpMethod": "GET", "id": "securitycenter.projects.muteConfigs.get", @@ -5102,7 +4801,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the mute config to retrieve. Its format is `organizations/{organization}/muteConfigs/{config_id}`, `folders/{folder}/muteConfigs/{config_id}`, `projects/{project}/muteConfigs/{config_id}`, `organizations/{organization}/locations/global/muteConfigs/{config_id}`, `folders/{folder}/locations/global/muteConfigs/{config_id}`, or `projects/{project}/locations/global/muteConfigs/{config_id}`.", "location": "path", "pattern": "^projects/[^/]+/muteConfigs/[^/]+$", "required": true, @@ -5118,7 +4816,7 @@ ] }, "list": { - "description": "Lists mute configs.", + "description": "", "flatPath": "v1/projects/{projectsId}/muteConfigs", "httpMethod": "GET", "id": "securitycenter.projects.muteConfigs.list", @@ -5127,18 +4825,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -5154,7 +4849,7 @@ ] }, "patch": { - "description": "Updates a mute config.", + "description": "", "flatPath": "v1/projects/{projectsId}/muteConfigs/{muteConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.projects.muteConfigs.patch", @@ -5163,14 +4858,12 @@ ], "parameters": { "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "location": "path", "pattern": "^projects/[^/]+/muteConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5192,7 +4885,7 @@ "notificationConfigs": { "methods": { "create": { - "description": "Creates a notification config.", + "description": "", "flatPath": "v1/projects/{projectsId}/notificationConfigs", "httpMethod": "POST", "id": "securitycenter.projects.notificationConfigs.create", @@ -5201,12 +4894,10 @@ ], "parameters": { "configId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -5225,7 +4916,7 @@ ] }, "delete": { - "description": "Deletes a notification config.", + "description": "", "flatPath": "v1/projects/{projectsId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "DELETE", "id": "securitycenter.projects.notificationConfigs.delete", @@ -5234,7 +4925,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`.", "location": "path", "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -5250,7 +4940,7 @@ ] }, "get": { - "description": "Gets a notification config.", + "description": "", "flatPath": "v1/projects/{projectsId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "GET", "id": "securitycenter.projects.notificationConfigs.get", @@ -5259,7 +4949,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`.", "location": "path", "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", "required": true, @@ -5275,7 +4964,7 @@ ] }, "list": { - "description": "Lists notification configs.", + "description": "", "flatPath": "v1/projects/{projectsId}/notificationConfigs", "httpMethod": "GET", "id": "securitycenter.projects.notificationConfigs.list", @@ -5284,18 +4973,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. The name of the parent in which to list the notification configurations. Its format is \"organizations/[organization_id]\", \"folders/[folder_id]\", or \"projects/[project_id]\".", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -5311,7 +4997,7 @@ ] }, "patch": { - "description": " Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter", + "description": "", "flatPath": "v1/projects/{projectsId}/notificationConfigs/{notificationConfigsId}", "httpMethod": "PATCH", "id": "securitycenter.projects.notificationConfigs.patch", @@ -5320,14 +5006,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "location": "path", "pattern": "^projects/[^/]+/notificationConfigs/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the notification config. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5351,7 +5035,7 @@ "customModules": { "methods": { "create": { - "description": "Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the given CRM parent, and also creates inherited SecurityHealthAnalyticsCustomModules for all CRM descendants of the given parent. These modules are enabled by default.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules", "httpMethod": "POST", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.create", @@ -5360,7 +5044,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the new custom module's parent. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -5379,7 +5062,7 @@ ] }, "delete": { - "description": "Deletes the specified SecurityHealthAnalyticsCustomModule and all of its descendants in the CRM hierarchy. This method is only supported for resident custom modules.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "DELETE", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.delete", @@ -5388,7 +5071,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to delete. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, @@ -5404,7 +5086,7 @@ ] }, "get": { - "description": "Retrieves a SecurityHealthAnalyticsCustomModule.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.get", @@ -5413,7 +5095,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the custom module to get. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, @@ -5429,7 +5110,7 @@ ] }, "list": { - "description": "Returns a list of all SecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.list", @@ -5438,18 +5119,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -5465,7 +5143,7 @@ ] }, "listDescendant": { - "description": "Returns a list of all resident SecurityHealthAnalyticsCustomModules under the given CRM parent and all of the parent’s CRM descendants.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules:listDescendant", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.listDescendant", @@ -5474,18 +5152,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -5501,7 +5176,7 @@ ] }, "patch": { - "description": "Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask. Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of \"inherited\"). Updating the display name and custom config of a module is supported on resident modules only.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules/{customModulesId}", "httpMethod": "PATCH", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.patch", @@ -5510,14 +5185,12 @@ ], "parameters": { "name": { - "description": "Immutable. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}\" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits.", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings/customModules/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5535,7 +5208,7 @@ ] }, "simulate": { - "description": "Simulates a given SecurityHealthAnalyticsCustomModule and Resource.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/customModules:simulate", "httpMethod": "POST", "id": "securitycenter.projects.securityHealthAnalyticsSettings.customModules.simulate", @@ -5544,7 +5217,6 @@ ], "parameters": { "parent": { - "description": "Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id}`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -5567,7 +5239,7 @@ "effectiveCustomModules": { "methods": { "get": { - "description": "Retrieves an EffectiveSecurityHealthAnalyticsCustomModule.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/effectiveCustomModules/{effectiveCustomModulesId}", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.effectiveCustomModules.get", @@ -5576,7 +5248,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the effective custom module to get. Its format is `organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, `folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`, or `projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings/effectiveCustomModules/[^/]+$", "required": true, @@ -5592,7 +5263,7 @@ ] }, "list": { - "description": "Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors.", + "description": "", "flatPath": "v1/projects/{projectsId}/securityHealthAnalyticsSettings/effectiveCustomModules", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.effectiveCustomModules.list", @@ -5601,18 +5272,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last call indicating a continuation", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of parent to list effective custom modules. Its format is `organizations/{organization}/securityHealthAnalyticsSettings`, `folders/{folder}/securityHealthAnalyticsSettings`, or `projects/{project}/securityHealthAnalyticsSettings`", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -5634,7 +5302,7 @@ "sources": { "methods": { "list": { - "description": "Lists all sources belonging to an organization.", + "description": "", "flatPath": "v1/projects/{projectsId}/sources", "httpMethod": "GET", "id": "securitycenter.projects.sources.list", @@ -5643,18 +5311,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`.", "location": "path", "pattern": "^projects/[^/]+$", "required": true, @@ -5674,7 +5339,7 @@ "findings": { "methods": { "group": { - "description": "Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings, /v1/folders/{folder_id}/sources/-/findings, /v1/projects/{project_id}/sources/-/findings", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings:group", "httpMethod": "POST", "id": "securitycenter.projects.sources.findings.group", @@ -5683,7 +5348,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-`, or `projects/{project_id}/sources/-`", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+$", "required": true, @@ -5702,7 +5366,7 @@ ] }, "list": { - "description": "Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id}/sources/-/findings", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings", "httpMethod": "GET", "id": "securitycenter.projects.sources.findings.list", @@ -5712,40 +5376,33 @@ "parameters": { "compareDuration": { "deprecated": true, - "description": "When compare_duration is set, the ListFindingsResult's \"state_change\" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible \"state_change\" values when compare_duration is specified: * \"CHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * \"UNCHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * \"ADDED\": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * \"REMOVED\": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all findings present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = \"2019-06-10T16:07:18-07:00\"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : \"\"` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:`", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,source_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,source_properties.a_property\" and \" name desc , source_properties.a_property \" are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id}/sources/-`, `folders/{folder_id}/sources/-` or `projects/{projects_id}/sources/-`", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+$", "required": true, @@ -5753,7 +5410,6 @@ }, "readTime": { "deprecated": true, - "description": "Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -5768,7 +5424,7 @@ ] }, "patch": { - "description": "Creates or updates a finding. The corresponding source must exist for a finding creation to succeed.", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings/{findingsId}", "httpMethod": "PATCH", "id": "securitycenter.projects.sources.findings.patch", @@ -5777,14 +5433,12 @@ ], "parameters": { "name": { - "description": "The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\", \"projects/{project_id}/sources/{source_id}/findings/{finding_id}\".", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using \"source_properties.\" in the field mask.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5802,7 +5456,7 @@ ] }, "setMute": { - "description": "Updates the mute state of a finding.", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings/{findingsId}:setMute", "httpMethod": "POST", "id": "securitycenter.projects.sources.findings.setMute", @@ -5811,7 +5465,6 @@ ], "parameters": { "name": { - "description": "Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, `projects/{project_id}/sources/{source_id}/findings/{finding_id}`.", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -5830,7 +5483,7 @@ ] }, "setState": { - "description": "Updates the state of a finding.", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings/{findingsId}:setState", "httpMethod": "POST", "id": "securitycenter.projects.sources.findings.setState", @@ -5839,7 +5492,6 @@ ], "parameters": { "name": { - "description": "Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}`, `folders/{folder_id}/sources/{source_id}/findings/{finding_id}`, `projects/{project_id}/sources/{source_id}/findings/{finding_id}`.", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -5858,7 +5510,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings/{findingsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.projects.sources.findings.updateSecurityMarks", @@ -5867,20 +5519,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+/findings/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to \"marks\", all marks will be replaced. Individual marks can be updated using \"marks.\".", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5902,7 +5551,7 @@ "externalSystems": { "methods": { "patch": { - "description": "Updates external system. This is for a given finding.", + "description": "", "flatPath": "v1/projects/{projectsId}/sources/{sourcesId}/findings/{findingsId}/externalSystems/{externalSystemsId}", "httpMethod": "PATCH", "id": "securitycenter.projects.sources.findings.externalSystems.patch", @@ -5911,14 +5560,12 @@ ], "parameters": { "name": { - "description": "Full resource name of the external system, for example: \"organizations/1234/sources/5678/findings/123456/externalSystems/jira\", \"folders/1234/sources/5678/findings/123456/externalSystems/jira\", \"projects/1234/sources/5678/findings/123456/externalSystems/jira\"", "location": "path", "pattern": "^projects/[^/]+/sources/[^/]+/findings/[^/]+/externalSystems/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -5944,104 +5591,82 @@ } } }, - "revision": "20260424", + "revision": "20260526", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { - "description": "Represents an access event.", "id": "Access", "properties": { "callerIp": { - "description": "Caller's IP address, such as \"1.1.1.1\".", "type": "string" }, "callerIpGeo": { - "$ref": "Geolocation", - "description": "The caller IP's geolocation, which identifies where the call came from." + "$ref": "Geolocation" }, "methodName": { - "description": "The method that the service account called, e.g. \"SetIamPolicy\".", "type": "string" }, "principalEmail": { - "description": "Associated email, such as \"foo@google.com\". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id).", "type": "string" }, "principalSubject": { - "description": "A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name}[{subject}]`.", "type": "string" }, "serviceAccountDelegationInfo": { - "description": "The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events.", "items": { "$ref": "ServiceAccountDelegationInfo" }, "type": "array" }, "serviceAccountKeyName": { - "description": "The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: \"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\". ", "type": "string" }, "serviceName": { - "description": "This is the API service that the service account made a call to, e.g. \"iam.googleapis.com\"", "type": "string" }, "userAgent": { - "description": "The caller's user agent string associated with the finding.", "type": "string" }, "userAgentFamily": { - "description": "Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application.", "type": "string" }, "userName": { - "description": "A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username.", "type": "string" } }, "type": "object" }, "AccessReview": { - "description": "Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding.", "id": "AccessReview", "properties": { "group": { - "description": "The API group of the resource. \"*\" means all.", "type": "string" }, "name": { - "description": "The name of the resource being requested. Empty means all.", "type": "string" }, "ns": { - "description": "Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by \"\" (empty).", "type": "string" }, "resource": { - "description": "The optional resource type requested. \"*\" means all.", "type": "string" }, "subresource": { - "description": "The optional subresource type.", "type": "string" }, "verb": { - "description": "A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. \"*\" means all.", "type": "string" }, "version": { - "description": "The API version of the resource. \"*\" means all.", "type": "string" } }, "type": "object" }, "AdaptiveProtection": { - "description": "Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).", "id": "AdaptiveProtection", "properties": { "confidence": { - "description": "A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation.", "format": "double", "type": "number" } @@ -6049,48 +5674,39 @@ "type": "object" }, "AdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "AdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "AdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "AdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "AdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "AdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "AffectedResources": { - "description": "Details about resources affected by this finding.", "id": "AffectedResources", "properties": { "count": { - "description": "The count of resources affected by the finding.", "format": "int64", "type": "string" } @@ -6098,20 +5714,16 @@ "type": "object" }, "AgentDataAccessEvent": { - "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", "id": "AgentDataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -6119,26 +5731,23 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalSubject": { - "description": "The agent principal that accessed the data.", "type": "string" } }, "type": "object" }, "AiModel": { - "description": "Contains information about the AI model associated with the finding.", "id": "AiModel", "properties": { "deploymentPlatform": { - "description": "The platform on which the model is deployed.", "enum": [ "DEPLOYMENT_PLATFORM_UNSPECIFIED", "VERTEX_AI", @@ -6147,51 +5756,42 @@ "FINE_TUNED_MODEL" ], "enumDescriptions": [ - "Unspecified deployment platform.", - "Vertex AI.", - "Google Kubernetes Engine.", - "Google Compute Engine.", - "Fine tuned model." + "", + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The user defined display name of model. Ex. baseline-classification-model", "type": "string" }, "domain": { - "description": "The domain of the model, for example, “image-classification”.", "type": "string" }, "library": { - "description": "The name of the model library, for example, “transformers”.", "type": "string" }, "location": { - "description": "The region in which the model is used, for example, “us-central1”.", "type": "string" }, "name": { - "description": "The name of the AI model, for example, \"gemini:1.0.0\".", "type": "string" }, "publisher": { - "description": "The publisher of the model, for example, “google” or “nvidia”.", "type": "string" }, "usageCategory": { - "description": "The purpose of the model, for example, \"Inteference\" or \"Training\".", "type": "string" } }, "type": "object" }, "Allowed": { - "description": "Allowed IP rule.", "id": "Allowed", "properties": { "ipRules": { - "description": "Optional. Optional list of allowed IP rules.", "items": { "$ref": "IpRule" }, @@ -6201,59 +5801,49 @@ "type": "object" }, "Application": { - "description": "Represents an application associated with a finding.", "id": "Application", "properties": { "baseUri": { - "description": "The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`.", "type": "string" }, "fullUri": { - "description": "The full URI with payload that can be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`.", "type": "string" } }, "type": "object" }, "ArtifactGuardPolicies": { - "description": "Represents the result of evaluating artifact guard policies.", "id": "ArtifactGuardPolicies", "properties": { "failingPolicies": { - "description": "A list of failing policies.", "items": { "$ref": "ArtifactGuardPolicy" }, "type": "array" }, "resourceId": { - "description": "The ID of the resource that has policies configured for it.", "type": "string" } }, "type": "object" }, "ArtifactGuardPolicy": { - "description": "Represents an artifact guard policy.", "id": "ArtifactGuardPolicy", "properties": { "failureReason": { - "description": "The reason for the policy failure, for example, \"severity=HIGH AND max_vuln_count=2\".", "type": "string" }, "policyId": { - "description": "The ID of the failing policy, for example, \"organizations/3392779/locations/global/policies/prod-policy\".", "type": "string" }, "type": { - "description": "The type of the policy evaluation.", "enum": [ "ARTIFACT_GUARD_POLICY_TYPE_UNSPECIFIED", "VULNERABILITY" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Vulnerability type." + "", + "" ], "type": "string" } @@ -6261,43 +5851,34 @@ "type": "object" }, "Asset": { - "description": "Security Command Center representation of a Google Cloud resource. The Asset is a Security Command Center resource that captures information about a single Google Cloud resource. All modifications to an Asset are only within the context of Security Command Center and don't affect the referenced Google Cloud resource.", "id": "Asset", "properties": { "canonicalName": { - "description": "The canonical name of the resource. It's either \"organizations/{organization_id}/assets/{asset_id}\", \"folders/{folder_id}/assets/{asset_id}\" or \"projects/{project_number}/assets/{asset_id}\", depending on the closest CRM ancestor of the resource.", "type": "string" }, "createTime": { - "description": "The time at which the asset was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "iamPolicy": { - "$ref": "IamPolicy", - "description": "Cloud IAM Policy information associated with the Google Cloud resource described by the Security Command Center asset. This information is managed and defined by the Google Cloud resource and cannot be modified by the user." + "$ref": "IamPolicy" }, "name": { - "description": "The relative resource name of this asset. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/assets/{asset_id}\".", "type": "string" }, "resourceProperties": { "additionalProperties": { "type": "any" }, - "description": "Resource managed properties. These properties are managed and defined by the Google Cloud resource and cannot be modified by the user.", "type": "object" }, "securityCenterProperties": { - "$ref": "SecurityCenterProperties", - "description": "Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user." + "$ref": "SecurityCenterProperties" }, "securityMarks": { - "$ref": "SecurityMarks", - "description": "User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the asset." + "$ref": "SecurityMarks" }, "updateTime": { - "description": "The time at which the asset was last updated or added in Cloud SCC.", "format": "google-datetime", "type": "string" } @@ -6305,32 +5886,28 @@ "type": "object" }, "AssetDiscoveryConfig": { - "description": "The configuration used for Asset Discovery runs.", "id": "AssetDiscoveryConfig", "properties": { "folderIds": { - "description": "The folder ids to use for filtering asset discovery. It consists of only digits, e.g., 756619654966.", "items": { "type": "string" }, "type": "array" }, "inclusionMode": { - "description": "The mode to use for filtering asset discovery.", "enum": [ "INCLUSION_MODE_UNSPECIFIED", "INCLUDE_ONLY", "EXCLUDE" ], "enumDescriptions": [ - "Unspecified. Setting the mode with this value will disable inclusion/exclusion filtering for Asset Discovery.", - "Asset Discovery will capture only the resources within the projects specified. All other resources will be ignored.", - "Asset Discovery will ignore all resources under the projects specified. All other resources will be retrieved." + "", + "", + "" ], "type": "string" }, "projectIds": { - "description": "The project ids to use for filtering asset discovery.", "items": { "type": "string" }, @@ -6340,32 +5917,26 @@ "type": "object" }, "Attack": { - "description": "Information about DDoS attack volume and classification.", "id": "Attack", "properties": { "classification": { - "description": "Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.", "type": "string" }, "volumeBps": { "deprecated": true, - "description": "Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead.", "format": "int32", "type": "integer" }, "volumeBpsLong": { - "description": "Total BPS (bytes per second) volume of attack.", "format": "int64", "type": "string" }, "volumePps": { "deprecated": true, - "description": "Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead.", "format": "int32", "type": "integer" }, "volumePpsLong": { - "description": "Total PPS (packets per second) volume of attack.", "format": "int64", "type": "string" } @@ -6373,49 +5944,41 @@ "type": "object" }, "AttackExposure": { - "description": "An attack exposure contains the results of an attack path simulation run.", "id": "AttackExposure", "properties": { "attackExposureResult": { - "description": "The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789`", "type": "string" }, "exposedHighValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedLowValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedMediumValueResourcesCount": { - "description": "The number of medium value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "latestCalculationTime": { - "description": "The most recent time the attack exposure was updated on this finding.", "format": "google-datetime", "type": "string" }, "score": { - "description": "A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate.", "format": "double", "type": "number" }, "state": { - "description": "What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not.", "enum": [ "STATE_UNSPECIFIED", "CALCULATED", "NOT_CALCULATED" ], "enumDescriptions": [ - "The state is not specified.", - "The attack exposure has been calculated.", - "The attack exposure has not been calculated." + "", + "", + "" ], "type": "string" } @@ -6423,22 +5986,18 @@ "type": "object" }, "AttackPath": { - "description": "A path that an attacker could take to reach an exposed resource.", "id": "AttackPath", "properties": { "edges": { - "description": "A list of the edges between nodes in this attack path.", "items": { "$ref": "AttackPathEdge" }, "type": "array" }, "name": { - "description": "The attack path name, for example, `organizations/12/simulation/34/valuedResources/56/attackPaths/78`", "type": "string" }, "pathNodes": { - "description": "A list of nodes that exist in this attack path.", "items": { "$ref": "AttackPathNode" }, @@ -6448,78 +6007,63 @@ "type": "object" }, "AttackPathEdge": { - "description": "Represents a connection between a source node and a destination node in this attack path.", "id": "AttackPathEdge", "properties": { "destination": { - "description": "The attack node uuid of the destination node.", "type": "string" }, "source": { - "description": "The attack node uuid of the source node.", "type": "string" } }, "type": "object" }, "AttackPathNode": { - "description": "Represents one point that an attacker passes through in this attack path.", "id": "AttackPathNode", "properties": { "associatedFindings": { - "description": "The findings associated with this node in the attack path.", "items": { "$ref": "PathNodeAssociatedFinding" }, "type": "array" }, "attackSteps": { - "description": "A list of attack step nodes that exist in this attack path node.", "items": { "$ref": "AttackStepNode" }, "type": "array" }, "displayName": { - "description": "Human-readable name of this resource.", "type": "string" }, "resource": { - "description": "The name of the resource at this point in the attack path. The format of the name follows the Cloud Asset Inventory [resource name format](https://cloud.google.com/asset-inventory/docs/resource-name-format)", "type": "string" }, "resourceType": { - "description": "The [supported resource type](https://cloud.google.com/asset-inventory/docs/supported-asset-types)", "type": "string" }, "uuid": { - "description": "Unique id of the attack path node.", "type": "string" } }, "type": "object" }, "AttackStepNode": { - "description": "Detailed steps the attack can take between path nodes.", "id": "AttackStepNode", "properties": { "description": { - "description": "Attack step description", "type": "string" }, "displayName": { - "description": "User friendly name of the attack step", "type": "string" }, "labels": { "additionalProperties": { "type": "string" }, - "description": "Attack step labels for metadata", "type": "object" }, "type": { - "description": "Attack step type. Can be either AND, OR or DEFENSE", "enum": [ "NODE_TYPE_UNSPECIFIED", "NODE_TYPE_AND", @@ -6528,52 +6072,45 @@ "NODE_TYPE_ATTACKER" ], "enumDescriptions": [ - "Type not specified", - "Incoming edge joined with AND", - "Incoming edge joined with OR", - "Incoming edge is defense", - "Incoming edge is attacker" + "", + "", + "", + "", + "" ], "type": "string" }, "uuid": { - "description": "Unique ID for one Node", "type": "string" } }, "type": "object" }, "AuditConfig": { - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", "id": "AuditConfig", "properties": { "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", "items": { "$ref": "AuditLogConfig" }, "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" }, "AuditLogConfig": { - "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": "AuditLogConfig", "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", @@ -6581,10 +6118,10 @@ "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" } @@ -6592,34 +6129,27 @@ "type": "object" }, "AwsAccount": { - "description": "An AWS account that is a member of an organization.", "id": "AwsAccount", "properties": { "id": { - "description": "The unique identifier (ID) of the account, containing exactly 12 digits.", "type": "string" }, "name": { - "description": "The friendly name of this account.", "type": "string" } }, "type": "object" }, "AwsMetadata": { - "description": "AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services.", "id": "AwsMetadata", "properties": { "account": { - "$ref": "AwsAccount", - "description": "The AWS account associated with the resource." + "$ref": "AwsAccount" }, "organization": { - "$ref": "AwsOrganization", - "description": "The AWS organization associated with the resource." + "$ref": "AwsOrganization" }, "organizationalUnits": { - "description": "A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level.", "items": { "$ref": "AwsOrganizationalUnit" }, @@ -6629,180 +6159,145 @@ "type": "object" }, "AwsOrganization": { - "description": "An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies.", "id": "AwsOrganization", "properties": { "id": { - "description": "The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires \"o-\" followed by from 10 to 32 lowercase letters or digits.", "type": "string" } }, "type": "object" }, "AwsOrganizationalUnit": { - "description": "An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs.", "id": "AwsOrganizationalUnit", "properties": { "id": { - "description": "The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires \"ou-\" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second \"-\" dash and from 8 to 32 additional lowercase letters or digits. For example, \"ou-ab12-cd34ef56\".", "type": "string" }, "name": { - "description": "The friendly name of the OU.", "type": "string" } }, "type": "object" }, "AzureManagementGroup": { - "description": "Represents an Azure management group.", "id": "AzureManagementGroup", "properties": { "displayName": { - "description": "The display name of the Azure management group.", "type": "string" }, "id": { - "description": "The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`.", "type": "string" } }, "type": "object" }, "AzureMetadata": { - "description": "Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure.", "id": "AzureMetadata", "properties": { "managementGroups": { - "description": "A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level.", "items": { "$ref": "AzureManagementGroup" }, "type": "array" }, "resourceGroup": { - "$ref": "AzureResourceGroup", - "description": "The Azure resource group associated with the resource." + "$ref": "AzureResourceGroup" }, "subscription": { - "$ref": "AzureSubscription", - "description": "The Azure subscription associated with the resource." + "$ref": "AzureSubscription" }, "tenant": { - "$ref": "AzureTenant", - "description": "The Azure Entra tenant associated with the resource." + "$ref": "AzureTenant" } }, "type": "object" }, "AzureResourceGroup": { - "description": "Represents an Azure resource group.", "id": "AzureResourceGroup", "properties": { "id": { - "description": "The ID of the Azure resource group.", "type": "string" }, "name": { - "description": "The name of the Azure resource group. This is not a UUID.", "type": "string" } }, "type": "object" }, "AzureSubscription": { - "description": "Represents an Azure subscription.", "id": "AzureSubscription", "properties": { "displayName": { - "description": "The display name of the Azure subscription.", "type": "string" }, "id": { - "description": "The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`.", "type": "string" } }, "type": "object" }, "AzureTenant": { - "description": "Represents a Microsoft Entra tenant.", "id": "AzureTenant", "properties": { "displayName": { - "description": "The display name of the Azure tenant.", "type": "string" }, "id": { - "description": "The ID of the Microsoft Entra tenant, for example, \"a11aaa11-aa11-1aa1-11aa-1aaa11a\".", "type": "string" } }, "type": "object" }, "BackupDisasterRecovery": { - "description": "Information related to Google Cloud Backup and DR Service findings.", "id": "BackupDisasterRecovery", "properties": { "appliance": { - "description": "The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`.", "type": "string" }, "applications": { - "description": "The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.", "items": { "type": "string" }, "type": "array" }, "backupCreateTime": { - "description": "The timestamp at which the Backup and DR backup was created.", "format": "google-datetime", "type": "string" }, "backupTemplate": { - "description": "The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`.", "type": "string" }, "backupType": { - "description": "The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`.", "type": "string" }, "host": { - "description": "The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`.", "type": "string" }, "policies": { - "description": "The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`.", "items": { "type": "string" }, "type": "array" }, "policyOptions": { - "description": "The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`.", "items": { "type": "string" }, "type": "array" }, "profile": { - "description": "The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`.", "type": "string" }, "storagePool": { - "description": "The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`.", "type": "string" } }, "type": "object" }, "BatchCreateResourceValueConfigsRequest": { - "description": "Request message to create multiple resource value configs", "id": "BatchCreateResourceValueConfigsRequest", "properties": { "requests": { - "description": "Required. The resource value configs to be created.", "items": { "$ref": "CreateResourceValueConfigRequest" }, @@ -6812,11 +6307,9 @@ "type": "object" }, "BatchCreateResourceValueConfigsResponse": { - "description": "Response message for BatchCreateResourceValueConfigs", "id": "BatchCreateResourceValueConfigsResponse", "properties": { "resourceValueConfigs": { - "description": "The resource value configs created", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceValueConfig" }, @@ -6826,62 +6319,52 @@ "type": "object" }, "BigQueryDestination": { - "description": "The destination BigQuery dataset to export findings to.", "id": "BigQueryDestination", "properties": { "dataset": { - "description": "Required. The relative resource name of the destination dataset, in the form projects/{projectId}/datasets/{datasetId}.", "type": "string" } }, "type": "object" }, "Binding": { - "description": "Associates `members`, or principals, with a `role`.", "id": "Binding", "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 principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." + "$ref": "Expr" }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `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. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", "items": { "type": "string" }, "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).", "type": "string" } }, "type": "object" }, "BulkMuteFindingsRequest": { - "description": "Request message for bulk findings update. Note: 1. If multiple bulk update requests match the same resource, the order in which they get executed is not defined. 2. Once a bulk operation is started, there is no way to stop it.", "id": "BulkMuteFindingsRequest", "properties": { "filter": { - "description": "Expression that identifies findings that should be updated. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "muteAnnotation": { "deprecated": true, - "description": "This can be a mute configuration name or any identifier for mute/unmute of findings based on the filter.", "type": "string" }, "muteState": { - "description": "Optional. All findings matching the given filter will have their mute state set to this value. The default value is `MUTED`. Setting this to `UNDEFINED` will clear the mute state on all matching findings.", "enum": [ "MUTE_STATE_UNSPECIFIED", "MUTED", "UNDEFINED" ], "enumDescriptions": [ - "Unused.", - "Matching findings will be muted (default).", - "Matching findings will have their mute state cleared." + "", + "", + "" ], "type": "string" } @@ -6889,11 +6372,9 @@ "type": "object" }, "Chokepoint": { - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).", "id": "Chokepoint", "properties": { "relatedFindings": { - "description": "List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings.", "items": { "type": "string" }, @@ -6903,65 +6384,53 @@ "type": "object" }, "CloudArmor": { - "description": "Fields related to Google Cloud Armor findings.", "id": "CloudArmor", "properties": { "adaptiveProtection": { - "$ref": "AdaptiveProtection", - "description": "Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview)." + "$ref": "AdaptiveProtection" }, "attack": { - "$ref": "Attack", - "description": "Information about DDoS attack volume and classification." + "$ref": "Attack" }, "duration": { - "description": "Duration of attack from the start until the current moment (updated every 5 minutes).", "format": "google-duration", "type": "string" }, "requests": { - "$ref": "Requests", - "description": "Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview)." + "$ref": "Requests" }, "securityPolicy": { - "$ref": "SecurityPolicy", - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding." + "$ref": "SecurityPolicy" }, "threatVector": { - "description": "Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, \"L3_4\" for Layer 3 and Layer 4 DDoS attacks, or \"L_7\" for Layer 7 DDoS attacks.", "type": "string" } }, "type": "object" }, "CloudControl": { - "description": "CloudControl associated with the finding.", "id": "CloudControl", "properties": { "cloudControlName": { - "description": "Name of the CloudControl associated with the finding.", "type": "string" }, "policyType": { - "description": "Policy type of the CloudControl", "type": "string" }, "type": { - "description": "Type of cloud control.", "enum": [ "CLOUD_CONTROL_TYPE_UNSPECIFIED", "BUILT_IN", "CUSTOM" ], "enumDescriptions": [ - "Unspecified.", - "Built in Cloud Control.", - "Custom Cloud Control." + "", + "", + "" ], "type": "string" }, "version": { - "description": "Version of the Cloud Control", "format": "int32", "type": "integer" } @@ -6969,31 +6438,27 @@ "type": "object" }, "CloudDlpDataProfile": { - "description": "The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding.", "id": "CloudDlpDataProfile", "properties": { "dataProfile": { - "description": "Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`.", "type": "string" }, "infoTypes": { - "description": "Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type.", "items": { "$ref": "InfoType" }, "type": "array" }, "parentType": { - "description": "The resource hierarchy level at which the data profile was generated.", "enum": [ "PARENT_TYPE_UNSPECIFIED", "ORGANIZATION", "PROJECT" ], "enumDescriptions": [ - "Unspecified parent type.", - "Organization-level configurations.", - "Project-level configurations." + "", + "", + "" ], "type": "string" } @@ -7001,47 +6466,37 @@ "type": "object" }, "CloudDlpInspection": { - "description": "Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding.", "id": "CloudDlpInspection", "properties": { "fullScan": { - "description": "Whether Cloud DLP scanned the complete resource or a sampled subset.", "type": "boolean" }, "infoType": { - "description": "The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.", "type": "string" }, "infoTypeCount": { - "description": "The number of times Cloud DLP found this infoType within this job and resource.", "format": "int64", "type": "string" }, "inspectJob": { - "description": "Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`.", "type": "string" } }, "type": "object" }, "CloudLoggingEntry": { - "description": "Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)", "id": "CloudLoggingEntry", "properties": { "insertId": { - "description": "A unique identifier for the log entry.", "type": "string" }, "logId": { - "description": "The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity`. Note that this field is not URL-encoded, unlike the `LOG_ID` field in `LogEntry`.", "type": "string" }, "resourceContainer": { - "description": "The organization, folder, or project of the monitored resource that produced this log entry.", "type": "string" }, "timestamp": { - "description": "The time the event described by the log entry occurred.", "format": "google-datetime", "type": "string" } @@ -7049,44 +6504,36 @@ "type": "object" }, "Compliance": { - "description": "Contains compliance information about a security standard indicating unmet recommendations.", "id": "Compliance", "properties": { "ids": { - "description": "Policies within the standard or benchmark, for example, A.12.4.1", "items": { "type": "string" }, "type": "array" }, "standard": { - "description": "Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP.", "type": "string" }, "version": { - "description": "Version of the standard or benchmark, for example, 1.1", "type": "string" } }, "type": "object" }, "ComplianceDetails": { - "description": "Compliance Details associated with the finding.", "id": "ComplianceDetails", "properties": { "cloudControl": { - "$ref": "CloudControl", - "description": "CloudControl associated with the finding" + "$ref": "CloudControl" }, "cloudControlDeploymentNames": { - "description": "Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier", "items": { "type": "string" }, "type": "array" }, "frameworks": { - "description": "Details of Frameworks associated with the finding", "items": { "$ref": "Framework" }, @@ -7096,20 +6543,16 @@ "type": "object" }, "Connection": { - "description": "Contains information about the IP connection associated with the finding.", "id": "Connection", "properties": { "destinationIp": { - "description": "Destination IP address. Not present for sockets that are listening and not connected.", "type": "string" }, "destinationPort": { - "description": "Destination port. Not present for sockets that are listening and not connected.", "format": "int32", "type": "integer" }, "protocol": { - "description": "IANA Internet Protocol Number such as TCP(6) and UDP(17).", "enum": [ "PROTOCOL_UNSPECIFIED", "ICMP", @@ -7119,21 +6562,19 @@ "ESP" ], "enumDescriptions": [ - "Unspecified protocol (not HOPOPT).", - "Internet Control Message Protocol.", - "Transmission Control Protocol.", - "User Datagram Protocol.", - "Generic Routing Encapsulation.", - "Encap Security Payload." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "sourceIp": { - "description": "Source IP address.", "type": "string" }, "sourcePort": { - "description": "Source port.", "format": "int32", "type": "integer" } @@ -7141,22 +6582,18 @@ "type": "object" }, "Contact": { - "description": "The email address of a contact.", "id": "Contact", "properties": { "email": { - "description": "An email address. For example, \"`person123@company.com`\".", "type": "string" } }, "type": "object" }, "ContactDetails": { - "description": "Details about specific contacts", "id": "ContactDetails", "properties": { "contacts": { - "description": "A list of contacts", "items": { "$ref": "Contact" }, @@ -7166,95 +6603,76 @@ "type": "object" }, "Container": { - "description": "Container associated with the finding.", "id": "Container", "properties": { "createTime": { - "description": "The time that the container was created.", "format": "google-datetime", "type": "string" }, "imageId": { - "description": "Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest.", "type": "string" }, "labels": { - "description": "Container labels, as provided by the container runtime.", "items": { "$ref": "Label" }, "type": "array" }, "name": { - "description": "Name of the container.", "type": "string" }, "uri": { - "description": "Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags.", "type": "string" } }, "type": "object" }, "Control": { - "description": "Compliance control associated with the finding.", "id": "Control", "properties": { "controlName": { - "description": "Name of the Control", "type": "string" }, "displayName": { - "description": "Display name of the control. For example, AU-02.", "type": "string" } }, "type": "object" }, "CreateResourceValueConfigRequest": { - "description": "Request message to create single resource value config", "id": "CreateResourceValueConfigRequest", "properties": { "parent": { - "description": "Required. Resource name of the new ResourceValueConfig's parent.", "type": "string" }, "resourceValueConfig": { - "$ref": "GoogleCloudSecuritycenterV1ResourceValueConfig", - "description": "Required. The resource value config being created." + "$ref": "GoogleCloudSecuritycenterV1ResourceValueConfig" } }, "type": "object" }, "CustomModuleValidationError": { - "description": "An error encountered while validating the uploaded configuration of an Event Threat Detection Custom Module.", "id": "CustomModuleValidationError", "properties": { "description": { - "description": "A description of the error, suitable for human consumption. Required.", "type": "string" }, "end": { - "$ref": "Position", - "description": "The end position of the error in the uploaded text version of the module. This field may be omitted if no specific position applies, or if one could not be computed." + "$ref": "Position" }, "fieldPath": { - "description": "The path, in RFC 8901 JSON Pointer format, to the field that failed validation. This may be left empty if no specific field is affected.", "type": "string" }, "start": { - "$ref": "Position", - "description": "The initial position of the error in the uploaded text version of the module. This field may be omitted if no specific position applies, or if one could not be computed." + "$ref": "Position" } }, "type": "object" }, "CustomModuleValidationErrors": { - "description": "A list of zero or more errors encountered while validating the uploaded configuration of an Event Threat Detection Custom Module.", "id": "CustomModuleValidationErrors", "properties": { "errors": { - "description": "The list of errors.", "items": { "$ref": "CustomModuleValidationError" }, @@ -7264,20 +6682,16 @@ "type": "object" }, "Cve": { - "description": "CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability.", "id": "Cve", "properties": { "cvssv3": { - "$ref": "Cvssv3", - "description": "Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document" + "$ref": "Cvssv3" }, "exploitReleaseDate": { - "description": "Date the first publicly available exploit or PoC was released.", "format": "google-datetime", "type": "string" }, "exploitationActivity": { - "description": "The exploitation activity of the vulnerability in the wild.", "enum": [ "EXPLOITATION_ACTIVITY_UNSPECIFIED", "WIDE", @@ -7287,26 +6701,23 @@ "NO_KNOWN" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation has been reported or confirmed to widely occur.", - "Limited reported or confirmed exploitation activities.", - "Exploit is publicly available.", - "No known exploitation activity, but has a high potential for exploitation.", - "No known exploitation activity." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "firstExploitationDate": { - "description": "Date of the earliest known exploitation.", "format": "google-datetime", "type": "string" }, "id": { - "description": "The unique identifier for the vulnerability. e.g. CVE-2021-34527", "type": "string" }, "impact": { - "description": "The potential impact of the vulnerability if it was to be exploited.", "enum": [ "RISK_RATING_UNSPECIFIED", "LOW", @@ -7315,56 +6726,49 @@ "CRITICAL" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation would have little to no security impact.", - "Exploitation would enable attackers to perform activities, or could allow attackers to have a direct impact, but would require additional steps.", - "Exploitation would enable attackers to have a notable direct impact without needing to overcome any major mitigating factors.", - "Exploitation would fundamentally undermine the security of affected systems, enable actors to perform significant attacks with minimal effort, with little to no mitigating factors to overcome." + "", + "", + "", + "", + "" ], "type": "string" }, "observedInTheWild": { - "description": "Whether or not the vulnerability has been observed in the wild.", "type": "boolean" }, "references": { - "description": "Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527", "items": { "$ref": "Reference" }, "type": "array" }, "upstreamFixAvailable": { - "description": "Whether upstream fix is available for the CVE.", "type": "boolean" }, "zeroDay": { - "description": "Whether or not the vulnerability was zero day when the finding was published.", "type": "boolean" } }, "type": "object" }, "Cvssv3": { - "description": "Common Vulnerability Scoring System version 3.", "id": "Cvssv3", "properties": { "attackComplexity": { - "description": "This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", "ATTACK_COMPLEXITY_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "Specialized access conditions or extenuating circumstances do not exist. An attacker can expect repeatable success when attacking the vulnerable component.", - "A successful attack depends on conditions beyond the attacker's control. That is, a successful attack cannot be accomplished at will, but requires the attacker to invest in some measurable amount of effort in preparation or execution against the vulnerable component before a successful attack can be expected." + "", + "", + "" ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -7373,16 +6777,15 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.", - "The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.", - "The vulnerable component is not bound to the network stack and the attacker's path is via read/write/execute capabilities.", - "The attack requires the attacker to physically touch or manipulate the vulnerable component." + "", + "", + "", + "", + "" ], "type": "string" }, "availabilityImpact": { - "description": "This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -7390,20 +6793,18 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "baseScore": { - "description": "The base score is a function of the base metric scores.", "format": "double", "type": "number" }, "confidentialityImpact": { - "description": "This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -7411,15 +6812,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "integrityImpact": { - "description": "This metric measures the impact to integrity of a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -7427,15 +6827,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "privilegesRequired": { - "description": "This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -7443,38 +6842,36 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files of the vulnerable system to carry out an attack.", - "The attacker requires privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. Alternatively, an attacker with Low privileges has the ability to access only non-sensitive resources.", - "The attacker requires privileges that provide significant (e.g., administrative) control over the vulnerable component allowing access to component-wide settings and files." + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Invalid value.", - "An exploited vulnerability can only affect resources managed by the same security authority.", - "An exploited vulnerability can affect resources beyond the security scope managed by the security authority of the vulnerable component." + "", + "", + "" ], "type": "string" }, "userInteraction": { - "description": "This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", "USER_INTERACTION_REQUIRED" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable system can be exploited without interaction from any user.", - "Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited." + "", + "", + "" ], "type": "string" } @@ -7482,15 +6879,12 @@ "type": "object" }, "Cwe": { - "description": "CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/).", "id": "Cwe", "properties": { "id": { - "description": "The CWE identifier, e.g. CWE-94", "type": "string" }, "references": { - "description": "Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html", "items": { "$ref": "Reference" }, @@ -7500,20 +6894,16 @@ "type": "object" }, "DataAccessEvent": { - "description": "Details about a data access attempt made by a principal not authorized under applicable data security policy.", "id": "DataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -7521,35 +6911,30 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other.", "type": "string" } }, "type": "object" }, "DataFlowEvent": { - "description": "Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy.", "id": "DataFlowEvent", "properties": { "eventId": { - "description": "Unique identifier for data flow event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data flow event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal for the data flow event.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -7557,40 +6942,34 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other.", "type": "string" }, "violatedLocation": { - "description": "Non-compliant location of the principal or the data destination.", "type": "string" } }, "type": "object" }, "DataRetentionDeletionEvent": { - "description": "Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments.", "id": "DataRetentionDeletionEvent", "properties": { "dataObjectCount": { - "description": "Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000.", "format": "int64", "type": "string" }, "eventDetectionTime": { - "description": "Timestamp indicating when the event was detected.", "format": "google-datetime", "type": "string" }, "eventType": { - "description": "Type of the DRD event.", "enum": [ "EVENT_TYPE_UNSPECIFIED", "EVENT_TYPE_MAX_TTL_EXCEEDED", @@ -7606,21 +6985,19 @@ false ], "enumDescriptions": [ - "Unspecified event type.", - "Deprecated: This field is pending removal. Use EVENT_TYPE_MAX_TTL_FROM_CREATION or EVENT_TYPE_MAX_TTL_FROM_LAST_MODIFICATION instead.", - "Max TTL from the asset's creation time.", - "Max TTL from the asset's last modification time.", - "Min TTL from the asset's creation time." + "", + "", + "", + "", + "" ], "type": "string" }, "maxRetentionAllowed": { - "description": "Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days.", "format": "google-duration", "type": "string" }, "minRetentionAllowed": { - "description": "Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION.", "format": "google-duration", "type": "string" } @@ -7628,64 +7005,51 @@ "type": "object" }, "Database": { - "description": "Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided.", "id": "Database", "properties": { "displayName": { - "description": "The human-readable name of the database that the user connected to.", "type": "string" }, "grantees": { - "description": "The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory.", "type": "string" }, "query": { - "description": "The SQL statement that is associated with the database access.", "type": "string" }, "userName": { - "description": "The username used to connect to the database. The username might not be an IAM principal and does not have a set format.", "type": "string" }, "version": { - "description": "The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).", "type": "string" } }, "type": "object" }, "Dataset": { - "description": "Vertex AI dataset associated with the finding.", "id": "Dataset", "properties": { "displayName": { - "description": "The user defined display name of dataset, e.g. plants-dataset", "type": "string" }, "name": { - "description": "Resource name of the dataset, e.g. projects/{project}/locations/{location}/datasets/2094040236064505856", "type": "string" }, "source": { - "description": "Data source, such as BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod", "type": "string" } }, "type": "object" }, "Denied": { - "description": "Denied IP rule.", "id": "Denied", "properties": { "ipRules": { - "description": "Optional. Optional list of denied IP rules.", "items": { "$ref": "IpRule" }, @@ -7695,15 +7059,12 @@ "type": "object" }, "Detection": { - "description": "Memory hash detection contributing to the binary family match.", "id": "Detection", "properties": { "binary": { - "description": "The name of the binary associated with the memory hash signature detection.", "type": "string" }, "percentPagesMatched": { - "description": "The percentage of memory page hashes in the signature that were matched.", "format": "double", "type": "number" } @@ -7711,35 +7072,29 @@ "type": "object" }, "DiscoveredWorkload": { - "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", "id": "DiscoveredWorkload", "properties": { "confidence": { - "description": "The confidence in detection of this workload.", "enum": [ "CONFIDENCE_UNSPECIFIED", "CONFIDENCE_HIGH" ], "enumDescriptions": [ - "Unspecified confidence level.", - "High confidence in detection of a workload." + "", + "" ], "type": "string" }, "detectedRelevantHardware": { - "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", "type": "boolean" }, "detectedRelevantKeywords": { - "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", "type": "boolean" }, "detectedRelevantPackages": { - "description": "A boolean flag set to true if installed packages strongly predict the workload type.", "type": "boolean" }, "workloadType": { - "description": "The type of workload.", "enum": [ "WORKLOAD_TYPE_UNSPECIFIED", "MCP_SERVER", @@ -7747,10 +7102,10 @@ "AGENT" ], "enumDescriptions": [ - "Unspecified workload type", - "A workload of type MCP Server", - "A workload of type AI Inference", - "A workload of type LLM Agent" + "", + "", + "", + "" ], "type": "string" } @@ -7758,53 +7113,43 @@ "type": "object" }, "Disk": { - "description": "Contains information about the disk associated with the finding.", "id": "Disk", "properties": { "name": { - "description": "The name of the disk, for example, \"https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}\".", "type": "string" } }, "type": "object" }, "DiskPath": { - "description": "Path of the file in terms of underlying disk/partition identifiers.", "id": "DiskPath", "properties": { "partitionUuid": { - "description": "UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)", "type": "string" }, "relativePath": { - "description": "Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh", "type": "string" } }, "type": "object" }, "DynamicMuteRecord": { - "description": "The record of a dynamic mute rule that matches the finding.", "id": "DynamicMuteRecord", "properties": { "matchTime": { - "description": "When the dynamic mute rule first matched the finding.", "format": "google-datetime", "type": "string" }, "muteConfig": { - "description": "The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`.", "type": "string" } }, "type": "object" }, "EffectiveEventThreatDetectionCustomModule": { - "description": "An EffectiveEventThreatDetectionCustomModule is the representation of an Event Threat Detection custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablement_state` property in EffectiveEventThreatDetectionCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective `enablement_state` for the module in all child folders or projects is also `enabled`. EffectiveEventThreatDetectionCustomModule is read-only.", "id": "EffectiveEventThreatDetectionCustomModule", "properties": { "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -7812,10 +7157,10 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, @@ -7824,42 +7169,36 @@ "description": "Properties of the object.", "type": "any" }, - "description": "Output only. Config for the effective module.", "readOnly": true, "type": "object" }, "description": { - "description": "Output only. The description for the module.", "readOnly": true, "type": "string" }, "displayName": { - "description": "Output only. The human readable name to be displayed for the module.", "readOnly": true, "type": "string" }, "enablementState": { - "description": "Output only. The effective state of enablement for the module at the given level of the hierarchy.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", "DISABLED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given level.", - "The module is disabled at the given level." + "", + "", + "" ], "readOnly": true, "type": "string" }, "name": { - "description": "Output only. The resource name of the effective ETD custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/effectiveCustomModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/effectiveCustomModules/{module}`.", "readOnly": true, "type": "string" }, "type": { - "description": "Output only. Type for the module. e.g. CONFIGURABLE_BAD_IP.", "readOnly": true, "type": "string" } @@ -7867,37 +7206,30 @@ "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); }", "id": "Empty", "properties": {}, "type": "object" }, "EnvironmentVariable": { - "description": "A name-value pair representing an environment variable used in an operating system process.", "id": "EnvironmentVariable", "properties": { "name": { - "description": "Environment variable name as a JSON encoded string.", "type": "string" }, "val": { - "description": "Environment variable value as a JSON encoded string.", "type": "string" } }, "type": "object" }, "EventThreatDetectionCustomModule": { - "description": "Represents an instance of an Event Threat Detection custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by child folders and projects.", "id": "EventThreatDetectionCustomModule", "properties": { "ancestorModule": { - "description": "Output only. The closest ancestor module that this module inherits the enablement state from. The format is the same as the EventThreatDetectionCustomModule resource name.", "readOnly": true, "type": "string" }, "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -7905,10 +7237,10 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services (AWS).", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, @@ -7917,19 +7249,15 @@ "description": "Properties of the object.", "type": "any" }, - "description": "Config for the module. For the resident module, its config value is defined at this level. For the inherited module, its config value is inherited from the ancestor module.", "type": "object" }, "description": { - "description": "The description for the module.", "type": "string" }, "displayName": { - "description": "The human readable name to be displayed for the module.", "type": "string" }, "enablementState": { - "description": "The state of enablement for the module at the given level of the hierarchy.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", @@ -7937,28 +7265,24 @@ "INHERITED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given level.", - "The module is disabled at the given level.", - "When the enablement state is inherited." + "", + "", + "", + "" ], "type": "string" }, "lastEditor": { - "description": "Output only. The editor the module was last updated by.", "readOnly": true, "type": "string" }, "name": { - "description": "Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization}/eventThreatDetectionSettings/customModules/{module}`. * `folders/{folder}/eventThreatDetectionSettings/customModules/{module}`. * `projects/{project}/eventThreatDetectionSettings/customModules/{module}`.", "type": "string" }, "type": { - "description": "Type for the module. e.g. CONFIGURABLE_BAD_IP.", "type": "string" }, "updateTime": { - "description": "Output only. The time the module was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -7967,43 +7291,36 @@ "type": "object" }, "ExfilResource": { - "description": "Resource where data was exfiltrated from or exfiltrated to.", "id": "ExfilResource", "properties": { "components": { - "description": "Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name).", "type": "string" } }, "type": "object" }, "Exfiltration": { - "description": "Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to.", "id": "Exfiltration", "properties": { "sources": { - "description": "If there are multiple sources, then the data is considered \"joined\" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source.", "items": { "$ref": "ExfilResource" }, "type": "array" }, "targets": { - "description": "If there are multiple targets, each target would get a complete copy of the \"joined\" source data.", "items": { "$ref": "ExfilResource" }, "type": "array" }, "totalExfiltratedBytes": { - "description": "Total exfiltrated bytes processed for the entire job.", "format": "int64", "type": "string" } @@ -8011,15 +7328,12 @@ "type": "object" }, "ExportFindingsMetadata": { - "description": "The LRO metadata for a ExportFindings request.", "id": "ExportFindingsMetadata", "properties": { "bigQueryDestination": { - "$ref": "BigQueryDestination", - "description": "Required. The destination BigQuery dataset to export findings to." + "$ref": "BigQueryDestination" }, "exportStartTime": { - "description": "Optional. Timestamp at which export was started", "format": "google-datetime", "type": "string" } @@ -8027,176 +7341,139 @@ "type": "object" }, "ExportFindingsResponse": { - "description": "The response to a ExportFindings request. Contains the LRO information.", "id": "ExportFindingsResponse", "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" }, "ExternalExposure": { - "description": "Details about the externally exposed resource associated with the finding.", "id": "ExternalExposure", "properties": { "backendBucket": { - "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", "type": "string" }, "backendService": { - "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "exposedApplication": { - "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", "type": "string" }, "exposedEndpoint": { - "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" }, "exposedService": { - "description": "The name and version of the service, for example, \"Jupyter Notebook 6.14.0\".", "type": "string" }, "forwardingRule": { - "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, "hostnameUri": { - "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", "type": "string" }, "httpResponse": { - "description": "The http response returned by the web application.", "items": { "$ref": "HttpResponse" }, "type": "array" }, "instanceGroup": { - "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, "internalBackendService": { - "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "loadBalancerFirewallPolicy": { - "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" }, "networkEndpointGroup": { - "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, "networkIngressFirewallPolicy": { - "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", "type": "string" }, "privateIpAddress": { - "description": "Private IP address of the exposed endpoint.", "type": "string" }, "privatePort": { - "description": "Port number associated with private IP address.", "type": "string" }, "pscNetworkAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", "type": "string" }, "pscServiceAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", "type": "string" }, "publicIpAddress": { - "description": "Public IP address of the exposed endpoint.", "type": "string" }, "publicPort": { - "description": "Public port number of the exposed endpoint.", "type": "string" }, "serviceFirewallPolicy": { - "description": "The full resource name of the firewall policy of the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" } }, "type": "object" }, "File": { - "description": "File information about the related binary/library used by an executable, or the script used by a script interpreter", "id": "File", "properties": { "contents": { - "description": "Prefix of the file contents as a JSON-encoded string.", "type": "string" }, "diskPath": { - "$ref": "DiskPath", - "description": "Path of the file in terms of underlying disk/partition identifiers." + "$ref": "DiskPath" }, "fileLoadState": { - "description": "The load state of the file.", "enum": [ "FILE_LOAD_STATE_UNSPECIFIED", "LOADED_BY_PROCESS", "NOT_LOADED_BY_PROCESS" ], "enumDescriptions": [ - "The file state is unspecified.", - "The file is being used by an active process at the time of scanning.", - "The file is not being used by any active process at the time of scanning." + "", + "", + "" ], "type": "string" }, "hashedSize": { - "description": "The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file.", "format": "int64", "type": "string" }, "operations": { - "description": "Operation(s) performed on a file.", "items": { "$ref": "FileOperation" }, "type": "array" }, "partiallyHashed": { - "description": "True when the hash covers only a prefix of the file.", "type": "boolean" }, "path": { - "description": "Absolute path of the file as a JSON encoded string.", "type": "string" }, "sha256": { - "description": "SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file.", "type": "string" }, "size": { - "description": "Size of the file in bytes.", "format": "int64", "type": "string" } @@ -8204,11 +7481,9 @@ "type": "object" }, "FileOperation": { - "description": "Operation(s) performed on a file.", "id": "FileOperation", "properties": { "type": { - "description": "The type of the operation", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "OPEN", @@ -8218,12 +7493,12 @@ "EXECUTE" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents an open operation.", - "Represents a read operation.", - "Represents a rename operation.", - "Represents a write operation.", - "Represents an execute operation." + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -8231,81 +7506,63 @@ "type": "object" }, "Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.", "id": "Finding", "properties": { "access": { - "$ref": "Access", - "description": "Access details associated with the finding, such as more information on the caller, which method was accessed, and from where." + "$ref": "Access" }, "affectedResources": { - "$ref": "AffectedResources", - "description": "AffectedResources associated with the finding." + "$ref": "AffectedResources" }, "agentDataAccessEvents": { - "description": "Agent data access events associated with the finding.", "items": { "$ref": "AgentDataAccessEvent" }, "type": "array" }, "aiModel": { - "$ref": "AiModel", - "description": "The AI model associated with the finding." + "$ref": "AiModel" }, "application": { - "$ref": "Application", - "description": "Represents an application associated with the finding." + "$ref": "Application" }, "artifactGuardPolicies": { - "$ref": "ArtifactGuardPolicies", - "description": "ArtifactGuardPolicies associated with the finding." + "$ref": "ArtifactGuardPolicies" }, "attackExposure": { - "$ref": "AttackExposure", - "description": "The results of an attack path simulation relevant to this finding." + "$ref": "AttackExposure" }, "backupDisasterRecovery": { - "$ref": "BackupDisasterRecovery", - "description": "Fields related to Backup and DR findings." + "$ref": "BackupDisasterRecovery" }, "canonicalName": { - "description": "The canonical name of the finding. It's either \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\" or \"projects/{project_number}/sources/{source_id}/findings/{finding_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "chokepoint": { - "$ref": "Chokepoint", - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests." + "$ref": "Chokepoint" }, "cloudArmor": { - "$ref": "CloudArmor", - "description": "Fields related to Cloud Armor findings." + "$ref": "CloudArmor" }, "cloudDlpDataProfile": { - "$ref": "CloudDlpDataProfile", - "description": "Cloud DLP data profile that is associated with the finding." + "$ref": "CloudDlpDataProfile" }, "cloudDlpInspection": { - "$ref": "CloudDlpInspection", - "description": "Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding." + "$ref": "CloudDlpInspection" }, "complianceDetails": { - "$ref": "ComplianceDetails", - "description": "Details about the compliance implications of the finding." + "$ref": "ComplianceDetails" }, "compliances": { - "description": "Contains compliance information for security standards associated to the finding.", "items": { "$ref": "Compliance" }, "type": "array" }, "connections": { - "description": "Contains information about the IP connection associated with the finding.", "items": { "$ref": "Connection" }, @@ -8315,93 +7572,76 @@ "additionalProperties": { "$ref": "ContactDetails" }, - "description": "Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { \"security\": { \"contacts\": [ { \"email\": \"person1@company.com\" }, { \"email\": \"person2@company.com\" } ] } }", "readOnly": true, "type": "object" }, "containers": { - "description": "Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.", "items": { "$ref": "Container" }, "type": "array" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "dataAccessEvents": { - "description": "Data access events associated with the finding.", "items": { "$ref": "DataAccessEvent" }, "type": "array" }, "dataFlowEvents": { - "description": "Data flow events associated with the finding.", "items": { "$ref": "DataFlowEvent" }, "type": "array" }, "dataRetentionDeletionEvents": { - "description": "Data retention deletion events associated with the finding.", "items": { "$ref": "DataRetentionDeletionEvent" }, "type": "array" }, "database": { - "$ref": "Database", - "description": "Database associated with the finding." + "$ref": "Database" }, "description": { - "description": "Contains more details about the finding.", "type": "string" }, "discoveredWorkload": { - "$ref": "DiscoveredWorkload", - "description": "DiscoveredWorkload associated with the finding." + "$ref": "DiscoveredWorkload" }, "disk": { - "$ref": "Disk", - "description": "Disk associated with the finding." + "$ref": "Disk" }, "eventTime": { - "description": "The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "exfiltration": { - "$ref": "Exfiltration", - "description": "Represents exfiltrations associated with the finding." + "$ref": "Exfiltration" }, "externalExposure": { - "$ref": "ExternalExposure", - "description": "External exposure associated with the finding." + "$ref": "ExternalExposure" }, "externalSystems": { "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV1ExternalSystem" }, - "description": "Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.", "readOnly": true, "type": "object" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "files": { - "description": "File associated with the finding.", "items": { "$ref": "File" }, "type": "array" }, "findingClass": { - "description": "The class of the finding.", "enum": [ "FINDING_CLASS_UNSPECIFIED", "THREAT", @@ -8417,79 +7657,67 @@ "SECRET" ], "enumDescriptions": [ - "Unspecified finding class.", - "Describes unwanted or malicious activity.", - "Describes a potential weakness in software that increases risk to Confidentiality & Integrity & Availability.", - "Describes a potential weakness in cloud resource/asset configuration that increases risk.", - "Describes a security observation that is for informational purposes.", - "Describes an error that prevents some SCC functionality.", - "Describes a potential security risk due to a change in the security posture.", - "Describes a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", - "Describes a potential security risk to data assets that contain sensitive data.", - "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet.", - "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "groupMemberships": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.", "items": { "$ref": "GroupMembership" }, "type": "array" }, "iamBindings": { - "description": "Represents IAM bindings associated with the finding.", "items": { "$ref": "IamBinding" }, "type": "array" }, "indicator": { - "$ref": "Indicator", - "description": "Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise)." + "$ref": "Indicator" }, "ipRules": { - "$ref": "IpRules", - "description": "IP rules associated with the finding." + "$ref": "IpRules" }, "job": { - "$ref": "Job", - "description": "Job associated with the finding." + "$ref": "Job" }, "kernelRootkit": { - "$ref": "KernelRootkit", - "description": "Signature of the kernel rootkit." + "$ref": "KernelRootkit" }, "kubernetes": { - "$ref": "Kubernetes", - "description": "Kubernetes resources associated with the finding." + "$ref": "Kubernetes" }, "loadBalancers": { - "description": "The load balancers associated with the finding.", "items": { "$ref": "LoadBalancer" }, "type": "array" }, "logEntries": { - "description": "Log entries that are relevant to the finding.", "items": { "$ref": "LogEntry" }, "type": "array" }, "mitreAttack": { - "$ref": "MitreAttack", - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org" + "$ref": "MitreAttack" }, "moduleName": { - "description": "Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885", "type": "string" }, "mute": { - "description": "Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -8497,93 +7725,76 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" }, "muteInfo": { "$ref": "MuteInfo", - "description": "Output only. The mute information regarding this finding.", "readOnly": true }, "muteInitiator": { - "description": "Records additional information about the mute operation, for example, the [mute configuration](/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding.", "type": "string" }, "muteUpdateTime": { - "description": "Output only. The most recent time this finding was muted or unmuted.", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\", \"projects/{project_id}/sources/{source_id}/findings/{finding_id}\".", "type": "string" }, "networks": { - "description": "Represents the VPC networks that the resource is attached to.", "items": { "$ref": "Network" }, "type": "array" }, "nextSteps": { - "description": "Steps to address the finding.", "type": "string" }, "notebook": { - "$ref": "Notebook", - "description": "Notebook associated with the finding." + "$ref": "Notebook" }, "orgPolicies": { - "description": "Contains information about the org policies associated with the finding.", "items": { "$ref": "OrgPolicy" }, "type": "array" }, "parent": { - "description": "The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "parentDisplayName": { - "description": "Output only. The human readable display name of the finding source such as \"Event Threat Detection\" or \"Security Health Analytics\".", "readOnly": true, "type": "string" }, "policyViolationSummary": { - "$ref": "PolicyViolationSummary", - "description": "PolicyViolationSummary associated with the finding." + "$ref": "PolicyViolationSummary" }, "processes": { - "description": "Represents operating system processes associated with the Finding.", "items": { "$ref": "Process" }, "type": "array" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "secret": { - "$ref": "Secret", - "description": "Secret associated with the finding." + "$ref": "Secret" }, "securityMarks": { "$ref": "SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "securityPosture": { - "$ref": "SecurityPosture", - "description": "The security posture associated with the finding." + "$ref": "SecurityPosture" }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -8592,11 +7803,11 @@ "LOW" ], "enumDescriptions": [ - "This value is used for findings when a source doesn't write a severity value.", - "Vulnerability: A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. Threat: Indicates a threat that is able to access, modify, or delete data or execute unauthorized code within existing resources.", - "Vulnerability: A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities in order to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. Threat: Indicates a threat that is able to create new computational resources in an environment but not able to access data or execute code in existing resources.", - "Vulnerability: A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. Threat: Indicates a threat that is able to cause operational impact but may not access data or execute unauthorized code.", - "Vulnerability: A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. Threat: Indicates a threat that has obtained minimal access to an environment but is not able to access data, execute code, or create resources." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -8604,59 +7815,49 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" }, "toxicCombination": { - "$ref": "ToxicCombination", - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests." + "$ref": "ToxicCombination" }, "vertexAi": { - "$ref": "VertexAi", - "description": "VertexAi associated with the finding." + "$ref": "VertexAi" }, "vulnerability": { - "$ref": "Vulnerability", - "description": "Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "Vulnerability" } }, "type": "object" }, "Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "Framework": { - "description": "Compliance framework associated with the finding.", "id": "Framework", "properties": { "category": { - "description": "Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads", "items": { "enum": [ "FRAMEWORK_CATEGORY_UNSPECIFIED", @@ -8667,43 +7868,39 @@ "CUSTOM_FRAMEWORK" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Security Benchmarks framework", - "Assured Workloads framework", - "Data Security framework", - "Google Best Practices framework", - "A user-created framework" + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "controls": { - "description": "The controls associated with the framework.", "items": { "$ref": "Control" }, "type": "array" }, "displayName": { - "description": "Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework", "type": "string" }, "name": { - "description": "Name of the framework associated with the finding", "type": "string" }, "type": { - "description": "Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture)", "enum": [ "FRAMEWORK_TYPE_UNSPECIFIED", "FRAMEWORK_TYPE_BUILT_IN", "FRAMEWORK_TYPE_CUSTOM" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The framework is a built-in framework if it is created and managed by GCP.", - "The framework is a custom framework if it is created and managed by the user." + "", + "", + "" ], "type": "string" } @@ -8711,11 +7908,9 @@ "type": "object" }, "GcpMetadata": { - "description": "Google Cloud metadata associated with the resource. Only applicable if the finding's cloud provider is Google Cloud.", "id": "GcpMetadata", "properties": { "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "GoogleCloudSecuritycenterV2Folder" }, @@ -8723,56 +7918,45 @@ "type": "array" }, "organization": { - "description": "The name of the organization that the resource belongs to.", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" } }, "type": "object" }, "Geolocation": { - "description": "Represents a geographical location for a given access.", "id": "Geolocation", "properties": { "regionCode": { - "description": "A CLDR.", "type": "string" } }, "type": "object" }, "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", "id": "GetIamPolicyRequest", "properties": { "options": { - "$ref": "GetPolicyOptions", - "description": "OPTIONAL: A `GetPolicyOptions` object for specifying options to `GetIamPolicy`." + "$ref": "GetPolicyOptions" } }, "type": "object" }, "GetPolicyOptions": { - "description": "Encapsulates settings provided to GetIamPolicy.", "id": "GetPolicyOptions", "properties": { "requestedPolicyVersion": { - "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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" } @@ -8780,43 +7964,34 @@ "type": "object" }, "GoogleCloudSecuritycenterV1BigQueryExport": { - "description": "Configures how to deliver Findings to BigQuery Instance.", "id": "GoogleCloudSecuritycenterV1BigQueryExport", "properties": { "createTime": { - "description": "Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "dataset": { - "description": "The dataset to write findings' updates to. Its format is \"projects/[project_id]/datasets/[bigquery_dataset_id]\". BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).", "type": "string" }, "description": { - "description": "The description of the export (max of 1024 characters).", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: \"organizations/{organization_id}/bigQueryExports/{export_id}\" Example format: \"folders/{folder_id}/bigQueryExports/{export_id}\" Example format: \"projects/{project_id}/bigQueryExports/{export_id}\" This field is provided in responses, and is ignored when provided in create requests.", "type": "string" }, "principal": { - "description": "Output only. The service account that needs permission to create table and upload data to the BigQuery dataset.", "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -8825,23 +8000,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV1Binding": { - "description": "Represents a Kubernetes RoleBinding or ClusterRoleBinding.", "id": "GoogleCloudSecuritycenterV1Binding", "properties": { "name": { - "description": "Name for the binding.", "type": "string" }, "ns": { - "description": "Namespace for the binding.", "type": "string" }, "role": { - "$ref": "Role", - "description": "The Role or ClusterRole referenced by the binding." + "$ref": "Role" }, "subjects": { - "description": "Represents one or more subjects that are bound to the role. Not always available for PATCH requests.", "items": { "$ref": "Subject" }, @@ -8851,37 +8021,29 @@ "type": "object" }, "GoogleCloudSecuritycenterV1BulkMuteFindingsResponse": { - "description": "The response to a BulkMute request. Contains the LRO information.", "id": "GoogleCloudSecuritycenterV1BulkMuteFindingsResponse", "properties": {}, "type": "object" }, "GoogleCloudSecuritycenterV1CustomConfig": { - "description": "Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify.", "id": "GoogleCloudSecuritycenterV1CustomConfig", "properties": { "customOutput": { - "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec", - "description": "Custom output properties." + "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec" }, "description": { - "description": "Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks.", "type": "string" }, "predicate": { - "$ref": "Expr", - "description": "The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated." + "$ref": "Expr" }, "recommendation": { - "description": "An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the `nextSteps` property of the finding JSON.", "type": "string" }, "resourceSelector": { - "$ref": "GoogleCloudSecuritycenterV1ResourceSelector", - "description": "The resource types that the custom module operates on. Each custom module can specify up to 5 resource types." + "$ref": "GoogleCloudSecuritycenterV1ResourceSelector" }, "severity": { - "description": "The severity to assign to findings generated by the module.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -8890,11 +8052,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified severity.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" } @@ -8902,11 +8064,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1CustomOutputSpec": { - "description": "A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under `sourceProperties`.", "id": "GoogleCloudSecuritycenterV1CustomOutputSpec", "properties": { "properties": { - "description": "A list of custom output properties to add to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV1Property" }, @@ -8916,11 +8076,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule": { - "description": "An EffectiveSecurityHealthAnalyticsCustomModule is the representation of a Security Health Analytics custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective enablement_state for the module in all child folders or projects is also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only.", "id": "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule", "properties": { "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -8928,40 +8086,36 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "customConfig": { "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "Output only. The user-specified configuration for the module.", "readOnly": true }, "displayName": { - "description": "Output only. The display name for the custom module. The name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only.", "readOnly": true, "type": "string" }, "enablementState": { - "description": "Output only. The effective state of enablement for the module at the given level of the hierarchy.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", "DISABLED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given level.", - "The module is disabled at the given level." + "", + "", + "" ], "readOnly": true, "type": "string" }, "name": { - "description": "Output only. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\"", "readOnly": true, "type": "string" } @@ -8969,116 +8123,94 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ExternalSystem": { - "description": "Representation of third party SIEM/SOAR fields within SCC.", "id": "GoogleCloudSecuritycenterV1ExternalSystem", "properties": { "assignees": { - "description": "References primary/secondary etc assignees in the external system.", "items": { "type": "string" }, "type": "array" }, "caseCloseTime": { - "description": "The time when the case was closed, as reported by the external system.", "format": "google-datetime", "type": "string" }, "caseCreateTime": { - "description": "The time when the case was created, as reported by the external system.", "format": "google-datetime", "type": "string" }, "casePriority": { - "description": "The priority of the finding's corresponding case in the external system.", "type": "string" }, "caseSla": { - "description": "The SLA of the finding's corresponding case in the external system.", "format": "google-datetime", "type": "string" }, "caseUri": { - "description": "The link to the finding's corresponding case in the external system.", "type": "string" }, "externalSystemUpdateTime": { - "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", "type": "string" }, "externalUid": { - "description": "The identifier that's used to track the finding's corresponding case in the external system.", "type": "string" }, "name": { - "description": "Full resource name of the external system, for example: \"organizations/1234/sources/5678/findings/123456/externalSystems/jira\", \"folders/1234/sources/5678/findings/123456/externalSystems/jira\", \"projects/1234/sources/5678/findings/123456/externalSystems/jira\"", "type": "string" }, "status": { - "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" }, "ticketInfo": { - "$ref": "TicketInfo", - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." + "$ref": "TicketInfo" } }, "type": "object" }, "GoogleCloudSecuritycenterV1MuteConfig": { - "description": "A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings.", "id": "GoogleCloudSecuritycenterV1MuteConfig", "properties": { "createTime": { - "description": "Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "A description of the mute config.", "type": "string" }, "displayName": { "deprecated": true, - "description": "The human readable name to be displayed for the mute config.", "type": "string" }, "expiryTime": { - "description": "Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings.", "format": "google-datetime", "type": "string" }, "filter": { - "description": "Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:`", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "type": "string" }, "type": { - "description": "Optional. The type of the mute config, which determines what type of mute state the config affects. The static mute state takes precedence over the dynamic mute state. Immutable after creation. STATIC by default if not set during creation.", "enum": [ "MUTE_CONFIG_TYPE_UNSPECIFIED", "STATIC", "DYNAMIC" ], "enumDescriptions": [ - "Unused.", - "A static mute config, which sets the static mute state of future matching findings to muted. Once the static mute state has been set, finding or config modifications will not affect the state.", - "A dynamic mute config, which is applied to existing and future matching findings, setting their dynamic mute state to \"muted\". If the config is updated or deleted, or a matching finding is updated, such that the finding doesn't match the config, the config will be removed from the finding, and the finding's dynamic mute state may become \"unmuted\" (unless other configs still match)." + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -9087,69 +8219,54 @@ "type": "object" }, "GoogleCloudSecuritycenterV1NotificationMessage": { - "description": "Cloud SCC's Notification", "id": "GoogleCloudSecuritycenterV1NotificationMessage", "properties": { "finding": { - "$ref": "Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV1Resource", - "description": "The Cloud resource tied to this notification's Finding." + "$ref": "GoogleCloudSecuritycenterV1Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV1Property": { - "description": "An individual name-value pair that defines a custom source property.", "id": "GoogleCloudSecuritycenterV1Property", "properties": { "name": { - "description": "Name of the property for the custom output.", "type": "string" }, "valueExpression": { - "$ref": "Expr", - "description": "The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks." + "$ref": "Expr" } }, "type": "object" }, "GoogleCloudSecuritycenterV1Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV1Resource", "properties": { "adcApplication": { - "$ref": "AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "AdcApplication" }, "adcApplicationTemplate": { - "$ref": "AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplication" }, "awsMetadata": { - "$ref": "AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "AwsMetadata" }, "azureMetadata": { - "$ref": "AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the resource resides in.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -9157,19 +8274,17 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "Folder" }, @@ -9177,95 +8292,75 @@ "type": "array" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "organization": { - "description": "Indicates which organization or tenant in the cloud provider the finding applies to.", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" }, "resourcePath": { - "$ref": "ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/projects/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The parent service or product from which the resource is provided, for example, GKE or SNS.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplication": { - "description": "The App Hub Application associated with the finding's resource.", "id": "GoogleCloudSecuritycenterV1ResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, @@ -9275,22 +8370,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -9299,11 +8390,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -9311,11 +8402,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -9324,11 +8413,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -9336,11 +8425,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceSelector": { - "description": "Resource for selecting resource type.", "id": "GoogleCloudSecuritycenterV1ResourceSelector", "properties": { "resourceTypes": { - "description": "The resource types to run the detector on.", "items": { "type": "string" }, @@ -9350,11 +8437,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceValueConfig": { - "description": "A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations.", "id": "GoogleCloudSecuritycenterV1ResourceValueConfig", "properties": { "cloudProvider": { - "description": "Cloud provider this configuration applies to", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -9362,40 +8447,34 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Timestamp this resource value configuration was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Description of the resource value configuration.", "type": "string" }, "name": { - "description": "Name for the resource value configuration", "type": "string" }, "resourceLabelsSelector": { "additionalProperties": { "type": "string" }, - "description": "List of resource labels to search for, evaluated with `AND`. For example, `\"resource_labels_selector\": {\"key\": \"value\", \"env\": \"prod\"}` will match resources with labels \"key\": \"value\" `AND` \"env\": \"prod\" https://cloud.google.com/resource-manager/docs/creating-managing-labels", "type": "object" }, "resourceType": { - "description": "Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, \"storage.googleapis.com/Bucket\" with resource_value \"HIGH\" will apply \"HIGH\" value only to \"storage.googleapis.com/Bucket\" resources.", "type": "string" }, "resourceValue": { - "description": "Required. Resource value level this expression represents", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -9404,31 +8483,27 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "Project or folder to scope this configuration to. For example, \"project/456\" would apply this configuration only to resources in \"project/456\" scope will be checked with `AND` of other resources.", "type": "string" }, "sensitiveDataProtectionMapping": { - "$ref": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping", - "description": "A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. \"bigquery.googleapis.com/Dataset\"." + "$ref": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping" }, "tagValues": { - "description": "Required. Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of \"tagValues/123\". Example: `[ \"tagValues/123\", \"tagValues/456\", \"tagValues/789\" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing", "items": { "type": "string" }, "type": "array" }, "updateTime": { - "description": "Output only. Timestamp this resource value configuration was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -9437,16 +8512,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -9454,10 +8526,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -9465,16 +8537,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule": { - "description": "Represents an instance of a Security Health Analytics custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by the child folders and projects.", "id": "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule", "properties": { "ancestorModule": { - "description": "Output only. If empty, indicates that the custom module was created in the organization, folder, or project in which you are viewing the custom module. Otherwise, `ancestor_module` specifies the organization or folder from which the custom module is inherited.", "readOnly": true, "type": "string" }, "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -9482,23 +8551,20 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services (AWS).", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "customConfig": { - "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "The user specified custom configuration for the module." + "$ref": "GoogleCloudSecuritycenterV1CustomConfig" }, "displayName": { - "description": "The display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only.", "type": "string" }, "enablementState": { - "description": "The enablement state of the custom module.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", @@ -9506,24 +8572,21 @@ "INHERITED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given CRM resource.", - "The module is disabled at the given CRM resource.", - "State is inherited from an ancestor module. The module will either be effectively ENABLED or DISABLED based on its closest non-inherited ancestor module in the CRM hierarchy." + "", + "", + "", + "" ], "type": "string" }, "lastEditor": { - "description": "Output only. The editor that last updated the custom module.", "readOnly": true, "type": "string" }, "name": { - "description": "Immutable. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}\" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits.", "type": "string" }, "updateTime": { - "description": "Output only. The time at which the custom module was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -9532,11 +8595,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping": { - "description": "Resource value mapping for Sensitive Data Protection findings. If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration.", "id": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping", "properties": { "highSensitivityMapping": { - "description": "Resource value mapping for high-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -9545,16 +8606,15 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "mediumSensitivityMapping": { - "description": "Resource value mapping for medium-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -9563,11 +8623,11 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" } @@ -9575,16 +8635,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -9592,10 +8649,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -9603,50 +8660,39 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV1p1beta1Finding", "properties": { "canonicalName": { - "description": "The canonical name of the finding. It's either \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\" or \"projects/{project_number}/sources/{source_id}/findings/{finding_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "eventTime": { - "description": "The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. Must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "name": { - "description": "The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\"", "type": "string" }, "parent": { - "description": "The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV1p1beta1SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -9655,11 +8701,11 @@ "LOW" ], "enumDescriptions": [ - "No severity specified. The default value.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -9667,20 +8713,18 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" } @@ -9688,45 +8732,36 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "GoogleCloudSecuritycenterV1p1beta1Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1NotificationMessage": { - "description": "Security Command Center's Notification", "id": "GoogleCloudSecuritycenterV1p1beta1NotificationMessage", "properties": { "finding": { - "$ref": "GoogleCloudSecuritycenterV1p1beta1Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "GoogleCloudSecuritycenterV1p1beta1Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV1p1beta1Resource", - "description": "The Cloud resource tied to the notification." + "$ref": "GoogleCloudSecuritycenterV1p1beta1Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV1p1beta1Resource", "properties": { "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "GoogleCloudSecuritycenterV1p1beta1Folder" }, @@ -9734,39 +8769,31 @@ "type": "array" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project id that the resource belongs to.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -9774,10 +8801,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -9785,122 +8812,96 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV1p1beta1SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"folders/{folder_id}/assets/{asset_id}/securityMarks\" \"projects/{project_number}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks\"", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Access": { - "description": "Represents an access event.", "id": "GoogleCloudSecuritycenterV2Access", "properties": { "callerIp": { - "description": "Caller's IP address, such as \"1.1.1.1\".", "type": "string" }, "callerIpGeo": { - "$ref": "GoogleCloudSecuritycenterV2Geolocation", - "description": "The caller IP's geolocation, which identifies where the call came from." + "$ref": "GoogleCloudSecuritycenterV2Geolocation" }, "methodName": { - "description": "The method that the service account called, e.g. \"SetIamPolicy\".", "type": "string" }, "principalEmail": { - "description": "Associated email, such as \"foo@google.com\". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id).", "type": "string" }, "principalSubject": { - "description": "A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name}[{subject}]`.", "type": "string" }, "serviceAccountDelegationInfo": { - "description": "The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events.", "items": { "$ref": "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo" }, "type": "array" }, "serviceAccountKeyName": { - "description": "The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: \"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\". ", "type": "string" }, "serviceName": { - "description": "This is the API service that the service account made a call to, e.g. \"iam.googleapis.com\"", "type": "string" }, "userAgent": { - "description": "The caller's user agent string associated with the finding.", "type": "string" }, "userAgentFamily": { - "description": "Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application.", "type": "string" }, "userName": { - "description": "A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AccessReview": { - "description": "Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding.", "id": "GoogleCloudSecuritycenterV2AccessReview", "properties": { "group": { - "description": "The API group of the resource. \"*\" means all.", "type": "string" }, "name": { - "description": "The name of the resource being requested. Empty means all.", "type": "string" }, "ns": { - "description": "Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by \"\" (empty).", "type": "string" }, "resource": { - "description": "The optional resource type requested. \"*\" means all.", "type": "string" }, "subresource": { - "description": "The optional subresource type.", "type": "string" }, "verb": { - "description": "A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. \"*\" means all.", "type": "string" }, "version": { - "description": "The API version of the resource. \"*\" means all.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdaptiveProtection": { - "description": "Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).", "id": "GoogleCloudSecuritycenterV2AdaptiveProtection", "properties": { "confidence": { - "description": "A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation.", "format": "double", "type": "number" } @@ -9908,48 +8909,39 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AffectedResources": { - "description": "Details about resources affected by this finding.", "id": "GoogleCloudSecuritycenterV2AffectedResources", "properties": { "count": { - "description": "The count of resources affected by the finding.", "format": "int64", "type": "string" } @@ -9957,20 +8949,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AgentDataAccessEvent": { - "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", "id": "GoogleCloudSecuritycenterV2AgentDataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -9978,26 +8966,23 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalSubject": { - "description": "The agent principal that accessed the data.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AiModel": { - "description": "Contains information about the AI model associated with the finding.", "id": "GoogleCloudSecuritycenterV2AiModel", "properties": { "deploymentPlatform": { - "description": "The platform on which the model is deployed.", "enum": [ "DEPLOYMENT_PLATFORM_UNSPECIFIED", "VERTEX_AI", @@ -10006,51 +8991,42 @@ "FINE_TUNED_MODEL" ], "enumDescriptions": [ - "Unspecified deployment platform.", - "Vertex AI.", - "Google Kubernetes Engine.", - "Google Compute Engine.", - "Fine tuned model." + "", + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The user defined display name of model. Ex. baseline-classification-model", "type": "string" }, "domain": { - "description": "The domain of the model, for example, “image-classification”.", "type": "string" }, "library": { - "description": "The name of the model library, for example, “transformers”.", "type": "string" }, "location": { - "description": "The region in which the model is used, for example, “us-central1”.", "type": "string" }, "name": { - "description": "The name of the AI model, for example, \"gemini:1.0.0\".", "type": "string" }, "publisher": { - "description": "The publisher of the model, for example, “google” or “nvidia”.", "type": "string" }, "usageCategory": { - "description": "The purpose of the model, for example, \"Inteference\" or \"Training\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Allowed": { - "description": "Allowed IP rule.", "id": "GoogleCloudSecuritycenterV2Allowed", "properties": { "ipRules": { - "description": "Optional. Optional list of allowed IP rules.", "items": { "$ref": "GoogleCloudSecuritycenterV2IpRule" }, @@ -10060,59 +9036,49 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Application": { - "description": "Represents an application associated with a finding.", "id": "GoogleCloudSecuritycenterV2Application", "properties": { "baseUri": { - "description": "The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`.", "type": "string" }, "fullUri": { - "description": "The full URI with payload that could be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ArtifactGuardPolicies": { - "description": "Represents the result of evaluating artifact guard policies.", "id": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies", "properties": { "failingPolicies": { - "description": "A list of failing policies.", "items": { "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicy" }, "type": "array" }, "resourceId": { - "description": "The ID of the resource that has policies configured for it.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ArtifactGuardPolicy": { - "description": "Represents an artifact guard policy.", "id": "GoogleCloudSecuritycenterV2ArtifactGuardPolicy", "properties": { "failureReason": { - "description": "The reason for the policy failure, for example, \"severity=HIGH AND max_vuln_count=2\".", "type": "string" }, "policyId": { - "description": "The ID of the failing policy, for example, \"organizations/3392779/locations/global/policies/prod-policy\".", "type": "string" }, "type": { - "description": "The type of the policy evaluation.", "enum": [ "ARTIFACT_GUARD_POLICY_TYPE_UNSPECIFIED", "VULNERABILITY" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Vulnerability type." + "", + "" ], "type": "string" } @@ -10120,32 +9086,26 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Attack": { - "description": "Information about DDoS attack volume and classification.", "id": "GoogleCloudSecuritycenterV2Attack", "properties": { "classification": { - "description": "Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.", "type": "string" }, "volumeBps": { "deprecated": true, - "description": "Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead.", "format": "int32", "type": "integer" }, "volumeBpsLong": { - "description": "Total BPS (bytes per second) volume of attack.", "format": "int64", "type": "string" }, "volumePps": { "deprecated": true, - "description": "Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead.", "format": "int32", "type": "integer" }, "volumePpsLong": { - "description": "Total PPS (packets per second) volume of attack.", "format": "int64", "type": "string" } @@ -10153,49 +9113,41 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AttackExposure": { - "description": "An attack exposure contains the results of an attack path simulation run.", "id": "GoogleCloudSecuritycenterV2AttackExposure", "properties": { "attackExposureResult": { - "description": "The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789`", "type": "string" }, "exposedHighValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedLowValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedMediumValueResourcesCount": { - "description": "The number of medium value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "latestCalculationTime": { - "description": "The most recent time the attack exposure was updated on this finding.", "format": "google-datetime", "type": "string" }, "score": { - "description": "A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate.", "format": "double", "type": "number" }, "state": { - "description": "Output only. What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not.", "enum": [ "STATE_UNSPECIFIED", "CALCULATED", "NOT_CALCULATED" ], "enumDescriptions": [ - "The state is not specified.", - "The attack exposure has been calculated.", - "The attack exposure has not been calculated." + "", + "", + "" ], "readOnly": true, "type": "string" @@ -10204,34 +9156,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AwsAccount": { - "description": "An AWS account that is a member of an organization.", "id": "GoogleCloudSecuritycenterV2AwsAccount", "properties": { "id": { - "description": "The unique identifier (ID) of the account, containing exactly 12 digits.", "type": "string" }, "name": { - "description": "The friendly name of this account.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AwsMetadata": { - "description": "AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services.", "id": "GoogleCloudSecuritycenterV2AwsMetadata", "properties": { "account": { - "$ref": "GoogleCloudSecuritycenterV2AwsAccount", - "description": "The AWS account associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AwsAccount" }, "organization": { - "$ref": "GoogleCloudSecuritycenterV2AwsOrganization", - "description": "The AWS organization associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AwsOrganization" }, "organizationalUnits": { - "description": "A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2AwsOrganizationalUnit" }, @@ -10241,217 +9186,174 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AwsOrganization": { - "description": "An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies.", "id": "GoogleCloudSecuritycenterV2AwsOrganization", "properties": { "id": { - "description": "The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires \"o-\" followed by from 10 to 32 lowercase letters or digits.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AwsOrganizationalUnit": { - "description": "An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs.", "id": "GoogleCloudSecuritycenterV2AwsOrganizationalUnit", "properties": { "id": { - "description": "The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires \"ou-\" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second \"-\" dash and from 8 to 32 additional lowercase letters or digits. For example, \"ou-ab12-cd34ef56\".", "type": "string" }, "name": { - "description": "The friendly name of the OU.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureManagementGroup": { - "description": "Represents an Azure management group.", "id": "GoogleCloudSecuritycenterV2AzureManagementGroup", "properties": { "displayName": { - "description": "The display name of the Azure management group.", "type": "string" }, "id": { - "description": "The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureMetadata": { - "description": "Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure.", "id": "GoogleCloudSecuritycenterV2AzureMetadata", "properties": { "managementGroups": { - "description": "A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2AzureManagementGroup" }, "type": "array" }, "resourceGroup": { - "$ref": "GoogleCloudSecuritycenterV2AzureResourceGroup", - "description": "The Azure resource group associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureResourceGroup" }, "subscription": { - "$ref": "GoogleCloudSecuritycenterV2AzureSubscription", - "description": "The Azure subscription associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureSubscription" }, "tenant": { - "$ref": "GoogleCloudSecuritycenterV2AzureTenant", - "description": "The Azure Entra tenant associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureTenant" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureResourceGroup": { - "description": "Represents an Azure resource group.", "id": "GoogleCloudSecuritycenterV2AzureResourceGroup", "properties": { "id": { - "description": "The ID of the Azure resource group.", "type": "string" }, "name": { - "description": "The name of the Azure resource group. This is not a UUID.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureSubscription": { - "description": "Represents an Azure subscription.", "id": "GoogleCloudSecuritycenterV2AzureSubscription", "properties": { "displayName": { - "description": "The display name of the Azure subscription.", "type": "string" }, "id": { - "description": "The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureTenant": { - "description": "Represents a Microsoft Entra tenant.", "id": "GoogleCloudSecuritycenterV2AzureTenant", "properties": { "displayName": { - "description": "The display name of the Azure tenant.", "type": "string" }, "id": { - "description": "The ID of the Microsoft Entra tenant, for example, \"a11aaa11-aa11-1aa1-11aa-1aaa11a\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2BackupDisasterRecovery": { - "description": "Information related to Google Cloud Backup and DR Service findings.", "id": "GoogleCloudSecuritycenterV2BackupDisasterRecovery", "properties": { "appliance": { - "description": "The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`.", "type": "string" }, "applications": { - "description": "The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.", "items": { "type": "string" }, "type": "array" }, "backupCreateTime": { - "description": "The timestamp at which the Backup and DR backup was created.", "format": "google-datetime", "type": "string" }, "backupTemplate": { - "description": "The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`.", "type": "string" }, "backupType": { - "description": "The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`.", "type": "string" }, "host": { - "description": "The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`.", "type": "string" }, "policies": { - "description": "The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`.", "items": { "type": "string" }, "type": "array" }, "policyOptions": { - "description": "The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`.", "items": { "type": "string" }, "type": "array" }, "profile": { - "description": "The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`.", "type": "string" }, "storagePool": { - "description": "The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2BigQueryExport": { - "description": "Configures how to deliver Findings to BigQuery Instance.", "id": "GoogleCloudSecuritycenterV2BigQueryExport", "properties": { "createTime": { - "description": "Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The resource name of the Cloud KMS `CryptoKey` used to protect this configuration's data, if configured during Security Command Center activation.", "readOnly": true, "type": "string" }, "dataset": { - "description": "The dataset to write findings' updates to. Its format is \"projects/[project_id]/datasets/[bigquery_dataset_id]\". BigQuery dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).", "type": "string" }, "description": { - "description": "The description of the export (max of 1024 characters).", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. The following list shows some examples: + `organizations/{organization_id}/locations/{location_id}/bigQueryExports/{export_id}` + `folders/{folder_id}/locations/{location_id}/bigQueryExports/{export_id}` + `projects/{project_id}/locations/{location_id}/bigQueryExports/{export_id}` This field is provided in responses, and is ignored when provided in create requests.", "type": "string" }, "principal": { - "description": "Output only. The service account that needs permission to create table and upload data to the BigQuery dataset.", "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -10460,23 +9362,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Binding": { - "description": "Represents a Kubernetes RoleBinding or ClusterRoleBinding.", "id": "GoogleCloudSecuritycenterV2Binding", "properties": { "name": { - "description": "Name for the binding.", "type": "string" }, "ns": { - "description": "Namespace for the binding.", "type": "string" }, "role": { - "$ref": "GoogleCloudSecuritycenterV2Role", - "description": "The Role or ClusterRole referenced by the binding." + "$ref": "GoogleCloudSecuritycenterV2Role" }, "subjects": { - "description": "Represents one or more subjects that are bound to the role. Not always available for PATCH requests.", "items": { "$ref": "GoogleCloudSecuritycenterV2Subject" }, @@ -10486,17 +9383,14 @@ "type": "object" }, "GoogleCloudSecuritycenterV2BulkMuteFindingsResponse": { - "description": "The response to a BulkMute request. Contains the LRO information.", "id": "GoogleCloudSecuritycenterV2BulkMuteFindingsResponse", "properties": {}, "type": "object" }, "GoogleCloudSecuritycenterV2Chokepoint": { - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).", "id": "GoogleCloudSecuritycenterV2Chokepoint", "properties": { "relatedFindings": { - "description": "List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings.", "items": { "type": "string" }, @@ -10506,65 +9400,53 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudArmor": { - "description": "Fields related to Google Cloud Armor findings.", "id": "GoogleCloudSecuritycenterV2CloudArmor", "properties": { "adaptiveProtection": { - "$ref": "GoogleCloudSecuritycenterV2AdaptiveProtection", - "description": "Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview)." + "$ref": "GoogleCloudSecuritycenterV2AdaptiveProtection" }, "attack": { - "$ref": "GoogleCloudSecuritycenterV2Attack", - "description": "Information about DDoS attack volume and classification." + "$ref": "GoogleCloudSecuritycenterV2Attack" }, "duration": { - "description": "Duration of attack from the start until the current moment (updated every 5 minutes).", "format": "google-duration", "type": "string" }, "requests": { - "$ref": "GoogleCloudSecuritycenterV2Requests", - "description": "Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview)." + "$ref": "GoogleCloudSecuritycenterV2Requests" }, "securityPolicy": { - "$ref": "GoogleCloudSecuritycenterV2SecurityPolicy", - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityPolicy" }, "threatVector": { - "description": "Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, \"L3_4\" for Layer 3 and Layer 4 DDoS attacks, or \"L_7\" for Layer 7 DDoS attacks.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2CloudControl": { - "description": "CloudControl associated with the finding.", "id": "GoogleCloudSecuritycenterV2CloudControl", "properties": { "cloudControlName": { - "description": "Name of the CloudControl associated with the finding.", "type": "string" }, "policyType": { - "description": "Policy type of the CloudControl", "type": "string" }, "type": { - "description": "Type of cloud control.", "enum": [ "CLOUD_CONTROL_TYPE_UNSPECIFIED", "BUILT_IN", "CUSTOM" ], "enumDescriptions": [ - "Unspecified.", - "Built in Cloud Control.", - "Custom Cloud Control." + "", + "", + "" ], "type": "string" }, "version": { - "description": "Version of the Cloud Control", "format": "int32", "type": "integer" } @@ -10572,31 +9454,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudDlpDataProfile": { - "description": "The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding.", "id": "GoogleCloudSecuritycenterV2CloudDlpDataProfile", "properties": { "dataProfile": { - "description": "Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`.", "type": "string" }, "infoTypes": { - "description": "Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type.", "items": { "$ref": "GoogleCloudSecuritycenterV2InfoType" }, "type": "array" }, "parentType": { - "description": "The resource hierarchy level at which the data profile was generated.", "enum": [ "PARENT_TYPE_UNSPECIFIED", "ORGANIZATION", "PROJECT" ], "enumDescriptions": [ - "Unspecified parent type.", - "Organization-level configurations.", - "Project-level configurations." + "", + "", + "" ], "type": "string" } @@ -10604,47 +9482,37 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudDlpInspection": { - "description": "Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding.", "id": "GoogleCloudSecuritycenterV2CloudDlpInspection", "properties": { "fullScan": { - "description": "Whether Cloud DLP scanned the complete resource or a sampled subset.", "type": "boolean" }, "infoType": { - "description": "The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.", "type": "string" }, "infoTypeCount": { - "description": "The number of times Cloud DLP found this infoType within this job and resource.", "format": "int64", "type": "string" }, "inspectJob": { - "description": "Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2CloudLoggingEntry": { - "description": "Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)", "id": "GoogleCloudSecuritycenterV2CloudLoggingEntry", "properties": { "insertId": { - "description": "A unique identifier for the log entry.", "type": "string" }, "logId": { - "description": "The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity` Note that this field is not URL-encoded, unlike in `LogEntry`.", "type": "string" }, "resourceContainer": { - "description": "The organization, folder, or project of the monitored resource that produced this log entry.", "type": "string" }, "timestamp": { - "description": "The time the event described by the log entry occurred.", "format": "google-datetime", "type": "string" } @@ -10652,44 +9520,36 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Compliance": { - "description": "Contains compliance information about a security standard indicating unmet recommendations.", "id": "GoogleCloudSecuritycenterV2Compliance", "properties": { "ids": { - "description": "Policies within the standard or benchmark, for example, A.12.4.1", "items": { "type": "string" }, "type": "array" }, "standard": { - "description": "Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP.", "type": "string" }, "version": { - "description": "Version of the standard or benchmark, for example, 1.1", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ComplianceDetails": { - "description": "Compliance Details associated with the finding.", "id": "GoogleCloudSecuritycenterV2ComplianceDetails", "properties": { "cloudControl": { - "$ref": "GoogleCloudSecuritycenterV2CloudControl", - "description": "CloudControl associated with the finding" + "$ref": "GoogleCloudSecuritycenterV2CloudControl" }, "cloudControlDeploymentNames": { - "description": "Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier", "items": { "type": "string" }, "type": "array" }, "frameworks": { - "description": "Details of Frameworks associated with the finding", "items": { "$ref": "GoogleCloudSecuritycenterV2Framework" }, @@ -10699,20 +9559,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Connection": { - "description": "Contains information about the IP connection associated with the finding.", "id": "GoogleCloudSecuritycenterV2Connection", "properties": { "destinationIp": { - "description": "Destination IP address. Not present for sockets that are listening and not connected.", "type": "string" }, "destinationPort": { - "description": "Destination port. Not present for sockets that are listening and not connected.", "format": "int32", "type": "integer" }, "protocol": { - "description": "IANA Internet Protocol Number such as TCP(6) and UDP(17).", "enum": [ "PROTOCOL_UNSPECIFIED", "ICMP", @@ -10722,21 +9578,19 @@ "ESP" ], "enumDescriptions": [ - "Unspecified protocol (not HOPOPT).", - "Internet Control Message Protocol.", - "Transmission Control Protocol.", - "User Datagram Protocol.", - "Generic Routing Encapsulation.", - "Encap Security Payload." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "sourceIp": { - "description": "Source IP address.", "type": "string" }, "sourcePort": { - "description": "Source port.", "format": "int32", "type": "integer" } @@ -10744,22 +9598,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Contact": { - "description": "The email address of a contact.", "id": "GoogleCloudSecuritycenterV2Contact", "properties": { "email": { - "description": "An email address. For example, \"`person123@company.com`\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ContactDetails": { - "description": "Details about specific contacts", "id": "GoogleCloudSecuritycenterV2ContactDetails", "properties": { "contacts": { - "description": "A list of contacts", "items": { "$ref": "GoogleCloudSecuritycenterV2Contact" }, @@ -10769,66 +9619,53 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Container": { - "description": "Container associated with the finding.", "id": "GoogleCloudSecuritycenterV2Container", "properties": { "createTime": { - "description": "The time that the container was created.", "format": "google-datetime", "type": "string" }, "imageId": { - "description": "Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest.", "type": "string" }, "labels": { - "description": "Container labels, as provided by the container runtime.", "items": { "$ref": "GoogleCloudSecuritycenterV2Label" }, "type": "array" }, "name": { - "description": "Name of the container.", "type": "string" }, "uri": { - "description": "Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Control": { - "description": "Compliance control associated with the finding.", "id": "GoogleCloudSecuritycenterV2Control", "properties": { "controlName": { - "description": "Name of the Control", "type": "string" }, "displayName": { - "description": "Display name of the control. For example, AU-02.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Cve": { - "description": "CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability.", "id": "GoogleCloudSecuritycenterV2Cve", "properties": { "cvssv3": { - "$ref": "GoogleCloudSecuritycenterV2Cvssv3", - "description": "Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document" + "$ref": "GoogleCloudSecuritycenterV2Cvssv3" }, "exploitReleaseDate": { - "description": "Date the first publicly available exploit or PoC was released.", "format": "google-datetime", "type": "string" }, "exploitationActivity": { - "description": "The exploitation activity of the vulnerability in the wild.", "enum": [ "EXPLOITATION_ACTIVITY_UNSPECIFIED", "WIDE", @@ -10838,26 +9675,23 @@ "NO_KNOWN" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation has been reported or confirmed to widely occur.", - "Limited reported or confirmed exploitation activities.", - "Exploit is publicly available.", - "No known exploitation activity, but has a high potential for exploitation.", - "No known exploitation activity." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "firstExploitationDate": { - "description": "Date of the earliest known exploitation.", "format": "google-datetime", "type": "string" }, "id": { - "description": "The unique identifier for the vulnerability. e.g. CVE-2021-34527", "type": "string" }, "impact": { - "description": "The potential impact of the vulnerability if it was to be exploited.", "enum": [ "RISK_RATING_UNSPECIFIED", "LOW", @@ -10866,56 +9700,49 @@ "CRITICAL" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation would have little to no security impact.", - "Exploitation would enable attackers to perform activities, or could allow attackers to have a direct impact, but would require additional steps.", - "Exploitation would enable attackers to have a notable direct impact without needing to overcome any major mitigating factors.", - "Exploitation would fundamentally undermine the security of affected systems, enable actors to perform significant attacks with minimal effort, with little to no mitigating factors to overcome." + "", + "", + "", + "", + "" ], "type": "string" }, "observedInTheWild": { - "description": "Whether or not the vulnerability has been observed in the wild.", "type": "boolean" }, "references": { - "description": "Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527", "items": { "$ref": "GoogleCloudSecuritycenterV2Reference" }, "type": "array" }, "upstreamFixAvailable": { - "description": "Whether upstream fix is available for the CVE.", "type": "boolean" }, "zeroDay": { - "description": "Whether or not the vulnerability was zero day when the finding was published.", "type": "boolean" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Cvssv3": { - "description": "Common Vulnerability Scoring System version 3.", "id": "GoogleCloudSecuritycenterV2Cvssv3", "properties": { "attackComplexity": { - "description": "This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", "ATTACK_COMPLEXITY_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "Specialized access conditions or extenuating circumstances do not exist. An attacker can expect repeatable success when attacking the vulnerable component.", - "A successful attack depends on conditions beyond the attacker's control. That is, a successful attack cannot be accomplished at will, but requires the attacker to invest in some measurable amount of effort in preparation or execution against the vulnerable component before a successful attack can be expected." + "", + "", + "" ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -10924,16 +9751,15 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.", - "The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.", - "The vulnerable component is not bound to the network stack and the attacker's path is via read/write/execute capabilities.", - "The attack requires the attacker to physically touch or manipulate the vulnerable component." + "", + "", + "", + "", + "" ], "type": "string" }, "availabilityImpact": { - "description": "This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -10941,20 +9767,18 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "baseScore": { - "description": "The base score is a function of the base metric scores.", "format": "double", "type": "number" }, "confidentialityImpact": { - "description": "This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -10962,15 +9786,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "integrityImpact": { - "description": "This metric measures the impact to integrity of a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -10978,15 +9801,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "privilegesRequired": { - "description": "This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -10994,38 +9816,36 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files of the vulnerable system to carry out an attack.", - "The attacker requires privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. Alternatively, an attacker with Low privileges has the ability to access only non-sensitive resources.", - "The attacker requires privileges that provide significant (e.g., administrative) control over the vulnerable component allowing access to component-wide settings and files." + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Invalid value.", - "An exploited vulnerability can only affect resources managed by the same security authority.", - "An exploited vulnerability can affect resources beyond the security scope managed by the security authority of the vulnerable component." + "", + "", + "" ], "type": "string" }, "userInteraction": { - "description": "This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", "USER_INTERACTION_REQUIRED" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable system can be exploited without interaction from any user.", - "Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited." + "", + "", + "" ], "type": "string" } @@ -11033,15 +9853,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Cwe": { - "description": "CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/).", "id": "GoogleCloudSecuritycenterV2Cwe", "properties": { "id": { - "description": "The CWE identifier, e.g. CWE-94", "type": "string" }, "references": { - "description": "Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html", "items": { "$ref": "GoogleCloudSecuritycenterV2Reference" }, @@ -11051,20 +9868,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2DataAccessEvent": { - "description": "Details about a data access attempt made by a principal not authorized under applicable data security policy.", "id": "GoogleCloudSecuritycenterV2DataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -11072,35 +9885,30 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DataFlowEvent": { - "description": "Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy.", "id": "GoogleCloudSecuritycenterV2DataFlowEvent", "properties": { "eventId": { - "description": "Unique identifier for data flow event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data flow event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal for the data flow event.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -11108,40 +9916,34 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other.", "type": "string" }, "violatedLocation": { - "description": "Non-compliant location of the principal or the data destination.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent": { - "description": "Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments.", "id": "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent", "properties": { "dataObjectCount": { - "description": "Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000.", "format": "int64", "type": "string" }, "eventDetectionTime": { - "description": "Timestamp indicating when the event was detected.", "format": "google-datetime", "type": "string" }, "eventType": { - "description": "Type of the DRD event.", "enum": [ "EVENT_TYPE_UNSPECIFIED", "EVENT_TYPE_MAX_TTL_EXCEEDED", @@ -11157,21 +9959,19 @@ false ], "enumDescriptions": [ - "Unspecified event type.", - "Deprecated: This field is pending removal. Use EVENT_TYPE_MAX_TTL_FROM_CREATION or EVENT_TYPE_MAX_TTL_FROM_LAST_MODIFICATION instead.", - "Max TTL from the asset's creation time.", - "Max TTL from the asset's last modification time.", - "Min TTL from the asset's creation time." + "", + "", + "", + "", + "" ], "type": "string" }, "maxRetentionAllowed": { - "description": "Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days.", "format": "google-duration", "type": "string" }, "minRetentionAllowed": { - "description": "Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION.", "format": "google-duration", "type": "string" } @@ -11179,64 +9979,51 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Database": { - "description": "Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided.", "id": "GoogleCloudSecuritycenterV2Database", "properties": { "displayName": { - "description": "The human-readable name of the database that the user connected to.", "type": "string" }, "grantees": { - "description": "The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory.", "type": "string" }, "query": { - "description": "The SQL statement that is associated with the database access.", "type": "string" }, "userName": { - "description": "The username used to connect to the database. The username might not be an IAM principal and does not have a set format.", "type": "string" }, "version": { - "description": "The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Dataset": { - "description": "Vertex AI dataset associated with the finding.", "id": "GoogleCloudSecuritycenterV2Dataset", "properties": { "displayName": { - "description": "The user defined display name of dataset, e.g. plants-dataset", "type": "string" }, "name": { - "description": "Resource name of the dataset, e.g. projects/{project}/locations/{location}/datasets/2094040236064505856", "type": "string" }, "source": { - "description": "Data source, such as a BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Denied": { - "description": "Denied IP rule.", "id": "GoogleCloudSecuritycenterV2Denied", "properties": { "ipRules": { - "description": "Optional. Optional list of denied IP rules.", "items": { "$ref": "GoogleCloudSecuritycenterV2IpRule" }, @@ -11246,15 +10033,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Detection": { - "description": "Memory hash detection contributing to the binary family match.", "id": "GoogleCloudSecuritycenterV2Detection", "properties": { "binary": { - "description": "The name of the binary associated with the memory hash signature detection.", "type": "string" }, "percentPagesMatched": { - "description": "The percentage of memory page hashes in the signature that were matched.", "format": "double", "type": "number" } @@ -11262,35 +10046,29 @@ "type": "object" }, "GoogleCloudSecuritycenterV2DiscoveredWorkload": { - "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", "id": "GoogleCloudSecuritycenterV2DiscoveredWorkload", "properties": { "confidence": { - "description": "The confidence in detection of this workload.", "enum": [ "CONFIDENCE_UNSPECIFIED", "CONFIDENCE_HIGH" ], "enumDescriptions": [ - "Unspecified confidence level.", - "High confidence in detection of a workload." + "", + "" ], "type": "string" }, "detectedRelevantHardware": { - "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", "type": "boolean" }, "detectedRelevantKeywords": { - "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", "type": "boolean" }, "detectedRelevantPackages": { - "description": "A boolean flag set to true if installed packages strongly predict the workload type.", "type": "boolean" }, "workloadType": { - "description": "The type of workload.", "enum": [ "WORKLOAD_TYPE_UNSPECIFIED", "MCP_SERVER", @@ -11298,10 +10076,10 @@ "AGENT" ], "enumDescriptions": [ - "Unspecified workload type", - "A workload of type MCP Server", - "A workload of type AI Inference", - "A workload of type LLM Agent" + "", + "", + "", + "" ], "type": "string" } @@ -11309,100 +10087,82 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Disk": { - "description": "Contains information about the disk associated with the finding.", "id": "GoogleCloudSecuritycenterV2Disk", "properties": { "name": { - "description": "The name of the disk, for example, \"https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DiskPath": { - "description": "Path of the file in terms of underlying disk/partition identifiers.", "id": "GoogleCloudSecuritycenterV2DiskPath", "properties": { "partitionUuid": { - "description": "UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)", "type": "string" }, "relativePath": { - "description": "Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DynamicMuteRecord": { - "description": "The record of a dynamic mute rule that matches the finding.", "id": "GoogleCloudSecuritycenterV2DynamicMuteRecord", "properties": { "matchTime": { - "description": "When the dynamic mute rule first matched the finding.", "format": "google-datetime", "type": "string" }, "muteConfig": { - "description": "The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2EnvironmentVariable": { - "description": "A name-value pair representing an environment variable used in an operating system process.", "id": "GoogleCloudSecuritycenterV2EnvironmentVariable", "properties": { "name": { - "description": "Environment variable name as a JSON encoded string.", "type": "string" }, "val": { - "description": "Environment variable value as a JSON encoded string.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ExfilResource": { - "description": "Resource where data was exfiltrated from or exfiltrated to.", "id": "GoogleCloudSecuritycenterV2ExfilResource", "properties": { "components": { - "description": "Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name).", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Exfiltration": { - "description": "Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to.", "id": "GoogleCloudSecuritycenterV2Exfiltration", "properties": { "sources": { - "description": "If there are multiple sources, then the data is considered \"joined\" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source.", "items": { "$ref": "GoogleCloudSecuritycenterV2ExfilResource" }, "type": "array" }, "targets": { - "description": "If there are multiple targets, each target would get a complete copy of the \"joined\" source data.", "items": { "$ref": "GoogleCloudSecuritycenterV2ExfilResource" }, "type": "array" }, "totalExfiltratedBytes": { - "description": "Total exfiltrated bytes processed for the entire job.", "format": "int64", "type": "string" } @@ -11410,205 +10170,162 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ExternalExposure": { - "description": "Details about the externally exposed resource associated with the finding.", "id": "GoogleCloudSecuritycenterV2ExternalExposure", "properties": { "backendBucket": { - "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", "type": "string" }, "backendService": { - "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "exposedApplication": { - "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", "type": "string" }, "exposedEndpoint": { - "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" }, "exposedService": { - "description": "The name and version of the service, for example, \"Jupyter Notebook 6.14.0\".", "type": "string" }, "forwardingRule": { - "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, "hostnameUri": { - "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", "type": "string" }, "httpResponse": { - "description": "The http response returned by the web application.", "items": { "$ref": "GoogleCloudSecuritycenterV2HttpResponse" }, "type": "array" }, "instanceGroup": { - "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, "internalBackendService": { - "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "loadBalancerFirewallPolicy": { - "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" }, "networkEndpointGroup": { - "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, "networkIngressFirewallPolicy": { - "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", "type": "string" }, "privateIpAddress": { - "description": "Private IP address of the exposed endpoint.", "type": "string" }, "privatePort": { - "description": "Port number associated with private IP address.", "type": "string" }, "pscNetworkAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", "type": "string" }, "pscServiceAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", "type": "string" }, "publicIpAddress": { - "description": "Public IP address of the exposed endpoint.", "type": "string" }, "publicPort": { - "description": "Public port number of the exposed endpoint.", "type": "string" }, "serviceFirewallPolicy": { - "description": "The full resource name of the firewall policy of the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ExternalSystem": { - "description": "Representation of third party SIEM/SOAR fields within SCC.", "id": "GoogleCloudSecuritycenterV2ExternalSystem", "properties": { "assignees": { - "description": "References primary/secondary etc assignees in the external system.", "items": { "type": "string" }, "type": "array" }, "caseCloseTime": { - "description": "The time when the case was closed, as reported by the external system.", "format": "google-datetime", "type": "string" }, "caseCreateTime": { - "description": "The time when the case was created, as reported by the external system.", "format": "google-datetime", "type": "string" }, "casePriority": { - "description": "The priority of the finding's corresponding case in the external system.", "type": "string" }, "caseSla": { - "description": "The SLA of the finding's corresponding case in the external system.", "format": "google-datetime", "type": "string" }, "caseUri": { - "description": "The link to the finding's corresponding case in the external system.", "type": "string" }, "externalSystemUpdateTime": { - "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", "type": "string" }, "externalUid": { - "description": "The identifier that's used to track the finding's corresponding case in the external system.", "type": "string" }, "name": { - "description": "Full resource name of the external system. The following list shows some examples: + `organizations/1234/sources/5678/findings/123456/externalSystems/jira` + `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira`", "type": "string" }, "status": { - "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" }, "ticketInfo": { - "$ref": "GoogleCloudSecuritycenterV2TicketInfo", - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." + "$ref": "GoogleCloudSecuritycenterV2TicketInfo" } }, "type": "object" }, "GoogleCloudSecuritycenterV2File": { - "description": "File information about the related binary/library used by an executable, or the script used by a script interpreter", "id": "GoogleCloudSecuritycenterV2File", "properties": { "contents": { - "description": "Prefix of the file contents as a JSON-encoded string.", "type": "string" }, "diskPath": { - "$ref": "GoogleCloudSecuritycenterV2DiskPath", - "description": "Path of the file in terms of underlying disk/partition identifiers." + "$ref": "GoogleCloudSecuritycenterV2DiskPath" }, "fileLoadState": { - "description": "The load state of the file.", "enum": [ "FILE_LOAD_STATE_UNSPECIFIED", "LOADED_BY_PROCESS", "NOT_LOADED_BY_PROCESS" ], "enumDescriptions": [ - "The file state is unspecified.", - "The file is being used by an active process at the time of scanning.", - "The file is not being used by any active process at the time of scanning." + "", + "", + "" ], "type": "string" }, "hashedSize": { - "description": "The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file.", "format": "int64", "type": "string" }, "operations": { - "description": "Operation(s) performed on a file.", "items": { "$ref": "GoogleCloudSecuritycenterV2FileOperation" }, "type": "array" }, "partiallyHashed": { - "description": "True when the hash covers only a prefix of the file.", "type": "boolean" }, "path": { - "description": "Absolute path of the file as a JSON encoded string.", "type": "string" }, "sha256": { - "description": "SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file.", "type": "string" }, "size": { - "description": "Size of the file in bytes.", "format": "int64", "type": "string" } @@ -11616,11 +10333,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2FileOperation": { - "description": "Operation(s) performed on a file.", "id": "GoogleCloudSecuritycenterV2FileOperation", "properties": { "type": { - "description": "The type of the operation", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "OPEN", @@ -11630,12 +10345,12 @@ "EXECUTE" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents an open operation.", - "Represents a read operation.", - "Represents a rename operation.", - "Represents a write operation.", - "Represents an execute operation." + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -11643,82 +10358,64 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV2Finding", "properties": { "access": { - "$ref": "GoogleCloudSecuritycenterV2Access", - "description": "Access details associated with the finding, such as more information on the caller, which method was accessed, and from where." + "$ref": "GoogleCloudSecuritycenterV2Access" }, "affectedResources": { - "$ref": "GoogleCloudSecuritycenterV2AffectedResources", - "description": "AffectedResources associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AffectedResources" }, "agentDataAccessEvents": { - "description": "Agent data access events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2AgentDataAccessEvent" }, "type": "array" }, "aiModel": { - "$ref": "GoogleCloudSecuritycenterV2AiModel", - "description": "The AI model associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AiModel" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2Application", - "description": "Represents an application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Application" }, "artifactGuardPolicies": { - "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies", - "description": "ArtifactGuardPolicies associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies" }, "attackExposure": { - "$ref": "GoogleCloudSecuritycenterV2AttackExposure", - "description": "The results of an attack path simulation relevant to this finding." + "$ref": "GoogleCloudSecuritycenterV2AttackExposure" }, "backupDisasterRecovery": { - "$ref": "GoogleCloudSecuritycenterV2BackupDisasterRecovery", - "description": "Fields related to Backup and DR findings." + "$ref": "GoogleCloudSecuritycenterV2BackupDisasterRecovery" }, "canonicalName": { - "description": "Output only. The canonical name of the finding. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` The prefix is the closest CRM ancestor of the resource associated with the finding.", "readOnly": true, "type": "string" }, "category": { - "description": "Immutable. The additional taxonomy group within findings from a given source. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "chokepoint": { - "$ref": "GoogleCloudSecuritycenterV2Chokepoint", - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests." + "$ref": "GoogleCloudSecuritycenterV2Chokepoint" }, "cloudArmor": { - "$ref": "GoogleCloudSecuritycenterV2CloudArmor", - "description": "Fields related to Cloud Armor findings." + "$ref": "GoogleCloudSecuritycenterV2CloudArmor" }, "cloudDlpDataProfile": { - "$ref": "GoogleCloudSecuritycenterV2CloudDlpDataProfile", - "description": "Cloud DLP data profile that is associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2CloudDlpDataProfile" }, "cloudDlpInspection": { - "$ref": "GoogleCloudSecuritycenterV2CloudDlpInspection", - "description": "Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2CloudDlpInspection" }, "complianceDetails": { - "$ref": "GoogleCloudSecuritycenterV2ComplianceDetails", - "description": "Details about the compliance implications of the finding." + "$ref": "GoogleCloudSecuritycenterV2ComplianceDetails" }, "compliances": { - "description": "Contains compliance information for security standards associated to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Compliance" }, "type": "array" }, "connections": { - "description": "Contains information about the IP connection associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Connection" }, @@ -11728,99 +10425,81 @@ "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV2ContactDetails" }, - "description": "Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { \"security\": { \"contacts\": [ { \"email\": \"person1@company.com\" }, { \"email\": \"person2@company.com\" } ] } }", "readOnly": true, "type": "object" }, "containers": { - "description": "Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "createTime": { - "description": "Output only. The time at which the finding was created in Security Command Center.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The name of the Cloud KMS key used to encrypt this finding, if any.", "readOnly": true, "type": "string" }, "dataAccessEvents": { - "description": "Data access events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataAccessEvent" }, "type": "array" }, "dataFlowEvents": { - "description": "Data flow events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataFlowEvent" }, "type": "array" }, "dataRetentionDeletionEvents": { - "description": "Data retention deletion events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent" }, "type": "array" }, "database": { - "$ref": "GoogleCloudSecuritycenterV2Database", - "description": "Database associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Database" }, "description": { - "description": "Contains more details about the finding.", "type": "string" }, "discoveredWorkload": { - "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload", - "description": "DiscoveredWorkload associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload" }, "disk": { - "$ref": "GoogleCloudSecuritycenterV2Disk", - "description": "Disk associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Disk" }, "eventTime": { - "description": "The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "exfiltration": { - "$ref": "GoogleCloudSecuritycenterV2Exfiltration", - "description": "Represents exfiltrations associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Exfiltration" }, "externalExposure": { - "$ref": "GoogleCloudSecuritycenterV2ExternalExposure", - "description": "External exposure associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2ExternalExposure" }, "externalSystems": { "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV2ExternalSystem" }, - "description": "Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.", "readOnly": true, "type": "object" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "files": { - "description": "File associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2File" }, "type": "array" }, "findingClass": { - "description": "The class of the finding.", "enum": [ "FINDING_CLASS_UNSPECIFIED", "THREAT", @@ -11836,79 +10515,67 @@ "SECRET" ], "enumDescriptions": [ - "Unspecified finding class.", - "Describes unwanted or malicious activity.", - "Describes a potential weakness in software that increases risk to Confidentiality & Integrity & Availability.", - "Describes a potential weakness in cloud resource/asset configuration that increases risk.", - "Describes a security observation that is for informational purposes.", - "Describes an error that prevents some SCC functionality.", - "Describes a potential security risk due to a change in the security posture.", - "Describes a combination of security issues that represent a more severe security problem when taken together.", - "Describes a potential security risk to data assets that contain sensitive data.", - "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet.", - "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "groupMemberships": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.", "items": { "$ref": "GoogleCloudSecuritycenterV2GroupMembership" }, "type": "array" }, "iamBindings": { - "description": "Represents IAM bindings associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2IamBinding" }, "type": "array" }, "indicator": { - "$ref": "GoogleCloudSecuritycenterV2Indicator", - "description": "Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise)." + "$ref": "GoogleCloudSecuritycenterV2Indicator" }, "ipRules": { - "$ref": "GoogleCloudSecuritycenterV2IpRules", - "description": "IP rules associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IpRules" }, "job": { - "$ref": "GoogleCloudSecuritycenterV2Job", - "description": "Job associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Job" }, "kernelRootkit": { - "$ref": "GoogleCloudSecuritycenterV2KernelRootkit", - "description": "Signature of the kernel rootkit." + "$ref": "GoogleCloudSecuritycenterV2KernelRootkit" }, "kubernetes": { - "$ref": "GoogleCloudSecuritycenterV2Kubernetes", - "description": "Kubernetes resources associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Kubernetes" }, "loadBalancers": { - "description": "The load balancers associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2LoadBalancer" }, "type": "array" }, "logEntries": { - "description": "Log entries that are relevant to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2LogEntry" }, "type": "array" }, "mitreAttack": { - "$ref": "GoogleCloudSecuritycenterV2MitreAttack", - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org" + "$ref": "GoogleCloudSecuritycenterV2MitreAttack" }, "moduleName": { - "description": "Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885", "type": "string" }, "mute": { - "description": "Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -11916,93 +10583,76 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" }, "muteInfo": { "$ref": "GoogleCloudSecuritycenterV2MuteInfo", - "description": "Output only. The mute information regarding this finding.", "readOnly": true }, "muteInitiator": { - "description": "Records additional information about the mute operation, for example, the [mute configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding.", "type": "string" }, "muteUpdateTime": { - "description": "Output only. The most recent time this finding was muted or unmuted.", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}` + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`", "type": "string" }, "networks": { - "description": "Represents the VPC networks that the resource is attached to.", "items": { "$ref": "GoogleCloudSecuritycenterV2Network" }, "type": "array" }, "nextSteps": { - "description": "Steps to address the finding.", "type": "string" }, "notebook": { - "$ref": "GoogleCloudSecuritycenterV2Notebook", - "description": "Notebook associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Notebook" }, "orgPolicies": { - "description": "Contains information about the org policies associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2OrgPolicy" }, "type": "array" }, "parent": { - "description": "The relative resource name of the source and location the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}` + `folders/{folders_id}/sources/{source_id}` + `projects/{projects_id}/sources/{source_id}` + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}` + `folders/{folders_id}/sources/{source_id}/locations/{location_id}` + `projects/{projects_id}/sources/{source_id}/locations/{location_id}`", "type": "string" }, "parentDisplayName": { - "description": "Output only. The human readable display name of the finding source such as \"Event Threat Detection\" or \"Security Health Analytics\".", "readOnly": true, "type": "string" }, "policyViolationSummary": { - "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary", - "description": "PolicyViolationSummary associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary" }, "processes": { - "description": "Represents operating system processes associated with the Finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Process" }, "type": "array" }, "resourceName": { - "description": "Immutable. For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string.", "type": "string" }, "secret": { - "$ref": "GoogleCloudSecuritycenterV2Secret", - "description": "Secret associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Secret" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV2SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "securityPosture": { - "$ref": "GoogleCloudSecuritycenterV2SecurityPosture", - "description": "The security posture associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityPosture" }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -12011,11 +10661,11 @@ "LOW" ], "enumDescriptions": [ - "This value is used for findings when a source doesn't write a severity value.", - "Vulnerability: A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. Threat: Indicates a threat that is able to access, modify, or delete data or execute unauthorized code within existing resources.", - "Vulnerability: A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities in order to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. Threat: Indicates a threat that is able to create new computational resources in an environment but not able to access data or execute code in existing resources.", - "Vulnerability: A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. Threat: Indicates a threat that is able to cause operational impact but may not access data or execute unauthorized code.", - "Vulnerability: A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. Threat: Indicates a threat that has obtained minimal access to an environment but is not able to access data, execute code, or create resources." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -12023,60 +10673,50 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "Output only. The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "readOnly": true, "type": "string" }, "toxicCombination": { - "$ref": "GoogleCloudSecuritycenterV2ToxicCombination", - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests." + "$ref": "GoogleCloudSecuritycenterV2ToxicCombination" }, "vertexAi": { - "$ref": "GoogleCloudSecuritycenterV2VertexAi", - "description": "VertexAi associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2VertexAi" }, "vulnerability": { - "$ref": "GoogleCloudSecuritycenterV2Vulnerability", - "description": "Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "GoogleCloudSecuritycenterV2Vulnerability" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "GoogleCloudSecuritycenterV2Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Framework": { - "description": "Compliance framework associated with the finding.", "id": "GoogleCloudSecuritycenterV2Framework", "properties": { "category": { - "description": "Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads", "items": { "enum": [ "FRAMEWORK_CATEGORY_UNSPECIFIED", @@ -12087,43 +10727,39 @@ "CUSTOM_FRAMEWORK" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Security Benchmarks framework", - "Assured Workloads framework", - "Data Security framework", - "Google Best Practices framework", - "A user-created framework" + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "controls": { - "description": "The controls associated with the framework.", "items": { "$ref": "GoogleCloudSecuritycenterV2Control" }, "type": "array" }, "displayName": { - "description": "Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework", "type": "string" }, "name": { - "description": "Name of the framework associated with the finding", "type": "string" }, "type": { - "description": "Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture)", "enum": [ "FRAMEWORK_TYPE_UNSPECIFIED", "FRAMEWORK_TYPE_BUILT_IN", "FRAMEWORK_TYPE_CUSTOM" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The framework is a built-in framework if it is created and managed by GCP.", - "The framework is a custom framework if it is created and managed by the user." + "", + "", + "" ], "type": "string" } @@ -12131,35 +10767,30 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Geolocation": { - "description": "Represents a geographical location for a given access.", "id": "GoogleCloudSecuritycenterV2Geolocation", "properties": { "regionCode": { - "description": "A CLDR.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2GroupMembership": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way.", "id": "GoogleCloudSecuritycenterV2GroupMembership", "properties": { "groupId": { - "description": "ID of the group.", "type": "string" }, "groupType": { - "description": "Type of group.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "GROUP_TYPE_TOXIC_COMBINATION", "GROUP_TYPE_CHOKEPOINT" ], "enumDescriptions": [ - "Default value.", - "Group represents a toxic combination.", - "Group represents a chokepoint." + "", + "", + "" ], "type": "string" } @@ -12167,76 +10798,64 @@ "type": "object" }, "GoogleCloudSecuritycenterV2HttpResponse": { - "description": "The http response returned by the web application.", "id": "GoogleCloudSecuritycenterV2HttpResponse", "properties": { "path": { - "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", "type": "string" }, "statusCode": { - "description": "The http response code returned by the web application, for example, 200.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IamBinding": { - "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "GoogleCloudSecuritycenterV2IamBinding", "properties": { "action": { - "description": "The action that was performed on a Binding.", "enum": [ "ACTION_UNSPECIFIED", "ADD", "REMOVE" ], "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." + "", + "", + "" ], "type": "string" }, "member": { - "description": "A single identity requesting access for a Cloud Platform resource, for example, \"foo@google.com\".", "type": "string" }, "role": { - "description": "Role that is assigned to \"members\". For example, \"roles/viewer\", \"roles/editor\", or \"roles/owner\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Indicator": { - "description": "Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).", "id": "GoogleCloudSecuritycenterV2Indicator", "properties": { "domains": { - "description": "List of domains associated to the Finding.", "items": { "type": "string" }, "type": "array" }, "ipAddresses": { - "description": "The list of IP addresses that are associated with the finding.", "items": { "type": "string" }, "type": "array" }, "signatures": { - "description": "The list of matched signatures indicating that the given process is present in the environment.", "items": { "$ref": "GoogleCloudSecuritycenterV2ProcessSignature" }, "type": "array" }, "uris": { - "description": "The list of URIs associated to the Findings.", "items": { "type": "string" }, @@ -12246,84 +10865,70 @@ "type": "object" }, "GoogleCloudSecuritycenterV2InfoType": { - "description": "Type of information detected by the API.", "id": "GoogleCloudSecuritycenterV2InfoType", "properties": { "name": { - "description": "Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64}`.", "type": "string" }, "sensitivityScore": { - "$ref": "GoogleCloudSecuritycenterV2SensitivityScore", - "description": "Optional custom sensitivity for this InfoType. This only applies to data profiling." + "$ref": "GoogleCloudSecuritycenterV2SensitivityScore" }, "version": { - "description": "Optional version name for this InfoType.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IpRule": { - "description": "IP rule information.", "id": "GoogleCloudSecuritycenterV2IpRule", "properties": { "portRanges": { - "description": "Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number.", "items": { "$ref": "GoogleCloudSecuritycenterV2PortRange" }, "type": "array" }, "protocol": { - "description": "The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IpRules": { - "description": "IP rules associated with the finding.", "id": "GoogleCloudSecuritycenterV2IpRules", "properties": { "allowed": { - "$ref": "GoogleCloudSecuritycenterV2Allowed", - "description": "Tuple with allowed rules." + "$ref": "GoogleCloudSecuritycenterV2Allowed" }, "denied": { - "$ref": "GoogleCloudSecuritycenterV2Denied", - "description": "Tuple with denied rules." + "$ref": "GoogleCloudSecuritycenterV2Denied" }, "destinationIpRanges": { - "description": "If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, "type": "array" }, "direction": { - "description": "The direction that the rule is applicable to, one of ingress or egress.", "enum": [ "DIRECTION_UNSPECIFIED", "INGRESS", "EGRESS" ], "enumDescriptions": [ - "Unspecified direction value.", - "Ingress direction value.", - "Egress direction value." + "", + "", + "" ], "type": "string" }, "exposedServices": { - "description": "Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.", "items": { "type": "string" }, "type": "array" }, "sourceIpRanges": { - "description": "If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, @@ -12333,37 +10938,30 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Issue": { - "description": "Security Command Center Issue.", "id": "GoogleCloudSecuritycenterV2Issue", "properties": { "createTime": { - "description": "Output only. The time the issue was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "The description of the issue in Markdown format.", "type": "string" }, "detection": { - "description": "The finding category or rule name that generated the issue.", "type": "string" }, "domains": { - "description": "The domains of the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueDomain" }, "type": "array" }, "exposureScore": { - "description": "The exposure score of the issue.", "format": "double", "type": "number" }, "issueType": { - "description": "The type of the issue.", "enum": [ "ISSUE_TYPE_UNSPECIFIED", "CHOKEPOINT", @@ -12371,60 +10969,51 @@ "INSIGHT" ], "enumDescriptions": [ - "Unspecified issue type.", - "Chokepoint issue type.", - "Toxic combination issue type.", - "Insight issue type." + "", + "", + "", + "" ], "type": "string" }, "lastObservationTime": { - "description": "The time the issue was last observed.", "format": "google-datetime", "type": "string" }, "mute": { - "$ref": "GoogleCloudSecuritycenterV2IssueMute", - "description": "The mute information of the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueMute" }, "name": { - "description": "Identifier. The name of the issue. Format: organizations/{organization}/locations/{location}/issues/{issue}", "type": "string" }, "primaryResource": { - "$ref": "GoogleCloudSecuritycenterV2IssueResource", - "description": "The primary resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResource" }, "relatedFindings": { - "description": "The findings related to the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueFinding" }, "type": "array" }, "remediations": { - "description": "Approaches to remediate the issue in Markdown format.", "items": { "type": "string" }, "type": "array" }, "secondaryResources": { - "description": "Additional resources associated with the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResource" }, "type": "array" }, "securityContexts": { - "description": "The security context of the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContext" }, "type": "array" }, "severity": { - "description": "The severity of the issue.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -12433,31 +11022,29 @@ "LOW" ], "enumDescriptions": [ - "Unspecified severity.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" }, "state": { - "description": "Output only. The state of the issue.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "Active state.", - "Inactive state." + "", + "", + "" ], "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The time the issue was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -12466,11 +11053,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueDomain": { - "description": "The domains of an issue.", "id": "GoogleCloudSecuritycenterV2IssueDomain", "properties": { "domainCategory": { - "description": "The domain category of the issue.", "enum": [ "DOMAIN_CATEGORY_UNSPECIFIED", "AI", @@ -12482,14 +11067,14 @@ "THREAT" ], "enumDescriptions": [ - "Unspecified domain category.", - "Issues in the AI domain.", - "Issues in the code domain.", - "Issues in the container domain.", - "Issues in the data domain.", - "Issues in the identity and access domain.", - "Issues in the vulnerability domain.", - "Issues in the threat domain." + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -12497,75 +11082,62 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueFinding": { - "description": "Finding related to an issue.", "id": "GoogleCloudSecuritycenterV2IssueFinding", "properties": { "cve": { - "$ref": "GoogleCloudSecuritycenterV2IssueFindingCve", - "description": "The CVE of the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueFindingCve" }, "name": { - "description": "The name of the finding.", "type": "string" }, "securityBulletin": { - "$ref": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin", - "description": "The security bulletin of the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueFindingCve": { - "description": "The CVE of the finding.", "id": "GoogleCloudSecuritycenterV2IssueFindingCve", "properties": { "name": { - "description": "The CVE name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin": { - "description": "The security bulletin of the finding.", "id": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin", "properties": { "name": { - "description": "The security bulletin name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueMute": { - "description": "The mute information of the issue.", "id": "GoogleCloudSecuritycenterV2IssueMute", "properties": { "muteInitiator": { - "description": "The email address of the user who last changed the mute state of the issue.", "type": "string" }, "muteReason": { - "description": "The user-provided reason for muting the issue.", "type": "string" }, "muteState": { - "description": "Output only. The mute state of the issue.", "enum": [ "MUTE_STATE_UNSPECIFIED", "NOT_MUTED", "MUTED" ], "enumDescriptions": [ - "Unspecified mute state.", - "Not muted.", - "Muted." + "", + "", + "" ], "readOnly": true, "type": "string" }, "muteUpdateTime": { - "description": "The time the issue was muted.", "format": "google-datetime", "type": "string" } @@ -12573,35 +11145,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResource": { - "description": "A resource associated with the an issue.", "id": "GoogleCloudSecuritycenterV2IssueResource", "properties": { "adcApplication": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication" }, "adcApplicationTemplate": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplication", - "description": "The AppHub application associated with the resource, if any. Only populated for the primary resource." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplication" }, "awsMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata", - "description": "The AWS metadata of the resource associated with the issue. Only populated for AWS resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata" }, "azureMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata", - "description": "The Azure metadata of the resource associated with the issue. Only populated for Azure resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata" }, "cloudProvider": { - "description": "The cloud provider of the resource associated with the issue.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD", @@ -12609,112 +11173,92 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The resource-type specific display name of the resource associated with the issue.", "type": "string" }, "googleCloudMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata", - "description": "The Google Cloud metadata of the resource associated with the issue. Only populated for Google Cloud resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata" }, "name": { - "description": "The full resource name of the resource associated with the issue.", "type": "string" }, "type": { - "description": "The type of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplication": { - "description": "The AppHub application associated with the resource, if any.", "id": "GoogleCloudSecuritycenterV2IssueResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, @@ -12724,22 +11268,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -12748,11 +11288,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -12760,11 +11300,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -12773,11 +11311,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -12785,93 +11323,75 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata": { - "description": "The AWS metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata", "properties": { "account": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount", - "description": "The AWS account of the resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount": { - "description": "The AWS account of the resource associated with the issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount", "properties": { "id": { - "description": "The AWS account ID of the resource associated with the issue.", "type": "string" }, "name": { - "description": "The AWS account name of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata": { - "description": "The Azure metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata", "properties": { "subscription": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription", - "description": "The Azure subscription of the resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription": { - "description": "The Azure subscription of the resource associated with the issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription", "properties": { "displayName": { - "description": "The Azure subscription display name of the resource associated with the issue.", "type": "string" }, "id": { - "description": "The Azure subscription ID of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata": { - "description": "Google Cloud metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata", "properties": { "projectId": { - "description": "The project ID that the resource associated with the issue belongs to.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContext": { - "description": "Security context associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContext", "properties": { "aggregatedCount": { - "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount", - "description": "The aggregated count of the security context." + "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount" }, "context": { - "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextContext", - "description": "The context of the security context." + "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextContext" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount": { - "description": "Aggregated count of a security context.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount", "properties": { "key": { - "description": "Aggregation key.", "type": "string" }, "value": { - "description": "Aggregation value.", "format": "int32", "type": "integer" } @@ -12879,15 +11399,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContextContext": { - "description": "Context of a security context.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContextContext", "properties": { "type": { - "description": "Context type.", "type": "string" }, "values": { - "description": "Context values.", "items": { "type": "string" }, @@ -12897,24 +11414,19 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Job": { - "description": "Describes a job", "id": "GoogleCloudSecuritycenterV2Job", "properties": { "errorCode": { - "description": "Optional. If the job did not complete successfully, this field describes why.", "format": "int32", "type": "integer" }, "location": { - "description": "Optional. Gives the location where the job ran, such as `US` or `europe-west1`", "type": "string" }, "name": { - "description": "The fully-qualified name for a job. e.g. `projects//jobs/`", "type": "string" }, "state": { - "description": "Output only. State of the job, such as `RUNNING` or `PENDING`.", "enum": [ "JOB_STATE_UNSPECIFIED", "PENDING", @@ -12923,11 +11435,11 @@ "FAILED" ], "enumDescriptions": [ - "Unspecified represents an unknown state and should not be used.", - "Job is scheduled and pending for run", - "Job in progress", - "Job has completed with success", - "Job has completed but with failure" + "", + "", + "", + "", + "" ], "readOnly": true, "type": "string" @@ -12936,96 +11448,78 @@ "type": "object" }, "GoogleCloudSecuritycenterV2KernelRootkit": { - "description": "Kernel mode rootkit signatures.", "id": "GoogleCloudSecuritycenterV2KernelRootkit", "properties": { "name": { - "description": "Rootkit name, when available.", "type": "string" }, "unexpectedCodeModification": { - "description": "True if unexpected modifications of kernel code memory are present.", "type": "boolean" }, "unexpectedFtraceHandler": { - "description": "True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedInterruptHandler": { - "description": "True if interrupt handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKernelCodePages": { - "description": "True if kernel code pages that are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKprobeHandler": { - "description": "True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedProcessesInRunqueue": { - "description": "True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list.", "type": "boolean" }, "unexpectedReadOnlyDataModification": { - "description": "True if unexpected modifications of kernel read-only data memory are present.", "type": "boolean" }, "unexpectedSystemCallHandler": { - "description": "True if system call handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Kubernetes": { - "description": "Kubernetes-related attributes.", "id": "GoogleCloudSecuritycenterV2Kubernetes", "properties": { "accessReviews": { - "description": "Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2AccessReview" }, "type": "array" }, "bindings": { - "description": "Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV2Binding" }, "type": "array" }, "nodePools": { - "description": "GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available.", "items": { "$ref": "GoogleCloudSecuritycenterV2NodePool" }, "type": "array" }, "nodes": { - "description": "Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information.", "items": { "$ref": "GoogleCloudSecuritycenterV2Node" }, "type": "array" }, "objects": { - "description": "Kubernetes objects related to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Object" }, "type": "array" }, "pods": { - "description": "Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod.", "items": { "$ref": "GoogleCloudSecuritycenterV2Pod" }, "type": "array" }, "roles": { - "description": "Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV2Role" }, @@ -13035,52 +11529,42 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Label": { - "description": "Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).", "id": "GoogleCloudSecuritycenterV2Label", "properties": { "name": { - "description": "Name of the label.", "type": "string" }, "value": { - "description": "Value that corresponds to the label's name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2LoadBalancer": { - "description": "Contains information related to the load balancer associated with the finding.", "id": "GoogleCloudSecuritycenterV2LoadBalancer", "properties": { "name": { - "description": "The name of the load balancer associated with the finding.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2LogEntry": { - "description": "An individual entry in a log.", "id": "GoogleCloudSecuritycenterV2LogEntry", "properties": { "cloudLoggingEntry": { - "$ref": "GoogleCloudSecuritycenterV2CloudLoggingEntry", - "description": "An individual entry in a log stored in Cloud Logging." + "$ref": "GoogleCloudSecuritycenterV2CloudLoggingEntry" } }, "type": "object" }, "GoogleCloudSecuritycenterV2MemoryHashSignature": { - "description": "A signature corresponding to memory page hashes.", "id": "GoogleCloudSecuritycenterV2MemoryHashSignature", "properties": { "binaryFamily": { - "description": "The binary family.", "type": "string" }, "detections": { - "description": "The list of memory hash detections contributing to the binary family match.", "items": { "$ref": "GoogleCloudSecuritycenterV2Detection" }, @@ -13090,11 +11574,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2MitreAttack": { - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org", "id": "GoogleCloudSecuritycenterV2MitreAttack", "properties": { "additionalTactics": { - "description": "Additional MITRE ATT&CK tactics related to this finding, if any.", "items": { "enum": [ "TACTIC_UNSPECIFIED", @@ -13114,28 +11596,27 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "additionalTechniques": { - "description": "Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -13279,152 +11760,151 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "primaryTactic": { - "description": "The MITRE ATT&CK tactic most closely represented by this finding, if any.", "enum": [ "TACTIC_UNSPECIFIED", "RECONNAISSANCE", @@ -13443,26 +11923,25 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "primaryTechniques": { - "description": "The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -13606,210 +12085,199 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "version": { - "description": "The MITRE ATT&CK version referenced by the above fields. E.g. \"8\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2MuteConfig": { - "description": "A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings.", "id": "GoogleCloudSecuritycenterV2MuteConfig", "properties": { "createTime": { - "description": "Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The resource name of the Cloud KMS `CryptoKey` used to encrypt this configuration data, if CMEK was enabled during Security Command Center activation.", "readOnly": true, "type": "string" }, "description": { - "description": "A description of the mute config.", "type": "string" }, "expiryTime": { - "description": "Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings.", "format": "google-datetime", "type": "string" }, "filter": { - "description": "Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:`", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. This field will be ignored if provided on config creation. The following list shows some examples of the format: + `organizations/{organization}/muteConfigs/{mute_config}` + `organizations/{organization}locations/{location}//muteConfigs/{mute_config}` + `folders/{folder}/muteConfigs/{mute_config}` + `folders/{folder}/locations/{location}/muteConfigs/{mute_config}` + `projects/{project}/muteConfigs/{mute_config}` + `projects/{project}/locations/{location}/muteConfigs/{mute_config}`", "type": "string" }, "type": { - "description": "Required. The type of the mute config, which determines what type of mute state the config affects. Immutable after creation.", "enum": [ "MUTE_CONFIG_TYPE_UNSPECIFIED", "STATIC", "DYNAMIC" ], "enumDescriptions": [ - "Unused.", - "A static mute config, which sets the static mute state of future matching findings to muted. Once the static mute state has been set, finding or config modifications will not affect the state.", - "A dynamic mute config, which is applied to existing and future matching findings, setting their dynamic mute state to \"muted\". If the config is updated or deleted, or a matching finding is updated, such that the finding doesn't match the config, the config will be removed from the finding, and the finding's dynamic mute state may become \"unmuted\" (unless other configs still match)." + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -13818,55 +12286,45 @@ "type": "object" }, "GoogleCloudSecuritycenterV2MuteInfo": { - "description": "Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules.", "id": "GoogleCloudSecuritycenterV2MuteInfo", "properties": { "dynamicMuteRecords": { - "description": "The list of dynamic mute rules that currently match the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DynamicMuteRecord" }, "type": "array" }, "staticMute": { - "$ref": "GoogleCloudSecuritycenterV2StaticMute", - "description": "If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute." + "$ref": "GoogleCloudSecuritycenterV2StaticMute" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Network": { - "description": "Contains information about a VPC network associated with the finding.", "id": "GoogleCloudSecuritycenterV2Network", "properties": { "name": { - "description": "The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Node": { - "description": "Kubernetes nodes associated with the finding.", "id": "GoogleCloudSecuritycenterV2Node", "properties": { "name": { - "description": "[Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2NodePool": { - "description": "Provides GKE node pool information.", "id": "GoogleCloudSecuritycenterV2NodePool", "properties": { "name": { - "description": "Kubernetes node pool name.", "type": "string" }, "nodes": { - "description": "Nodes associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Node" }, @@ -13876,196 +12334,157 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Notebook": { - "description": "Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding.", "id": "GoogleCloudSecuritycenterV2Notebook", "properties": { "lastAuthor": { - "description": "The user ID of the latest author to modify the notebook.", "type": "string" }, "name": { - "description": "The name of the notebook.", "type": "string" }, "notebookUpdateTime": { - "description": "The most recent time the notebook was updated.", "format": "google-datetime", "type": "string" }, "service": { - "description": "The source notebook service, for example, \"Colab Enterprise\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2NotificationMessage": { - "description": "Cloud SCC's Notification", "id": "GoogleCloudSecuritycenterV2NotificationMessage", "properties": { "finding": { - "$ref": "GoogleCloudSecuritycenterV2Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "GoogleCloudSecuritycenterV2Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV2Resource", - "description": "The Cloud resource tied to this notification's Finding." + "$ref": "GoogleCloudSecuritycenterV2Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Object": { - "description": "Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.", "id": "GoogleCloudSecuritycenterV2Object", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "group": { - "description": "Kubernetes object group, such as \"policy.k8s.io/v1\".", "type": "string" }, "kind": { - "description": "Kubernetes object kind, such as \"Namespace\".", "type": "string" }, "name": { - "description": "Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.", "type": "string" }, "ns": { - "description": "Kubernetes object namespace. Must be a valid DNS label. Named \"ns\" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2OrgPolicy": { - "description": "Contains information about the org policies associated with the finding.", "id": "GoogleCloudSecuritycenterV2OrgPolicy", "properties": { "name": { - "description": "Identifier. The resource name of the org policy. Example: \"organizations/{organization_id}/policies/{constraint_name}\"", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Package": { - "description": "Package is a generic definition of a package.", "id": "GoogleCloudSecuritycenterV2Package", "properties": { "cpeUri": { - "description": "The CPE URI where the vulnerability was detected.", "type": "string" }, "packageName": { - "description": "The name of the package where the vulnerability was detected.", "type": "string" }, "packageType": { - "description": "Type of package, for example, os, maven, or go.", "type": "string" }, "packageVersion": { - "description": "The version of the package.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Pipeline": { - "description": "Vertex AI training pipeline associated with the finding.", "id": "GoogleCloudSecuritycenterV2Pipeline", "properties": { "displayName": { - "description": "The user-defined display name of pipeline, e.g. plants-classification", "type": "string" }, "name": { - "description": "Resource name of the pipeline, e.g. projects/{project}/locations/{location}/trainingPipelines/5253428229225578496", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Pod": { - "description": "A Kubernetes Pod.", "id": "GoogleCloudSecuritycenterV2Pod", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "labels": { - "description": "Pod labels. For Kubernetes containers, these are applied to the container.", "items": { "$ref": "GoogleCloudSecuritycenterV2Label" }, "type": "array" }, "name": { - "description": "Kubernetes Pod name.", "type": "string" }, "ns": { - "description": "Kubernetes Pod namespace.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2PolicyDriftDetails": { - "description": "The policy field that violates the deployed posture and its expected and detected values.", "id": "GoogleCloudSecuritycenterV2PolicyDriftDetails", "properties": { "detectedValue": { - "description": "The detected value that violates the deployed posture, for example, `false` or `allowed_values={\"projects/22831892\"}`.", "type": "string" }, "expectedValue": { - "description": "The value of this field that was configured in a posture, for example, `true` or `allowed_values={\"projects/29831892\"}`.", "type": "string" }, "field": { - "description": "The name of the updated field, for example constraint.implementation.policy_rules[0].enforce", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2PolicyViolationSummary": { - "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", "id": "GoogleCloudSecuritycenterV2PolicyViolationSummary", "properties": { "conformantResourcesCount": { - "description": "Total number of child resources that conform to the policy.", "format": "int64", "type": "string" }, "evaluationErrorsCount": { - "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", "format": "int64", "type": "string" }, "outOfScopeResourcesCount": { - "description": "Total count of child resources which were not in scope for evaluation.", "format": "int64", "type": "string" }, "policyViolationsCount": { - "description": "Count of child resources in violation of the policy.", "format": "int64", "type": "string" } @@ -14073,16 +12492,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV2PortRange": { - "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "GoogleCloudSecuritycenterV2PortRange", "properties": { "max": { - "description": "Maximum port value.", "format": "int64", "type": "string" }, "min": { - "description": "Minimum port value.", "format": "int64", "type": "string" } @@ -14090,62 +12506,50 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Process": { - "description": "Represents an operating system process.", "id": "GoogleCloudSecuritycenterV2Process", "properties": { "args": { - "description": "Process arguments as JSON encoded strings.", "items": { "type": "string" }, "type": "array" }, "argumentsTruncated": { - "description": "True if `args` is incomplete.", "type": "boolean" }, "binary": { - "$ref": "GoogleCloudSecuritycenterV2File", - "description": "File information for the process executable." + "$ref": "GoogleCloudSecuritycenterV2File" }, "envVariables": { - "description": "Process environment variables.", "items": { "$ref": "GoogleCloudSecuritycenterV2EnvironmentVariable" }, "type": "array" }, "envVariablesTruncated": { - "description": "True if `env_variables` is incomplete.", "type": "boolean" }, "libraries": { - "description": "File information for libraries loaded by the process.", "items": { "$ref": "GoogleCloudSecuritycenterV2File" }, "type": "array" }, "name": { - "description": "The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.", "type": "string" }, "parentPid": { - "description": "The parent process ID.", "format": "int64", "type": "string" }, "pid": { - "description": "The process ID.", "format": "int64", "type": "string" }, "script": { - "$ref": "GoogleCloudSecuritycenterV2File", - "description": "When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter." + "$ref": "GoogleCloudSecuritycenterV2File" }, "userId": { - "description": "The ID of the user that executed the process. E.g. If this is the root user this will always be 0.", "format": "int64", "type": "string" } @@ -14153,70 +12557,58 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ProcessSignature": { - "description": "Indicates what signature matched this process.", "id": "GoogleCloudSecuritycenterV2ProcessSignature", "properties": { "memoryHashSignature": { - "$ref": "GoogleCloudSecuritycenterV2MemoryHashSignature", - "description": "Signature indicating that a binary family was matched." + "$ref": "GoogleCloudSecuritycenterV2MemoryHashSignature" }, "signatureType": { - "description": "Describes the type of resource associated with the signature.", "enum": [ "SIGNATURE_TYPE_UNSPECIFIED", "SIGNATURE_TYPE_PROCESS", "SIGNATURE_TYPE_FILE" ], "enumDescriptions": [ - "The default signature type.", - "Used for signatures concerning processes.", - "Used for signatures concerning disks." + "", + "", + "" ], "type": "string" }, "yaraRuleSignature": { - "$ref": "GoogleCloudSecuritycenterV2YaraRuleSignature", - "description": "Signature indicating that a YARA rule was matched." + "$ref": "GoogleCloudSecuritycenterV2YaraRuleSignature" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Reference": { - "description": "Additional Links", "id": "GoogleCloudSecuritycenterV2Reference", "properties": { "source": { - "description": "Source of the reference e.g. NVD", "type": "string" }, "uri": { - "description": "Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Requests": { - "description": "Information about the requests relevant to the finding.", "id": "GoogleCloudSecuritycenterV2Requests", "properties": { "longTermAllowed": { - "description": "Allowed RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "longTermDenied": { - "description": "Denied RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "ratio": { - "description": "For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term.", "format": "double", "type": "number" }, "shortTermAllowed": { - "description": "Allowed RPS (requests per second) in the short term.", "format": "int32", "type": "integer" } @@ -14224,35 +12616,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV2Resource", "properties": { "adcApplication": { - "$ref": "GoogleCloudSecuritycenterV2AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcApplication" }, "adcApplicationTemplate": { - "$ref": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplication" }, "awsMetadata": { - "$ref": "GoogleCloudSecuritycenterV2AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AwsMetadata" }, "azureMetadata": { - "$ref": "GoogleCloudSecuritycenterV2AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the finding is from.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -14260,91 +12644,74 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "gcpMetadata": { - "$ref": "GcpMetadata", - "description": "The Google Cloud metadata associated with the finding." + "$ref": "GcpMetadata" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourcePath": { - "$ref": "GoogleCloudSecuritycenterV2ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "GoogleCloudSecuritycenterV2ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/projects/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The service or resource provider associated with the resource.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplication": { - "description": "The App Hub Application associated with the finding's resource.", "id": "GoogleCloudSecuritycenterV2ResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, @@ -14354,22 +12721,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -14378,11 +12741,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -14390,11 +12753,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -14403,11 +12764,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -14415,11 +12776,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourcePath": { - "description": "Represents the path of resources leading up to the resource this finding is about.", "id": "GoogleCloudSecuritycenterV2ResourcePath", "properties": { "nodes": { - "description": "The list of nodes that make the up resource path, ordered from lowest level to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourcePathNode" }, @@ -14429,19 +12788,15 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourcePathNode": { - "description": "A node within the resource path. Each node represents a resource within the resource hierarchy.", "id": "GoogleCloudSecuritycenterV2ResourcePathNode", "properties": { "displayName": { - "description": "The display name of the resource this node represents.", "type": "string" }, "id": { - "description": "The ID of the resource this node represents.", "type": "string" }, "nodeType": { - "description": "The type of resource this node represents.", "enum": [ "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED", "GCP_ORGANIZATION", @@ -14455,16 +12810,16 @@ "AZURE_RESOURCE_GROUP" ], "enumDescriptions": [ - "Node type is unspecified.", - "The node represents a Google Cloud organization.", - "The node represents a Google Cloud folder.", - "The node represents a Google Cloud project.", - "The node represents an AWS organization.", - "The node represents an AWS organizational unit.", - "The node represents an AWS account.", - "The node represents an Azure management group.", - "The node represents an Azure subscription.", - "The node represents an Azure resource group." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -14472,11 +12827,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceValueConfig": { - "description": "A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations.", "id": "GoogleCloudSecuritycenterV2ResourceValueConfig", "properties": { "cloudProvider": { - "description": "Cloud provider this configuration applies to", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -14484,40 +12837,34 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Timestamp this resource value configuration was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Description of the resource value configuration.", "type": "string" }, "name": { - "description": "Identifier. Name for the resource value configuration", "type": "string" }, "resourceLabelsSelector": { "additionalProperties": { "type": "string" }, - "description": "List of resource labels to search for, evaluated with `AND`. For example, \"resource_labels_selector\": {\"key\": \"value\", \"env\": \"prod\"} will match resources with labels \"key\": \"value\" `AND` \"env\": \"prod\" https://cloud.google.com/resource-manager/docs/creating-managing-labels", "type": "object" }, "resourceType": { - "description": "Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, \"storage.googleapis.com/Bucket\" with resource_value \"HIGH\" will apply \"HIGH\" value only to \"storage.googleapis.com/Bucket\" resources.", "type": "string" }, "resourceValue": { - "description": "Resource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -14526,31 +12873,27 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "Project or folder to scope this configuration to. For example, \"project/456\" would apply this configuration only to resources in \"project/456\" scope and will be checked with `AND` of other resources.", "type": "string" }, "sensitiveDataProtectionMapping": { - "$ref": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping", - "description": "A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. \"bigquery.googleapis.com/Dataset\"." + "$ref": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping" }, "tagValues": { - "description": "Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of \"tagValues/123\". Example: `[ \"tagValues/123\", \"tagValues/456\", \"tagValues/789\" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing", "items": { "type": "string" }, "type": "array" }, "updateTime": { - "description": "Output only. Timestamp this resource value configuration was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -14559,90 +12902,74 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Role": { - "description": "Kubernetes Role or ClusterRole.", "id": "GoogleCloudSecuritycenterV2Role", "properties": { "kind": { - "description": "Role type.", "enum": [ "KIND_UNSPECIFIED", "ROLE", "CLUSTER_ROLE" ], "enumDescriptions": [ - "Role type is not specified.", - "Kubernetes Role.", - "Kubernetes ClusterRole." + "", + "", + "" ], "type": "string" }, "name": { - "description": "Role name.", "type": "string" }, "ns": { - "description": "Role namespace.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Secret": { - "description": "Details about a secret or credential associated with the finding.", "id": "GoogleCloudSecuritycenterV2Secret", "properties": { "environmentVariable": { - "$ref": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable", - "description": "The environment variable containing the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable" }, "filePath": { - "$ref": "GoogleCloudSecuritycenterV2SecretFilePath", - "description": "The file containing the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretFilePath" }, "status": { - "$ref": "GoogleCloudSecuritycenterV2SecretStatus", - "description": "The status of the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretStatus" }, "type": { - "description": "The type of secret, for example, GCP_API_KEY.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretEnvironmentVariable": { - "description": "Environment variable containing the secret.", "id": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable", "properties": { "key": { - "description": "Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretFilePath": { - "description": "File path containing the secret.", "id": "GoogleCloudSecuritycenterV2SecretFilePath", "properties": { "path": { - "description": "Path to the file.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretStatus": { - "description": "The status of the secret.", "id": "GoogleCloudSecuritycenterV2SecretStatus", "properties": { "lastUpdatedTime": { - "description": "Time that the secret was found.", "format": "google-datetime", "type": "string" }, "validity": { - "description": "The validity of the secret.", "enum": [ "SECRET_VALIDITY_UNSPECIFIED", "SECRET_VALIDITY_UNSUPPORTED", @@ -14651,11 +12978,11 @@ "SECRET_VALIDITY_VALID" ], "enumDescriptions": [ - "Default value; no validation was attempted.", - "There is no mechanism to validate the secret.", - "Validation is supported but the validation failed.", - "The secret is confirmed to be invalid.", - "The secret is confirmed to be valid." + "", + "", + "", + "", + "" ], "type": "string" } @@ -14663,114 +12990,91 @@ "type": "object" }, "GoogleCloudSecuritycenterV2SecurityBulletin": { - "description": "SecurityBulletin are notifications of vulnerabilities of Google products.", "id": "GoogleCloudSecuritycenterV2SecurityBulletin", "properties": { "bulletinId": { - "description": "ID of the bulletin corresponding to the vulnerability.", "type": "string" }, "submissionTime": { - "description": "Submission time of this Security Bulletin.", "format": "google-datetime", "type": "string" }, "suggestedUpgradeVersion": { - "description": "This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV2SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. The following list shows some examples: + `organizations/{organization_id}/assets/{asset_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks` + `folders/{folder_id}/assets/{asset_id}/securityMarks` + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `folders/{folder_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks` + `projects/{project_number}/assets/{asset_id}/securityMarks` + `projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks` + `projects/{project_number}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name The following list shows some examples: + `organizations/{organization_id}/assets/{asset_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityPolicy": { - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding.", "id": "GoogleCloudSecuritycenterV2SecurityPolicy", "properties": { "name": { - "description": "The name of the Google Cloud Armor security policy, for example, \"my-security-policy\".", "type": "string" }, "preview": { - "description": "Whether or not the associated rule or policy is in preview mode.", "type": "boolean" }, "type": { - "description": "The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityPosture": { - "description": "Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud.", "id": "GoogleCloudSecuritycenterV2SecurityPosture", "properties": { "changedPolicy": { - "description": "The name of the updated policy, for example, `projects/{project_id}/policies/{constraint_name}`.", "type": "string" }, "name": { - "description": "Name of the posture, for example, `CIS-Posture`.", "type": "string" }, "policy": { - "description": "The ID of the updated policy, for example, `compute-policy-1`.", "type": "string" }, "policyDriftDetails": { - "description": "The details about a change in an updated policy that violates the deployed posture.", "items": { "$ref": "GoogleCloudSecuritycenterV2PolicyDriftDetails" }, "type": "array" }, "policySet": { - "description": "The name of the updated policy set, for example, `cis-policyset`.", "type": "string" }, "postureDeployment": { - "description": "The name of the posture deployment, for example, `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.", "type": "string" }, "postureDeploymentResource": { - "description": "The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number}`.", "type": "string" }, "revisionId": { - "description": "The version of the posture, for example, `c7cfa2a8`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping": { - "description": "Resource value mapping for Sensitive Data Protection findings If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration.", "id": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping", "properties": { "highSensitivityMapping": { - "description": "Resource value mapping for high-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -14779,16 +13083,15 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "mediumSensitivityMapping": { - "description": "Resource value mapping for medium-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -14797,11 +13100,11 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" } @@ -14809,11 +13112,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2SensitivityScore": { - "description": "Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive.", "id": "GoogleCloudSecuritycenterV2SensitivityScore", "properties": { "score": { - "description": "The sensitivity score applied to the resource.", "enum": [ "SENSITIVITY_SCORE_LEVEL_UNSPECIFIED", "SENSITIVITY_LOW", @@ -14822,11 +13123,11 @@ "SENSITIVITY_HIGH" ], "enumDescriptions": [ - "Unused.", - "No sensitive information detected. The resource isn't publicly accessible.", - "Unable to determine sensitivity.", - "Medium risk. Contains personally identifiable information (PII), potentially sensitive data, or fields with free-text data that are at a higher risk of having intermittent sensitive data. Consider limiting access.", - "High risk. Sensitive personally identifiable information (SPII) can be present. Exfiltration of data can lead to user data loss. Re-identification of users might be possible. Consider limiting usage and or removing SPII." + "", + "", + "", + "", + "" ], "type": "string" } @@ -14834,31 +13135,25 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo": { - "description": "Identity delegation history of an authenticated service account.", "id": "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo", "properties": { "principalEmail": { - "description": "The email address of a Google account.", "type": "string" }, "principalSubject": { - "description": "A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name}[{subject}]`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2StaticMute": { - "description": "Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly.", "id": "GoogleCloudSecuritycenterV2StaticMute", "properties": { "applyTime": { - "description": "When the static mute was applied.", "format": "google-datetime", "type": "string" }, "state": { - "description": "The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -14866,10 +13161,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -14877,11 +13172,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Subject": { - "description": "Represents a Kubernetes subject.", "id": "GoogleCloudSecuritycenterV2Subject", "properties": { "kind": { - "description": "Authentication type for the subject.", "enum": [ "AUTH_TYPE_UNSPECIFIED", "USER", @@ -14889,67 +13182,55 @@ "GROUP" ], "enumDescriptions": [ - "Authentication is not specified.", - "User with valid certificate.", - "Users managed by Kubernetes API with credentials stored as secrets.", - "Collection of users." + "", + "", + "", + "" ], "type": "string" }, "name": { - "description": "Name for the subject.", "type": "string" }, "ns": { - "description": "Namespace for the subject.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2TicketInfo": { - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", "id": "GoogleCloudSecuritycenterV2TicketInfo", "properties": { "assignee": { - "description": "The assignee of the ticket in the ticket system.", "type": "string" }, "description": { - "description": "The description of the ticket in the ticket system.", "type": "string" }, "id": { - "description": "The identifier of the ticket in the ticket system.", "type": "string" }, "status": { - "description": "The latest status of the ticket, as reported by the ticket system.", "type": "string" }, "updateTime": { - "description": "The time when the ticket was last updated, as reported by the ticket system.", "format": "google-datetime", "type": "string" }, "uri": { - "description": "The link to the ticket in the ticket system.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ToxicCombination": { - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "id": "GoogleCloudSecuritycenterV2ToxicCombination", "properties": { "attackExposureScore": { - "description": "The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack.", "format": "double", "type": "number" }, "relatedFindings": { - "description": "List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`.", "items": { "type": "string" }, @@ -14959,18 +13240,15 @@ "type": "object" }, "GoogleCloudSecuritycenterV2VertexAi": { - "description": "Vertex AI-related information associated with the finding.", "id": "GoogleCloudSecuritycenterV2VertexAi", "properties": { "datasets": { - "description": "Datasets associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Dataset" }, "type": "array" }, "pipelines": { - "description": "Pipelines associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Pipeline" }, @@ -14980,83 +13258,66 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Vulnerability": { - "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "GoogleCloudSecuritycenterV2Vulnerability", "properties": { "cve": { - "$ref": "GoogleCloudSecuritycenterV2Cve", - "description": "CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "GoogleCloudSecuritycenterV2Cve" }, "cwes": { - "description": "Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability.", "items": { "$ref": "GoogleCloudSecuritycenterV2Cwe" }, "type": "array" }, "fixedPackage": { - "$ref": "GoogleCloudSecuritycenterV2Package", - "description": "The fixed package is relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2Package" }, "offendingPackage": { - "$ref": "GoogleCloudSecuritycenterV2Package", - "description": "The offending package is relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2Package" }, "providerRiskScore": { - "description": "Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is.", "format": "int64", "type": "string" }, "reachable": { - "description": "Represents whether the vulnerability is reachable (detected via static analysis)", "type": "boolean" }, "securityBulletin": { - "$ref": "GoogleCloudSecuritycenterV2SecurityBulletin", - "description": "The security bulletin is relevant to this finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityBulletin" } }, "type": "object" }, "GoogleCloudSecuritycenterV2YaraRuleSignature": { - "description": "A signature corresponding to a YARA rule.", "id": "GoogleCloudSecuritycenterV2YaraRuleSignature", "properties": { "yaraRule": { - "description": "The name of the YARA rule.", "type": "string" } }, "type": "object" }, "GroupAssetsRequest": { - "description": "Request message for grouping by assets.", "id": "GroupAssetsRequest", "properties": { "compareDuration": { - "description": "When compare_duration is set, the GroupResult's \"state_change\" property is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible \"state_change\" values when compare_duration is specified: * \"ADDED\": indicates that the asset was not present at the start of compare_duration, but present at reference_time. * \"REMOVED\": indicates that the asset was present at the start of compare_duration, but not present at reference_time. * \"ACTIVE\": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and reference_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all assets present at read_time. If this field is set then `state_change` must be a specified field in `group_by`.", "format": "google-duration", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * update_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = \"2019-06-10T16:07:18-07:00\"` `update_time = 1560208038000` * create_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = \"2019-06-10T16:07:18-07:00\"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : \"\"`", "type": "string" }, "groupBy": { - "description": "Required. Expression that defines what assets fields to use for grouping. The string value should follow SQL syntax: comma separated list of fields. For example: \"security_center_properties.resource_project,security_center_properties.project\". The following fields are supported when compare_duration is not set: * security_center_properties.resource_project * security_center_properties.resource_project_display_name * security_center_properties.resource_type * security_center_properties.resource_parent * security_center_properties.resource_parent_display_name The following fields are supported when compare_duration is set: * security_center_properties.resource_type * security_center_properties.resource_project_display_name * security_center_properties.resource_parent_display_name", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `GroupAssetsResponse`; indicates that this is a continuation of a prior `GroupAssets` call, and that the system should return the next page of data.", "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "type": "string" } @@ -15064,27 +13325,22 @@ "type": "object" }, "GroupAssetsResponse": { - "description": "Response message for grouping by assets.", "id": "GroupAssetsResponse", "properties": { "groupByResults": { - "description": "Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear.", "items": { "$ref": "GroupResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the groupBy request.", "format": "google-datetime", "type": "string" }, "totalSize": { - "description": "The total number of results matching the query.", "format": "int32", "type": "integer" } @@ -15092,35 +13348,28 @@ "type": "object" }, "GroupFindingsRequest": { - "description": "Request message for grouping by findings.", "id": "GroupFindingsRequest", "properties": { "compareDuration": { "deprecated": true, - "description": "When compare_duration is set, the GroupResult's \"state_change\" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible \"state_change\" values when compare_duration is specified: * \"CHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * \"UNCHANGED\": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * \"ADDED\": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * \"REMOVED\": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is \"UNUSED\", which will be the state_change set for all findings present at read_time. If this field is set then `state_change` must be a specified field in `group_by`.", "format": "google-duration", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `>`, `<`, `>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = \"2019-06-10T16:07:18-07:00\"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : \"\"` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : \"\"` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:`", "type": "string" }, "groupBy": { - "description": "Required. Expression that defines what assets fields to use for grouping (including `state_change`). The string value should follow SQL syntax: comma separated list of fields. For example: \"parent,resource_name\". The following fields are supported when compare_duration is set: * state_change", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `GroupFindingsResponse`; indicates that this is a continuation of a prior `GroupFindings` call, and that the system should return the next page of data.", "type": "string" }, "readTime": { "deprecated": true, - "description": "Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "type": "string" } @@ -15128,27 +13377,22 @@ "type": "object" }, "GroupFindingsResponse": { - "description": "Response message for group by findings.", "id": "GroupFindingsResponse", "properties": { "groupByResults": { - "description": "Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear.", "items": { "$ref": "GroupResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the groupBy request.", "format": "google-datetime", "type": "string" }, "totalSize": { - "description": "The total number of results matching the query.", "format": "int32", "type": "integer" } @@ -15156,24 +13400,21 @@ "type": "object" }, "GroupMembership": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way.", "id": "GroupMembership", "properties": { "groupId": { - "description": "ID of the group.", "type": "string" }, "groupType": { - "description": "Type of group.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "GROUP_TYPE_TOXIC_COMBINATION", "GROUP_TYPE_CHOKEPOINT" ], "enumDescriptions": [ - "Default value.", - "Group represents a toxic combination.", - "Group represents a chokepoint." + "", + "", + "" ], "type": "string" } @@ -15181,11 +13422,9 @@ "type": "object" }, "GroupResult": { - "description": "Result containing the properties and count of a groupBy request.", "id": "GroupResult", "properties": { "count": { - "description": "Total count of resources for the given properties.", "format": "int64", "type": "string" }, @@ -15193,94 +13432,79 @@ "additionalProperties": { "type": "any" }, - "description": "Properties matching the groupBy fields in the request.", "type": "object" } }, "type": "object" }, "HttpResponse": { - "description": "The http response returned by the web application.", "id": "HttpResponse", "properties": { "path": { - "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", "type": "string" }, "statusCode": { - "description": "The http response code returned by the web application, for example, 200.", "type": "string" } }, "type": "object" }, "IamBinding": { - "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "IamBinding", "properties": { "action": { - "description": "The action that was performed on a Binding.", "enum": [ "ACTION_UNSPECIFIED", "ADD", "REMOVE" ], "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." + "", + "", + "" ], "type": "string" }, "member": { - "description": "A single identity requesting access for a Cloud Platform resource, for example, \"foo@google.com\".", "type": "string" }, "role": { - "description": "Role that is assigned to \"members\". For example, \"roles/viewer\", \"roles/editor\", or \"roles/owner\".", "type": "string" } }, "type": "object" }, "IamPolicy": { - "description": "Cloud IAM Policy information associated with the Google Cloud resource described by the Security Command Center asset. This information is managed and defined by the Google Cloud resource and cannot be modified by the user.", "id": "IamPolicy", "properties": { "policyBlob": { - "description": "The JSON representation of the Policy associated with the asset. See https://cloud.google.com/iam/reference/rest/v1/Policy for format details.", "type": "string" } }, "type": "object" }, "Indicator": { - "description": "Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).", "id": "Indicator", "properties": { "domains": { - "description": "List of domains associated to the Finding.", "items": { "type": "string" }, "type": "array" }, "ipAddresses": { - "description": "The list of IP addresses that are associated with the finding.", "items": { "type": "string" }, "type": "array" }, "signatures": { - "description": "The list of matched signatures indicating that the given process is present in the environment.", "items": { "$ref": "ProcessSignature" }, "type": "array" }, "uris": { - "description": "The list of URIs associated to the Findings.", "items": { "type": "string" }, @@ -15290,84 +13514,70 @@ "type": "object" }, "InfoType": { - "description": "Type of information detected by the API.", "id": "InfoType", "properties": { "name": { - "description": "Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64}`.", "type": "string" }, "sensitivityScore": { - "$ref": "SensitivityScore", - "description": "Optional custom sensitivity for this InfoType. This only applies to data profiling." + "$ref": "SensitivityScore" }, "version": { - "description": "Optional version name for this InfoType.", "type": "string" } }, "type": "object" }, "IpRule": { - "description": "IP rule information.", "id": "IpRule", "properties": { "portRanges": { - "description": "Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number.", "items": { "$ref": "PortRange" }, "type": "array" }, "protocol": { - "description": "The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value.", "type": "string" } }, "type": "object" }, "IpRules": { - "description": "IP rules associated with the finding.", "id": "IpRules", "properties": { "allowed": { - "$ref": "Allowed", - "description": "Tuple with allowed rules." + "$ref": "Allowed" }, "denied": { - "$ref": "Denied", - "description": "Tuple with denied rules." + "$ref": "Denied" }, "destinationIpRanges": { - "description": "If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, "type": "array" }, "direction": { - "description": "The direction that the rule is applicable to, one of ingress or egress.", "enum": [ "DIRECTION_UNSPECIFIED", "INGRESS", "EGRESS" ], "enumDescriptions": [ - "Unspecified direction value.", - "Ingress direction value.", - "Egress direction value." + "", + "", + "" ], "type": "string" }, "exposedServices": { - "description": "Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.", "items": { "type": "string" }, "type": "array" }, "sourceIpRanges": { - "description": "If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, @@ -15377,24 +13587,19 @@ "type": "object" }, "Job": { - "description": "Describes a job", "id": "Job", "properties": { "errorCode": { - "description": "Optional. If the job did not complete successfully, this field describes why.", "format": "int32", "type": "integer" }, "location": { - "description": "Optional. Gives the location where the job ran, such as `US` or `europe-west1`", "type": "string" }, "name": { - "description": "The fully-qualified name for a job. e.g. `projects//jobs/`", "type": "string" }, "state": { - "description": "Output only. State of the job, such as `RUNNING` or `PENDING`.", "enum": [ "JOB_STATE_UNSPECIFIED", "PENDING", @@ -15403,11 +13608,11 @@ "FAILED" ], "enumDescriptions": [ - "Unspecified represents an unknown state and should not be used.", - "Job is scheduled and pending for run", - "Job in progress", - "Job has completed with success", - "Job has completed but with failure" + "", + "", + "", + "", + "" ], "readOnly": true, "type": "string" @@ -15416,96 +13621,78 @@ "type": "object" }, "KernelRootkit": { - "description": "Kernel mode rootkit signatures.", "id": "KernelRootkit", "properties": { "name": { - "description": "Rootkit name, when available.", "type": "string" }, "unexpectedCodeModification": { - "description": "True if unexpected modifications of kernel code memory are present.", "type": "boolean" }, "unexpectedFtraceHandler": { - "description": "True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedInterruptHandler": { - "description": "True if interrupt handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKernelCodePages": { - "description": "True if kernel code pages that are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKprobeHandler": { - "description": "True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedProcessesInRunqueue": { - "description": "True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list.", "type": "boolean" }, "unexpectedReadOnlyDataModification": { - "description": "True if unexpected modifications of kernel read-only data memory are present.", "type": "boolean" }, "unexpectedSystemCallHandler": { - "description": "True if system call handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" } }, "type": "object" }, "Kubernetes": { - "description": "Kubernetes-related attributes.", "id": "Kubernetes", "properties": { "accessReviews": { - "description": "Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding.", "items": { "$ref": "AccessReview" }, "type": "array" }, "bindings": { - "description": "Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV1Binding" }, "type": "array" }, "nodePools": { - "description": "GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available.", "items": { "$ref": "NodePool" }, "type": "array" }, "nodes": { - "description": "Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information.", "items": { "$ref": "Node" }, "type": "array" }, "objects": { - "description": "Kubernetes objects related to the finding.", "items": { "$ref": "Object" }, "type": "array" }, "pods": { - "description": "Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod.", "items": { "$ref": "Pod" }, "type": "array" }, "roles": { - "description": "Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "Role" }, @@ -15515,42 +13702,34 @@ "type": "object" }, "Label": { - "description": "Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).", "id": "Label", "properties": { "name": { - "description": "Name of the label.", "type": "string" }, "value": { - "description": "Value that corresponds to the label's name.", "type": "string" } }, "type": "object" }, "ListAssetsResponse": { - "description": "Response message for listing assets.", "id": "ListAssetsResponse", "properties": { "listAssetsResults": { - "description": "Assets matching the list request.", "items": { "$ref": "ListAssetsResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the list request.", "format": "google-datetime", "type": "string" }, "totalSize": { - "description": "The total number of assets matching the query.", "format": "int32", "type": "integer" } @@ -15558,15 +13737,12 @@ "type": "object" }, "ListAssetsResult": { - "description": "Result containing the Asset and its State.", "id": "ListAssetsResult", "properties": { "asset": { - "$ref": "Asset", - "description": "Asset matching the search request." + "$ref": "Asset" }, "stateChange": { - "description": "State change of the asset between the points in time.", "enum": [ "UNUSED", "ADDED", @@ -15574,10 +13750,10 @@ "ACTIVE" ], "enumDescriptions": [ - "State change is unused, this is the canonical default for this enum.", - "Asset was added between the points in time.", - "Asset was removed between the points in time.", - "Asset was present at both point(s) in time." + "", + "", + "", + "" ], "type": "string" } @@ -15585,69 +13761,57 @@ "type": "object" }, "ListAttackPathsResponse": { - "description": "Response message for listing the attack paths for a given simulation or valued resource.", "id": "ListAttackPathsResponse", "properties": { "attackPaths": { - "description": "The attack paths that the attack path simulation identified.", "items": { "$ref": "AttackPath" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" } }, "type": "object" }, "ListBigQueryExportsResponse": { - "description": "Response message for listing BigQuery exports.", "id": "ListBigQueryExportsResponse", "properties": { "bigQueryExports": { - "description": "The BigQuery exports from the specified parent.", "items": { "$ref": "GoogleCloudSecuritycenterV1BigQueryExport" }, "type": "array" }, "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, "ListDescendantEventThreatDetectionCustomModulesResponse": { - "description": "Response for listing current and descendant resident Event Threat Detection custom modules.", "id": "ListDescendantEventThreatDetectionCustomModulesResponse", "properties": { "eventThreatDetectionCustomModules": { - "description": "Custom modules belonging to the requested parent.", "items": { "$ref": "EventThreatDetectionCustomModule" }, "type": "array" }, "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, "ListDescendantSecurityHealthAnalyticsCustomModulesResponse": { - "description": "Response message for listing descendant Security Health Analytics custom modules.", "id": "ListDescendantSecurityHealthAnalyticsCustomModulesResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more custom modules to be returned.", "type": "string" }, "securityHealthAnalyticsCustomModules": { - "description": "Custom modules belonging to the requested parent and its descendants.", "items": { "$ref": "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule" }, @@ -15657,81 +13821,67 @@ "type": "object" }, "ListEffectiveEventThreatDetectionCustomModulesResponse": { - "description": "Response for listing EffectiveEventThreatDetectionCustomModules.", "id": "ListEffectiveEventThreatDetectionCustomModulesResponse", "properties": { "effectiveEventThreatDetectionCustomModules": { - "description": "Effective custom modules belonging to the requested parent.", "items": { "$ref": "EffectiveEventThreatDetectionCustomModule" }, "type": "array" }, "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, "ListEffectiveSecurityHealthAnalyticsCustomModulesResponse": { - "description": "Response message for listing effective Security Health Analytics custom modules.", "id": "ListEffectiveSecurityHealthAnalyticsCustomModulesResponse", "properties": { "effectiveSecurityHealthAnalyticsCustomModules": { - "description": "Effective custom modules belonging to the requested parent.", "items": { "$ref": "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule" }, "type": "array" }, "nextPageToken": { - "description": "If not empty, indicates that there may be more effective custom modules to be returned.", "type": "string" } }, "type": "object" }, "ListEventThreatDetectionCustomModulesResponse": { - "description": "Response for listing Event Threat Detection custom modules.", "id": "ListEventThreatDetectionCustomModulesResponse", "properties": { "eventThreatDetectionCustomModules": { - "description": "Custom modules belonging to the requested parent.", "items": { "$ref": "EventThreatDetectionCustomModule" }, "type": "array" }, "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, "ListFindingsResponse": { - "description": "Response message for listing findings.", "id": "ListFindingsResponse", "properties": { "listFindingsResults": { - "description": "Findings matching the list request.", "items": { "$ref": "ListFindingsResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the list request.", "format": "google-datetime", "type": "string" }, "totalSize": { - "description": "The total number of findings matching the query.", "format": "int32", "type": "integer" } @@ -15739,20 +13889,16 @@ "type": "object" }, "ListFindingsResult": { - "description": "Result containing the Finding and its StateChange.", "id": "ListFindingsResult", "properties": { "finding": { - "$ref": "Finding", - "description": "Finding matching the search request." + "$ref": "Finding" }, "resource": { "$ref": "Resource", - "description": "Output only. Resource that is associated with this finding.", "readOnly": true }, "stateChange": { - "description": "State change of the finding between the points in time.", "enum": [ "UNUSED", "CHANGED", @@ -15761,11 +13907,11 @@ "REMOVED" ], "enumDescriptions": [ - "State change is unused, this is the canonical default for this enum.", - "The finding has changed state in some way between the points in time and existed at both points.", - "The finding has not changed state between the points in time and existed at both points.", - "The finding was created between the points in time.", - "The finding at timestamp does not match the filter specified, but it did at timestamp - compare_duration." + "", + "", + "", + "", + "" ], "type": "string" } @@ -15773,33 +13919,27 @@ "type": "object" }, "ListMuteConfigsResponse": { - "description": "Response message for listing mute configs.", "id": "ListMuteConfigsResponse", "properties": { "muteConfigs": { - "description": "The mute configs from the specified parent.", "items": { "$ref": "GoogleCloudSecuritycenterV1MuteConfig" }, "type": "array" }, "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", "type": "string" } }, "type": "object" }, "ListNotificationConfigsResponse": { - "description": "Response message for listing notification configs.", "id": "ListNotificationConfigsResponse", "properties": { "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "notificationConfigs": { - "description": "Notification configs belonging to the requested parent.", "items": { "$ref": "NotificationConfig" }, @@ -15809,22 +13949,18 @@ "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" }, "unreachable": { - "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", "items": { "type": "string" }, @@ -15834,15 +13970,12 @@ "type": "object" }, "ListResourceValueConfigsResponse": { - "description": "Response message to list resource value configs", "id": "ListResourceValueConfigsResponse", "properties": { "nextPageToken": { - "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages.", "type": "string" }, "resourceValueConfigs": { - "description": "The resource value configs from the specified parent.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceValueConfig" }, @@ -15852,15 +13985,12 @@ "type": "object" }, "ListSecurityHealthAnalyticsCustomModulesResponse": { - "description": "Response message for listing Security Health Analytics custom modules.", "id": "ListSecurityHealthAnalyticsCustomModulesResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more custom modules to be returned.", "type": "string" }, "securityHealthAnalyticsCustomModules": { - "description": "Custom modules belonging to the requested parent.", "items": { "$ref": "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule" }, @@ -15870,15 +14000,12 @@ "type": "object" }, "ListSourcesResponse": { - "description": "Response message for listing sources.", "id": "ListSourcesResponse", "properties": { "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "sources": { - "description": "Sources belonging to the requested parent.", "items": { "$ref": "Source" }, @@ -15888,20 +14015,16 @@ "type": "object" }, "ListValuedResourcesResponse": { - "description": "Response message for listing the valued resources for a given simulation.", "id": "ListValuedResourcesResponse", "properties": { "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "totalSize": { - "description": "The estimated total number of results matching the query.", "format": "int32", "type": "integer" }, "valuedResources": { - "description": "The valued resources that the attack path simulation identified.", "items": { "$ref": "ValuedResource" }, @@ -15911,37 +14034,30 @@ "type": "object" }, "LoadBalancer": { - "description": "Contains information related to the load balancer associated with the finding.", "id": "LoadBalancer", "properties": { "name": { - "description": "The name of the load balancer associated with the finding.", "type": "string" } }, "type": "object" }, "LogEntry": { - "description": "An individual entry in a log.", "id": "LogEntry", "properties": { "cloudLoggingEntry": { - "$ref": "CloudLoggingEntry", - "description": "An individual entry in a log stored in Cloud Logging." + "$ref": "CloudLoggingEntry" } }, "type": "object" }, "MemoryHashSignature": { - "description": "A signature corresponding to memory page hashes.", "id": "MemoryHashSignature", "properties": { "binaryFamily": { - "description": "The binary family.", "type": "string" }, "detections": { - "description": "The list of memory hash detections contributing to the binary family match.", "items": { "$ref": "Detection" }, @@ -15951,11 +14067,9 @@ "type": "object" }, "MitreAttack": { - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org", "id": "MitreAttack", "properties": { "additionalTactics": { - "description": "Additional MITRE ATT&CK tactics related to this finding, if any.", "items": { "enum": [ "TACTIC_UNSPECIFIED", @@ -15975,28 +14089,27 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "additionalTechniques": { - "description": "Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -16140,152 +14253,151 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "primaryTactic": { - "description": "The MITRE ATT&CK tactic most closely represented by this finding, if any.", "enum": [ "TACTIC_UNSPECIFIED", "RECONNAISSANCE", @@ -16304,26 +14416,25 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "primaryTechniques": { - "description": "The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -16467,207 +14578,196 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "version": { - "description": "The MITRE ATT&CK version referenced by the above fields. E.g. \"8\".", "type": "string" } }, "type": "object" }, "MuteInfo": { - "description": "Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules.", "id": "MuteInfo", "properties": { "dynamicMuteRecords": { - "description": "The list of dynamic mute rules that currently match the finding.", "items": { "$ref": "DynamicMuteRecord" }, "type": "array" }, "staticMute": { - "$ref": "StaticMute", - "description": "If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute." + "$ref": "StaticMute" } }, "type": "object" }, "Network": { - "description": "Contains information about a VPC network associated with the finding.", "id": "Network", "properties": { "name": { - "description": "The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`.", "type": "string" } }, "type": "object" }, "Node": { - "description": "Kubernetes nodes associated with the finding.", "id": "Node", "properties": { "name": { - "description": "[Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node.", "type": "string" } }, "type": "object" }, "NodePool": { - "description": "Provides GKE node pool information.", "id": "NodePool", "properties": { "name": { - "description": "Kubernetes node pool name.", "type": "string" }, "nodes": { - "description": "Nodes associated with the finding.", "items": { "$ref": "Node" }, @@ -16677,109 +14777,87 @@ "type": "object" }, "Notebook": { - "description": "Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding.", "id": "Notebook", "properties": { "lastAuthor": { - "description": "The user ID of the latest author to modify the notebook.", "type": "string" }, "name": { - "description": "The name of the notebook.", "type": "string" }, "notebookUpdateTime": { - "description": "The most recent time the notebook was updated.", "format": "google-datetime", "type": "string" }, "service": { - "description": "The source notebook service, for example, \"Colab Enterprise\".", "type": "string" } }, "type": "object" }, "NotificationConfig": { - "description": "Cloud Security Command Center (Cloud SCC) notification configs. A notification config is a Cloud SCC resource that contains the configuration to send notifications for create/update events of findings, assets and etc.", "id": "NotificationConfig", "properties": { "description": { - "description": "The description of the notification config (max of 1024 characters).", "type": "string" }, "name": { - "description": "The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/notificationConfigs/notify_public_bucket\", \"folders/{folder_id}/notificationConfigs/notify_public_bucket\", or \"projects/{project_id}/notificationConfigs/notify_public_bucket\".", "type": "string" }, "pubsubTopic": { - "description": "The Pub/Sub topic to send notifications to. Its format is \"projects/[project_id]/topics/[topic]\".", "type": "string" }, "serviceAccount": { - "description": "Output only. The service account that needs \"pubsub.topics.publish\" permission to publish to the Pub/Sub topic.", "readOnly": true, "type": "string" }, "streamingConfig": { - "$ref": "StreamingConfig", - "description": "The config for triggering streaming-based notifications." + "$ref": "StreamingConfig" } }, "type": "object" }, "Object": { - "description": "Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.", "id": "Object", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "Container" }, "type": "array" }, "group": { - "description": "Kubernetes object group, such as \"policy.k8s.io/v1\".", "type": "string" }, "kind": { - "description": "Kubernetes object kind, such as \"Namespace\".", "type": "string" }, "name": { - "description": "Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.", "type": "string" }, "ns": { - "description": "Kubernetes object namespace. Must be a valid DNS label. Named \"ns\" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.", "type": "string" } }, "type": "object" }, "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", "properties": { "done": { - "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", "type": "boolean" }, "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "$ref": "Status" }, "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": { @@ -16787,153 +14865,124 @@ "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", "type": "object" } }, "type": "object" }, "OrgPolicy": { - "description": "Contains information about the org policies associated with the finding.", "id": "OrgPolicy", "properties": { "name": { - "description": "The resource name of the org policy. Example: \"organizations/{organization_id}/policies/{constraint_name}\"", "type": "string" } }, "type": "object" }, "OrganizationSettings": { - "description": "User specified settings that are attached to the Security Command Center organization.", "id": "OrganizationSettings", "properties": { "assetDiscoveryConfig": { - "$ref": "AssetDiscoveryConfig", - "description": "The configuration used for Asset Discovery runs." + "$ref": "AssetDiscoveryConfig" }, "enableAssetDiscovery": { - "description": "A flag that indicates if Asset Discovery should be enabled. If the flag is set to `true`, then discovery of assets will occur. If it is set to `false`, all historical assets will remain, but discovery of future assets will not occur.", "type": "boolean" }, "name": { - "description": "The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/organizationSettings\".", "type": "string" } }, "type": "object" }, "Package": { - "description": "Package is a generic definition of a package.", "id": "Package", "properties": { "cpeUri": { - "description": "The CPE URI where the vulnerability was detected.", "type": "string" }, "packageName": { - "description": "The name of the package where the vulnerability was detected.", "type": "string" }, "packageType": { - "description": "Type of package, for example, os, maven, or go.", "type": "string" }, "packageVersion": { - "description": "The version of the package.", "type": "string" } }, "type": "object" }, "PathNodeAssociatedFinding": { - "description": "A finding that is associated with this node in the attack path.", "id": "PathNodeAssociatedFinding", "properties": { "canonicalFinding": { - "description": "Canonical name of the associated findings. Example: `organizations/123/sources/456/findings/789`", "type": "string" }, "findingCategory": { - "description": "The additional taxonomy group within findings from a given source.", "type": "string" }, "name": { - "description": "Full resource name of the finding.", "type": "string" } }, "type": "object" }, "Pipeline": { - "description": "Vertex AI training pipeline associated with the finding.", "id": "Pipeline", "properties": { "displayName": { - "description": "The user defined display name of pipeline, e.g. plants-classification", "type": "string" }, "name": { - "description": "Resource name of the pipeline, e.g. projects/{project}/locations/{location}/trainingPipelines/5253428229225578496", "type": "string" } }, "type": "object" }, "Pod": { - "description": "A Kubernetes Pod.", "id": "Pod", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "Container" }, "type": "array" }, "labels": { - "description": "Pod labels. For Kubernetes containers, these are applied to the container.", "items": { "$ref": "Label" }, "type": "array" }, "name": { - "description": "Kubernetes Pod name.", "type": "string" }, "ns": { - "description": "Kubernetes Pod namespace.", "type": "string" } }, "type": "object" }, "Policy": { - "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < 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": "Policy", "properties": { "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", "items": { "$ref": "AuditConfig" }, "type": "array" }, "bindings": { - "description": "Associates a list of `members`, or principals, with 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 principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`.", "items": { "$ref": "Binding" }, "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" } @@ -16941,45 +14990,36 @@ "type": "object" }, "PolicyDriftDetails": { - "description": "The policy field that violates the deployed posture and its expected and detected values.", "id": "PolicyDriftDetails", "properties": { "detectedValue": { - "description": "The detected value that violates the deployed posture, for example, `false` or `allowed_values={\"projects/22831892\"}`.", "type": "string" }, "expectedValue": { - "description": "The value of this field that was configured in a posture, for example, `true` or `allowed_values={\"projects/29831892\"}`.", "type": "string" }, "field": { - "description": "The name of the updated field, for example constraint.implementation.policy_rules[0].enforce", "type": "string" } }, "type": "object" }, "PolicyViolationSummary": { - "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", "id": "PolicyViolationSummary", "properties": { "conformantResourcesCount": { - "description": "Total number of child resources that conform to the policy.", "format": "int64", "type": "string" }, "evaluationErrorsCount": { - "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", "format": "int64", "type": "string" }, "outOfScopeResourcesCount": { - "description": "Total count of child resources which were not in scope for evaluation.", "format": "int64", "type": "string" }, "policyViolationsCount": { - "description": "Count of child resources in violation of the policy.", "format": "int64", "type": "string" } @@ -16987,16 +15027,13 @@ "type": "object" }, "PortRange": { - "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "PortRange", "properties": { "max": { - "description": "Maximum port value.", "format": "int64", "type": "string" }, "min": { - "description": "Minimum port value.", "format": "int64", "type": "string" } @@ -17004,16 +15041,13 @@ "type": "object" }, "Position": { - "description": "A position in the uploaded text version of a module.", "id": "Position", "properties": { "columnNumber": { - "description": "The column number.", "format": "int32", "type": "integer" }, "lineNumber": { - "description": "The line number.", "format": "int32", "type": "integer" } @@ -17021,62 +15055,50 @@ "type": "object" }, "Process": { - "description": "Represents an operating system process.", "id": "Process", "properties": { "args": { - "description": "Process arguments as JSON encoded strings.", "items": { "type": "string" }, "type": "array" }, "argumentsTruncated": { - "description": "True if `args` is incomplete.", "type": "boolean" }, "binary": { - "$ref": "File", - "description": "File information for the process executable." + "$ref": "File" }, "envVariables": { - "description": "Process environment variables.", "items": { "$ref": "EnvironmentVariable" }, "type": "array" }, "envVariablesTruncated": { - "description": "True if `env_variables` is incomplete.", "type": "boolean" }, "libraries": { - "description": "File information for libraries loaded by the process.", "items": { "$ref": "File" }, "type": "array" }, "name": { - "description": "The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.", "type": "string" }, "parentPid": { - "description": "The parent process ID.", "format": "int64", "type": "string" }, "pid": { - "description": "The process ID.", "format": "int64", "type": "string" }, "script": { - "$ref": "File", - "description": "When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter." + "$ref": "File" }, "userId": { - "description": "The ID of the user that executed the process. E.g. If this is the root user this will always be 0.", "format": "int64", "type": "string" } @@ -17084,70 +15106,58 @@ "type": "object" }, "ProcessSignature": { - "description": "Indicates what signature matched this process.", "id": "ProcessSignature", "properties": { "memoryHashSignature": { - "$ref": "MemoryHashSignature", - "description": "Signature indicating that a binary family was matched." + "$ref": "MemoryHashSignature" }, "signatureType": { - "description": "Describes the type of resource associated with the signature.", "enum": [ "SIGNATURE_TYPE_UNSPECIFIED", "SIGNATURE_TYPE_PROCESS", "SIGNATURE_TYPE_FILE" ], "enumDescriptions": [ - "The default signature type.", - "Used for signatures concerning processes.", - "Used for signatures concerning disks." + "", + "", + "" ], "type": "string" }, "yaraRuleSignature": { - "$ref": "YaraRuleSignature", - "description": "Signature indicating that a YARA rule was matched." + "$ref": "YaraRuleSignature" } }, "type": "object" }, "Reference": { - "description": "Additional Links", "id": "Reference", "properties": { "source": { - "description": "Source of the reference e.g. NVD", "type": "string" }, "uri": { - "description": "Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.", "type": "string" } }, "type": "object" }, "Requests": { - "description": "Information about the requests relevant to the finding.", "id": "Requests", "properties": { "longTermAllowed": { - "description": "Allowed RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "longTermDenied": { - "description": "Denied RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "ratio": { - "description": "For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term.", "format": "double", "type": "number" }, "shortTermAllowed": { - "description": "Allowed RPS (requests per second) in the short term.", "format": "int32", "type": "integer" } @@ -17155,35 +15165,27 @@ "type": "object" }, "Resource": { - "description": "Information related to the Google Cloud resource that is associated with this finding.", "id": "Resource", "properties": { "adcApplication": { - "$ref": "AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "AdcApplication" }, "adcApplicationTemplate": { - "$ref": "AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplication" }, "awsMetadata": { - "$ref": "AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "AwsMetadata" }, "azureMetadata": { - "$ref": "AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the finding is from.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -17191,77 +15193,62 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "folders": { - "description": "Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "Folder" }, "type": "array" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "organization": { - "description": "Indicates which organization / tenant the finding is for.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "parentName": { - "description": "The full resource name of resource's parent.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" }, "projectName": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "resourcePath": { - "$ref": "ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `org/{organization_id}/folder/{folder_id}/folder/{folder_id}/project/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The service or resource provider associated with the resource.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "ResourcePath": { - "description": "Represents the path of resources leading up to the resource this finding is about.", "id": "ResourcePath", "properties": { "nodes": { - "description": "The list of nodes that make the up resource path, ordered from lowest level to highest level.", "items": { "$ref": "ResourcePathNode" }, @@ -17271,19 +15258,15 @@ "type": "object" }, "ResourcePathNode": { - "description": "A node within the resource path. Each node represents a resource within the resource hierarchy.", "id": "ResourcePathNode", "properties": { "displayName": { - "description": "The display name of the resource this node represents.", "type": "string" }, "id": { - "description": "The ID of the resource this node represents.", "type": "string" }, "nodeType": { - "description": "The type of resource this node represents.", "enum": [ "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED", "GCP_ORGANIZATION", @@ -17297,16 +15280,16 @@ "AZURE_RESOURCE_GROUP" ], "enumDescriptions": [ - "Node type is unspecified.", - "The node represents a Google Cloud organization.", - "The node represents a Google Cloud folder.", - "The node represents a Google Cloud project.", - "The node represents an AWS organization.", - "The node represents an AWS organizational unit.", - "The node represents an AWS account.", - "The node represents an Azure management group.", - "The node represents an Azure subscription.", - "The node represents an Azure resource group." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -17314,107 +15297,88 @@ "type": "object" }, "ResourceValueConfigMetadata": { - "description": "Metadata about a ResourceValueConfig. For example, id and name.", "id": "ResourceValueConfigMetadata", "properties": { "name": { - "description": "Resource value config name", "type": "string" } }, "type": "object" }, "Role": { - "description": "Kubernetes Role or ClusterRole.", "id": "Role", "properties": { "kind": { - "description": "Role type.", "enum": [ "KIND_UNSPECIFIED", "ROLE", "CLUSTER_ROLE" ], "enumDescriptions": [ - "Role type is not specified.", - "Kubernetes Role.", - "Kubernetes ClusterRole." + "", + "", + "" ], "type": "string" }, "name": { - "description": "Role name.", "type": "string" }, "ns": { - "description": "Role namespace.", "type": "string" } }, "type": "object" }, "RunAssetDiscoveryRequest": { - "description": "Request message for running asset discovery for an organization.", "id": "RunAssetDiscoveryRequest", "properties": {}, "type": "object" }, "Secret": { - "description": "Details about a secret or credential associated with the finding.", "id": "Secret", "properties": { "environmentVariable": { - "$ref": "SecretEnvironmentVariable", - "description": "The environment variable containing the secret." + "$ref": "SecretEnvironmentVariable" }, "filePath": { - "$ref": "SecretFilePath", - "description": "The file containing the secret." + "$ref": "SecretFilePath" }, "status": { - "$ref": "SecretStatus", - "description": "The status of the secret." + "$ref": "SecretStatus" }, "type": { - "description": "The type of secret, for example, GCP_API_KEY.", "type": "string" } }, "type": "object" }, "SecretEnvironmentVariable": { - "description": "Environment variable containing the secret.", "id": "SecretEnvironmentVariable", "properties": { "key": { - "description": "Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content.", "type": "string" } }, "type": "object" }, "SecretFilePath": { - "description": "File path containing the secret.", "id": "SecretFilePath", "properties": { "path": { - "description": "Path to the file.", "type": "string" } }, "type": "object" }, "SecretStatus": { - "description": "The status of the secret.", "id": "SecretStatus", "properties": { "lastUpdatedTime": { - "description": "Time that the secret was found.", "format": "google-datetime", "type": "string" }, "validity": { - "description": "The validity of the secret.", "enum": [ "SECRET_VALIDITY_UNSPECIFIED", "SECRET_VALIDITY_UNSUPPORTED", @@ -17423,11 +15387,11 @@ "SECRET_VALIDITY_VALID" ], "enumDescriptions": [ - "Default value; no validation was attempted.", - "There is no mechanism to validate the secret.", - "Validation is supported but the validation failed.", - "The secret is confirmed to be invalid.", - "The secret is confirmed to be valid." + "", + "", + "", + "", + "" ], "type": "string" } @@ -17435,163 +15399,130 @@ "type": "object" }, "SecurityBulletin": { - "description": "SecurityBulletin are notifications of vulnerabilities of Google products.", "id": "SecurityBulletin", "properties": { "bulletinId": { - "description": "ID of the bulletin corresponding to the vulnerability.", "type": "string" }, "submissionTime": { - "description": "Submission time of this Security Bulletin.", "format": "google-datetime", "type": "string" }, "suggestedUpgradeVersion": { - "description": "This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0", "type": "string" } }, "type": "object" }, "SecurityCenterProperties": { - "description": "Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user.", "id": "SecurityCenterProperties", "properties": { "folders": { - "description": "Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "Folder" }, "type": "array" }, "resourceDisplayName": { - "description": "The user defined display name for this resource.", "type": "string" }, "resourceName": { - "description": "The full resource name of the Google Cloud resource this asset represents. This field is immutable after create time. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceOwners": { - "description": "Owners of the Google Cloud resource.", "items": { "type": "string" }, "type": "array" }, "resourceParent": { - "description": "The full resource name of the immediate parent of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceParentDisplayName": { - "description": "The user defined display name for the parent of this resource.", "type": "string" }, "resourceProject": { - "description": "The full resource name of the project the resource belongs to. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceProjectDisplayName": { - "description": "The user defined display name for the project of this resource.", "type": "string" }, "resourceType": { - "description": "The type of the Google Cloud resource. Examples include: APPLICATION, PROJECT, and ORGANIZATION. This is a case insensitive field defined by Security Command Center and/or the producer of the resource and is immutable after create time.", "type": "string" } }, "type": "object" }, "SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"folders/{folder_id}/assets/{asset_id}/securityMarks\" \"projects/{project_number}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks\"", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "SecurityPolicy": { - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding.", "id": "SecurityPolicy", "properties": { "name": { - "description": "The name of the Google Cloud Armor security policy, for example, \"my-security-policy\".", "type": "string" }, "preview": { - "description": "Whether or not the associated rule or policy is in preview mode.", "type": "boolean" }, "type": { - "description": "The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'.", "type": "string" } }, "type": "object" }, "SecurityPosture": { - "description": "Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud.", "id": "SecurityPosture", "properties": { "changedPolicy": { - "description": "The name of the updated policy, for example, `projects/{project_id}/policies/{constraint_name}`.", "type": "string" }, "name": { - "description": "Name of the posture, for example, `CIS-Posture`.", "type": "string" }, "policy": { - "description": "The ID of the updated policy, for example, `compute-policy-1`.", "type": "string" }, "policyDriftDetails": { - "description": "The details about a change in an updated policy that violates the deployed posture.", "items": { "$ref": "PolicyDriftDetails" }, "type": "array" }, "policySet": { - "description": "The name of the updated policyset, for example, `cis-policyset`.", "type": "string" }, "postureDeployment": { - "description": "The name of the posture deployment, for example, `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.", "type": "string" }, "postureDeploymentResource": { - "description": "The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number}`.", "type": "string" }, "revisionId": { - "description": "The version of the posture, for example, `c7cfa2a8`.", "type": "string" } }, "type": "object" }, "SensitivityScore": { - "description": "Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive.", "id": "SensitivityScore", "properties": { "score": { - "description": "The sensitivity score applied to the resource.", "enum": [ "SENSITIVITY_SCORE_LEVEL_UNSPECIFIED", "SENSITIVITY_LOW", @@ -17600,11 +15531,11 @@ "SENSITIVITY_HIGH" ], "enumDescriptions": [ - "Unused.", - "No sensitive information detected. The resource isn't publicly accessible.", - "Unable to determine sensitivity.", - "Medium risk. Contains personally identifiable information (PII), potentially sensitive data, or fields with free-text data that are at a higher risk of having intermittent sensitive data. Consider limiting access.", - "High risk. Sensitive personally identifiable information (SPII) can be present. Exfiltration of data can lead to user data loss. Re-identification of users might be possible. Consider limiting usage and or removing SPII." + "", + "", + "", + "", + "" ], "type": "string" } @@ -17612,41 +15543,35 @@ "type": "object" }, "ServiceAccountDelegationInfo": { - "description": "Identity delegation history of an authenticated service account.", "id": "ServiceAccountDelegationInfo", "properties": { "principalEmail": { - "description": "The email address of a Google account.", "type": "string" }, "principalSubject": { - "description": "A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name}[{subject}]`", "type": "string" } }, "type": "object" }, "SetFindingStateRequest": { - "description": "Request message for updating a finding's state.", "id": "SetFindingStateRequest", "properties": { "startTime": { "deprecated": true, - "description": "Optional. The time at which the updated state takes effect. If unset, defaults to the request time.", "format": "google-datetime", "type": "string" }, "state": { - "description": "Required. The desired State of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" } @@ -17654,15 +15579,12 @@ "type": "object" }, "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", "id": "SetIamPolicyRequest", "properties": { "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them." + "$ref": "Policy" }, "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" } @@ -17670,11 +15592,9 @@ "type": "object" }, "SetMuteRequest": { - "description": "Request message for updating a finding's mute status.", "id": "SetMuteRequest", "properties": { "mute": { - "description": "Required. The desired state of the Mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -17682,10 +15602,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -17693,79 +15613,64 @@ "type": "object" }, "SimulateSecurityHealthAnalyticsCustomModuleRequest": { - "description": "Request message to simulate a CustomConfig against a given test resource. Maximum size of the request is 4 MB by default.", "id": "SimulateSecurityHealthAnalyticsCustomModuleRequest", "properties": { "customConfig": { - "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "Required. The custom configuration that you need to test." + "$ref": "GoogleCloudSecuritycenterV1CustomConfig" }, "resource": { - "$ref": "SimulatedResource", - "description": "Required. Resource data to simulate custom module against." + "$ref": "SimulatedResource" } }, "type": "object" }, "SimulateSecurityHealthAnalyticsCustomModuleResponse": { - "description": "Response message for simulating a `SecurityHealthAnalyticsCustomModule` against a given resource.", "id": "SimulateSecurityHealthAnalyticsCustomModuleResponse", "properties": { "result": { - "$ref": "SimulatedResult", - "description": "Result for test case in the corresponding request." + "$ref": "SimulatedResult" } }, "type": "object" }, "SimulatedResource": { - "description": "Manually constructed resource name. If the custom module evaluates against only the resource data, you can omit the `iam_policy_data` field. If it evaluates only the `iam_policy_data` field, you can omit the resource data.", "id": "SimulatedResource", "properties": { "iamPolicyData": { - "$ref": "Policy", - "description": "Optional. A representation of the IAM policy." + "$ref": "Policy" }, "resourceData": { "additionalProperties": { "description": "Properties of the object.", "type": "any" }, - "description": "Optional. A representation of the Google Cloud resource. Should match the Google Cloud resource JSON format.", "type": "object" }, "resourceType": { - "description": "Required. The type of the resource, for example, `compute.googleapis.com/Disk`.", "type": "string" } }, "type": "object" }, "SimulatedResult": { - "description": "Possible test result.", "id": "SimulatedResult", "properties": { "error": { - "$ref": "Status", - "description": "Error encountered during the test." + "$ref": "Status" }, "finding": { - "$ref": "Finding", - "description": "Finding that would be published for the test case, if a violation is detected." + "$ref": "Finding" }, "noViolation": { - "$ref": "Empty", - "description": "Indicates that the test case does not trigger any violation." + "$ref": "Empty" } }, "type": "object" }, "Simulation": { - "description": "Attack path simulation", "id": "Simulation", "properties": { "cloudProvider": { - "description": "Indicates which cloud provider was used in this simulation.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -17773,25 +15678,22 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Time simulation was created", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "Full resource name of the Simulation: `organizations/123/simulations/456`", "type": "string" }, "resourceValueConfigsMetadata": { - "description": "Resource value configurations' metadata used in this simulation. Maximum of 100.", "items": { "$ref": "ResourceValueConfigMetadata" }, @@ -17801,39 +15703,31 @@ "type": "object" }, "Source": { - "description": "Security Command Center finding source. A finding source is an entity or a mechanism that can produce a finding. A source is like a container of findings that come from the same scanner, logger, monitor, and other tools.", "id": "Source", "properties": { "canonicalName": { - "description": "The canonical name of the finding source. It's either \"organizations/{organization_id}/sources/{source_id}\", \"folders/{folder_id}/sources/{source_id}\", or \"projects/{project_number}/sources/{source_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "description": { - "description": "The description of the source (max of 1024 characters). Example: \"Web Security Scanner is a web security scanner for common vulnerabilities in App Engine applications. It can automatically scan and detect four common vulnerabilities, including cross-site-scripting (XSS), Flash injection, mixed content (HTTP in HTTPS), and outdated or insecure libraries.\"", "type": "string" }, "displayName": { - "description": "The source's display name. A source's display name must be unique amongst its siblings, for example, two sources with the same parent can't share the same display name. The display name must have a length between 1 and 64 characters (inclusive).", "type": "string" }, "name": { - "description": "The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" } }, "type": "object" }, "StaticMute": { - "description": "Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly.", "id": "StaticMute", "properties": { "applyTime": { - "description": "When the static mute was applied.", "format": "google-datetime", "type": "string" }, "state": { - "description": "The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -17841,10 +15735,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -17852,16 +15746,13 @@ "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.", @@ -17872,29 +15763,24 @@ "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" }, "StreamingConfig": { - "description": "The config for streaming-based notifications, which send each event as soon as it is detected.", "id": "StreamingConfig", "properties": { "filter": { - "description": "Expression that defines the filter to apply across create/update events of assets or findings as specified by the event type. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" } }, "type": "object" }, "Subject": { - "description": "Represents a Kubernetes subject.", "id": "Subject", "properties": { "kind": { - "description": "Authentication type for the subject.", "enum": [ "AUTH_TYPE_UNSPECIFIED", "USER", @@ -17902,30 +15788,26 @@ "GROUP" ], "enumDescriptions": [ - "Authentication is not specified.", - "User with valid certificate.", - "Users managed by Kubernetes API with credentials stored as secrets.", - "Collection of users." + "", + "", + "", + "" ], "type": "string" }, "name": { - "description": "Name for the subject.", "type": "string" }, "ns": { - "description": "Namespace for the subject.", "type": "string" } }, "type": "object" }, "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", "id": "TestIamPermissionsRequest", "properties": { "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" }, @@ -17935,11 +15817,9 @@ "type": "object" }, "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", "id": "TestIamPermissionsResponse", "properties": { "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", "items": { "type": "string" }, @@ -17949,48 +15829,38 @@ "type": "object" }, "TicketInfo": { - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", "id": "TicketInfo", "properties": { "assignee": { - "description": "The assignee of the ticket in the ticket system.", "type": "string" }, "description": { - "description": "The description of the ticket in the ticket system.", "type": "string" }, "id": { - "description": "The identifier of the ticket in the ticket system.", "type": "string" }, "status": { - "description": "The latest status of the ticket, as reported by the ticket system.", "type": "string" }, "updateTime": { - "description": "The time when the ticket was last updated, as reported by the ticket system.", "format": "google-datetime", "type": "string" }, "uri": { - "description": "The link to the ticket in the ticket system.", "type": "string" } }, "type": "object" }, "ToxicCombination": { - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "id": "ToxicCombination", "properties": { "attackExposureScore": { - "description": "The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack.", "format": "double", "type": "number" }, "relatedFindings": { - "description": "List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`.", "items": { "type": "string" }, @@ -18000,58 +15870,46 @@ "type": "object" }, "ValidateEventThreatDetectionCustomModuleRequest": { - "description": "Request to validate an Event Threat Detection custom module.", "id": "ValidateEventThreatDetectionCustomModuleRequest", "properties": { "rawText": { - "description": "Required. The raw text of the module's contents. Used to generate error messages.", "type": "string" }, "type": { - "description": "Required. The type of the module (e.g. CONFIGURABLE_BAD_IP).", "type": "string" } }, "type": "object" }, "ValidateEventThreatDetectionCustomModuleResponse": { - "description": "Response to validating an Event Threat Detection custom module.", "id": "ValidateEventThreatDetectionCustomModuleResponse", "properties": { "errors": { - "$ref": "CustomModuleValidationErrors", - "description": "A list of errors returned by the validator. If the list is empty, there were no errors." + "$ref": "CustomModuleValidationErrors" } }, "type": "object" }, "ValuedResource": { - "description": "A resource that is determined to have value to a user's system", "id": "ValuedResource", "properties": { "displayName": { - "description": "Human-readable name of the valued resource.", "type": "string" }, "exposedScore": { - "description": "Exposed score for this valued resource. A value of 0 means no exposure was detected exposure.", "format": "double", "type": "number" }, "name": { - "description": "Valued resource name, for example, e.g.: `organizations/123/simulations/456/valuedResources/789`", "type": "string" }, "resource": { - "description": "The [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name) of the valued resource.", "type": "string" }, "resourceType": { - "description": "The [resource type](https://cloud.google.com/asset-inventory/docs/supported-asset-types) of the valued resource.", "type": "string" }, "resourceValue": { - "description": "How valuable this resource is.", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "RESOURCE_VALUE_LOW", @@ -18059,15 +15917,14 @@ "RESOURCE_VALUE_HIGH" ], "enumDescriptions": [ - "The resource value isn't specified.", - "This is a low-value resource.", - "This is a medium-value resource.", - "This is a high-value resource." + "", + "", + "", + "" ], "type": "string" }, "resourceValueConfigsUsed": { - "description": "List of resource value configurations' metadata used to determine the value of this resource. Maximum of 100.", "items": { "$ref": "ResourceValueConfigMetadata" }, @@ -18077,18 +15934,15 @@ "type": "object" }, "VertexAi": { - "description": "Vertex AI-related information associated with the finding.", "id": "VertexAi", "properties": { "datasets": { - "description": "Datasets associated with the finding.", "items": { "$ref": "Dataset" }, "type": "array" }, "pipelines": { - "description": "Pipelines associated with the finding.", "items": { "$ref": "Pipeline" }, @@ -18098,46 +15952,37 @@ "type": "object" }, "Vulnerability": { - "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "Vulnerability", "properties": { "cve": { - "$ref": "Cve", - "description": "CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "Cve" }, "cwes": { - "description": "Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability.", "items": { "$ref": "Cwe" }, "type": "array" }, "fixedPackage": { - "$ref": "Package", - "description": "The fixed package is relevant to the finding." + "$ref": "Package" }, "offendingPackage": { - "$ref": "Package", - "description": "The offending package is relevant to the finding." + "$ref": "Package" }, "providerRiskScore": { - "description": "Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is.", "format": "int64", "type": "string" }, "reachable": { - "description": "Represents whether the vulnerability is reachable (detected via static analysis)", "type": "boolean" }, "securityBulletin": { - "$ref": "SecurityBulletin", - "description": "The security bulletin is relevant to this finding." + "$ref": "SecurityBulletin" } }, "type": "object" }, "VulnerabilityCountBySeverity": { - "description": "Vulnerability count by severity.", "id": "VulnerabilityCountBySeverity", "properties": { "severityToFindingCount": { @@ -18145,18 +15990,15 @@ "format": "int64", "type": "string" }, - "description": "Key is the Severity enum.", "type": "object" } }, "type": "object" }, "VulnerabilitySnapshot": { - "description": "Result containing the properties and count of a VulnerabilitySnapshot request.", "id": "VulnerabilitySnapshot", "properties": { "cloudProvider": { - "description": "The cloud provider for the vulnerability snapshot.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -18164,23 +16006,20 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "findingCount": { - "$ref": "VulnerabilityCountBySeverity", - "description": "The vulnerability count by severity." + "$ref": "VulnerabilityCountBySeverity" }, "name": { - "description": "Identifier. The vulnerability snapshot name. Format: //locations//vulnerabilitySnapshots/", "type": "string" }, "snapshotTime": { - "description": "The time that the snapshot was taken.", "format": "google-datetime", "type": "string" } @@ -18188,11 +16027,9 @@ "type": "object" }, "YaraRuleSignature": { - "description": "A signature corresponding to a YARA rule.", "id": "YaraRuleSignature", "properties": { "yaraRule": { - "description": "The name of the YARA rule.", "type": "string" } }, diff --git a/discovery/securitycenter-v1beta1.json b/discovery/securitycenter-v1beta1.json index 671c570a8b..70cb2eef33 100644 --- a/discovery/securitycenter-v1beta1.json +++ b/discovery/securitycenter-v1beta1.json @@ -125,7 +125,7 @@ "organizations": { "methods": { "getOrganizationSettings": { - "description": "Gets the settings for an organization.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/organizationSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getOrganizationSettings", @@ -134,7 +134,6 @@ ], "parameters": { "name": { - "description": "Required. Name of the organization to get organization settings for. Its format is \"organizations/[organization_id]/organizationSettings\".", "location": "path", "pattern": "^organizations/[^/]+/organizationSettings$", "required": true, @@ -151,7 +150,7 @@ }, "updateOrganizationSettings": { "deprecated": true, - "description": "Updates an organization's settings.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/organizationSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateOrganizationSettings", @@ -160,14 +159,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/organizationSettings\".", "location": "path", "pattern": "^organizations/[^/]+/organizationSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the settings resource.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -189,7 +186,7 @@ "assets": { "methods": { "group": { - "description": "Filters an organization's assets and groups them by their specified properties.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/assets:group", "httpMethod": "POST", "id": "securitycenter.organizations.assets.group", @@ -198,7 +195,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the organization to groupBy. Its format is \"organizations/[organization_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -217,7 +213,7 @@ ] }, "list": { - "description": "Lists an organization's assets.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/assets", "httpMethod": "GET", "id": "securitycenter.organizations.assets.list", @@ -226,47 +222,39 @@ ], "parameters": { "compareDuration": { - "description": "When compare_duration is set, the ListAssetResult's \"state\" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible \"state\" values when compare_duration is specified: * \"ADDED\": indicates that the asset was not present before compare_duration, but present at read_time. * \"REMOVED\": indicates that the asset was present at the start of compare_duration, but not present at read_time. * \"ACTIVE\": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state is \"UNUSED\", which indicates that the asset is present at read_time.", "format": "google-duration", "location": "query", "type": "string" }, "fieldMask": { - "description": "Optional. A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `resource_properties.size = 100` is a valid filter string.", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,resource_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,resource_properties.a_property\" and \" name desc , resource_properties.a_property \" are equivalent.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the organization assets should belong to. Its format is \"organizations/[organization_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -281,7 +269,7 @@ ] }, "runDiscovery": { - "description": "Runs asset discovery. The discovery is tracked with a long-running operation. This API can only be called with limited frequency for an organization. If it is called too frequently the caller will receive a TOO_MANY_REQUESTS error.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/assets:runDiscovery", "httpMethod": "POST", "id": "securitycenter.organizations.assets.runDiscovery", @@ -290,7 +278,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the organization to run asset discovery for. Its format is \"organizations/[organization_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -309,7 +296,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/assets/{assetsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.organizations.assets.updateSecurityMarks", @@ -318,20 +305,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^organizations/[^/]+/assets/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -353,7 +337,7 @@ "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`.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/operations/{operationsId}:cancel", "httpMethod": "POST", "id": "securitycenter.organizations.operations.cancel", @@ -362,7 +346,6 @@ ], "parameters": { "name": { - "description": "The name of the operation resource to be cancelled.", "location": "path", "pattern": "^organizations/[^/]+/operations/[^/]+$", "required": true, @@ -381,7 +364,7 @@ ] }, "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`.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/operations/{operationsId}", "httpMethod": "DELETE", "id": "securitycenter.organizations.operations.delete", @@ -390,7 +373,6 @@ ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", "location": "path", "pattern": "^organizations/[^/]+/operations/[^/]+$", "required": true, @@ -406,7 +388,7 @@ ] }, "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.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/operations/{operationsId}", "httpMethod": "GET", "id": "securitycenter.organizations.operations.get", @@ -415,7 +397,6 @@ ], "parameters": { "name": { - "description": "The name of the operation resource.", "location": "path", "pattern": "^organizations/[^/]+/operations/[^/]+$", "required": true, @@ -431,7 +412,7 @@ ] }, "list": { - "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/operations", "httpMethod": "GET", "id": "securitycenter.organizations.operations.list", @@ -440,30 +421,25 @@ ], "parameters": { "filter": { - "description": "The standard list filter.", "location": "query", "type": "string" }, "name": { - "description": "The name of the operation's parent resource.", "location": "path", "pattern": "^organizations/[^/]+/operations$", "required": true, "type": "string" }, "pageSize": { - "description": "The standard list page size.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The standard list page token.", "location": "query", "type": "string" }, "returnPartialSuccess": { - "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.", "location": "query", "type": "boolean" } @@ -481,7 +457,7 @@ "sources": { "methods": { "create": { - "description": "Creates a source.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources", "httpMethod": "POST", "id": "securitycenter.organizations.sources.create", @@ -490,7 +466,6 @@ ], "parameters": { "parent": { - "description": "Required. Resource name of the new source's parent. Its format should be \"organizations/[organization_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -509,7 +484,7 @@ ] }, "get": { - "description": "Gets a source.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}", "httpMethod": "GET", "id": "securitycenter.organizations.sources.get", @@ -518,7 +493,6 @@ ], "parameters": { "name": { - "description": "Required. Relative resource name of the source. Its format is \"organizations/[organization_id]/source/[source_id]\".", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -534,7 +508,7 @@ ] }, "getIamPolicy": { - "description": "Gets the access control policy on the specified Source.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}:getIamPolicy", "httpMethod": "POST", "id": "securitycenter.organizations.sources.getIamPolicy", @@ -543,7 +517,6 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -562,7 +535,7 @@ ] }, "list": { - "description": "Lists all sources belonging to an organization.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources", "httpMethod": "GET", "id": "securitycenter.organizations.sources.list", @@ -571,18 +544,15 @@ ], "parameters": { "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the parent of sources to list. Its format should be \"organizations/[organization_id]\".", "location": "path", "pattern": "^organizations/[^/]+$", "required": true, @@ -598,7 +568,7 @@ ] }, "patch": { - "description": "Updates a source.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.patch", @@ -607,14 +577,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}\"", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the source resource.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -632,7 +600,7 @@ ] }, "setIamPolicy": { - "description": "Sets the access control policy on the specified Source.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}:setIamPolicy", "httpMethod": "POST", "id": "securitycenter.organizations.sources.setIamPolicy", @@ -641,7 +609,6 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -660,7 +627,7 @@ ] }, "testIamPermissions": { - "description": " Returns the permissions that a caller has on the specified source.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}:testIamPermissions", "httpMethod": "POST", "id": "securitycenter.organizations.sources.testIamPermissions", @@ -669,7 +636,6 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -692,7 +658,7 @@ "findings": { "methods": { "create": { - "description": "Creates a finding. The corresponding source must exist for finding creation to succeed.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}/findings", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.create", @@ -701,12 +667,10 @@ ], "parameters": { "findingId": { - "description": "Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Resource name of the new finding's parent. Its format should be \"organizations/[organization_id]/sources/[source_id]\".", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -725,7 +689,7 @@ ] }, "group": { - "description": "Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1beta1/organizations/{organization_id}/sources/-/findings", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}/findings:group", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.group", @@ -734,7 +698,6 @@ ], "parameters": { "parent": { - "description": "Required. Name of the source to groupBy. Its format is \"organizations/[organization_id]/sources/[source_id]\". To groupBy across all sources provide a source_id of `-`. For example: organizations/{organization_id}/sources/-", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, @@ -753,7 +716,7 @@ ] }, "list": { - "description": "Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1beta1/organizations/{organization_id}/sources/-/findings", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}/findings", "httpMethod": "GET", "id": "securitycenter.organizations.sources.findings.list", @@ -762,41 +725,34 @@ ], "parameters": { "fieldMask": { - "description": "Optional. A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields.", "format": "google-fieldmask", "location": "query", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `source_properties.size = 100` is a valid filter string.", "location": "query", "type": "string" }, "orderBy": { - "description": "Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: \"name,resource_properties.a_property\". The default sorting order is ascending. To specify descending order for a field, a suffix \" desc\" should be appended to the field name. For example: \"name desc,source_properties.a_property\". Redundant space characters in the syntax are insignificant. \"name desc,source_properties.a_property\" and \" name desc , source_properties.a_property \" are equivalent.", "location": "query", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, "parent": { - "description": "Required. Name of the source the findings belong to. Its format is \"organizations/[organization_id]/sources/[source_id]\". To list across all sources provide a source_id of `-`. For example: organizations/{organization_id}/sources/-", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+$", "required": true, "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "location": "query", "type": "string" @@ -811,7 +767,7 @@ ] }, "patch": { - "description": "Creates or updates a finding. The corresponding source must exist for a finding creation to succeed.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.findings.patch", @@ -820,14 +776,12 @@ ], "parameters": { "name": { - "description": "The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\"", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -845,7 +799,7 @@ ] }, "setState": { - "description": "Updates the state of a finding.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}:setState", "httpMethod": "POST", "id": "securitycenter.organizations.sources.findings.setState", @@ -854,7 +808,6 @@ ], "parameters": { "name": { - "description": "Required. The relative resource name of the finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}/finding/{finding_id}\".", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+$", "required": true, @@ -873,7 +826,7 @@ ] }, "updateSecurityMarks": { - "description": "Updates security marks.", + "description": "", "flatPath": "v1beta1/organizations/{organizationsId}/sources/{sourcesId}/findings/{findingsId}/securityMarks", "httpMethod": "PATCH", "id": "securitycenter.organizations.sources.findings.updateSecurityMarks", @@ -882,20 +835,17 @@ ], "parameters": { "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "location": "path", "pattern": "^organizations/[^/]+/sources/[^/]+/findings/[^/]+/securityMarks$", "required": true, "type": "string" }, "startTime": { - "description": "The time at which the updated SecurityMarks take effect.", "format": "google-datetime", "location": "query", "type": "string" }, "updateMask": { - "description": "The FieldMask to use when updating the security marks resource.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -919,104 +869,82 @@ } } }, - "revision": "20260424", + "revision": "20260526", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { - "description": "Represents an access event.", "id": "Access", "properties": { "callerIp": { - "description": "Caller's IP address, such as \"1.1.1.1\".", "type": "string" }, "callerIpGeo": { - "$ref": "Geolocation", - "description": "The caller IP's geolocation, which identifies where the call came from." + "$ref": "Geolocation" }, "methodName": { - "description": "The method that the service account called, e.g. \"SetIamPolicy\".", "type": "string" }, "principalEmail": { - "description": "Associated email, such as \"foo@google.com\". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id).", "type": "string" }, "principalSubject": { - "description": "A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name}[{subject}]`.", "type": "string" }, "serviceAccountDelegationInfo": { - "description": "The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events.", "items": { "$ref": "ServiceAccountDelegationInfo" }, "type": "array" }, "serviceAccountKeyName": { - "description": "The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: \"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\". ", "type": "string" }, "serviceName": { - "description": "This is the API service that the service account made a call to, e.g. \"iam.googleapis.com\"", "type": "string" }, "userAgent": { - "description": "The caller's user agent string associated with the finding.", "type": "string" }, "userAgentFamily": { - "description": "Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application.", "type": "string" }, "userName": { - "description": "A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username.", "type": "string" } }, "type": "object" }, "AccessReview": { - "description": "Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding.", "id": "AccessReview", "properties": { "group": { - "description": "The API group of the resource. \"*\" means all.", "type": "string" }, "name": { - "description": "The name of the resource being requested. Empty means all.", "type": "string" }, "ns": { - "description": "Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by \"\" (empty).", "type": "string" }, "resource": { - "description": "The optional resource type requested. \"*\" means all.", "type": "string" }, "subresource": { - "description": "The optional subresource type.", "type": "string" }, "verb": { - "description": "A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. \"*\" means all.", "type": "string" }, "version": { - "description": "The API version of the resource. \"*\" means all.", "type": "string" } }, "type": "object" }, "AdaptiveProtection": { - "description": "Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).", "id": "AdaptiveProtection", "properties": { "confidence": { - "description": "A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation.", "format": "double", "type": "number" } @@ -1024,48 +952,39 @@ "type": "object" }, "AdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "AdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "AdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "AdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "AdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "AdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "AffectedResources": { - "description": "Details about resources affected by this finding.", "id": "AffectedResources", "properties": { "count": { - "description": "The count of resources affected by the finding.", "format": "int64", "type": "string" } @@ -1073,20 +992,16 @@ "type": "object" }, "AgentDataAccessEvent": { - "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", "id": "AgentDataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -1094,26 +1009,23 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalSubject": { - "description": "The agent principal that accessed the data.", "type": "string" } }, "type": "object" }, "AiModel": { - "description": "Contains information about the AI model associated with the finding.", "id": "AiModel", "properties": { "deploymentPlatform": { - "description": "The platform on which the model is deployed.", "enum": [ "DEPLOYMENT_PLATFORM_UNSPECIFIED", "VERTEX_AI", @@ -1122,51 +1034,42 @@ "FINE_TUNED_MODEL" ], "enumDescriptions": [ - "Unspecified deployment platform.", - "Vertex AI.", - "Google Kubernetes Engine.", - "Google Compute Engine.", - "Fine tuned model." + "", + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The user defined display name of model. Ex. baseline-classification-model", "type": "string" }, "domain": { - "description": "The domain of the model, for example, “image-classification”.", "type": "string" }, "library": { - "description": "The name of the model library, for example, “transformers”.", "type": "string" }, "location": { - "description": "The region in which the model is used, for example, “us-central1”.", "type": "string" }, "name": { - "description": "The name of the AI model, for example, \"gemini:1.0.0\".", "type": "string" }, "publisher": { - "description": "The publisher of the model, for example, “google” or “nvidia”.", "type": "string" }, "usageCategory": { - "description": "The purpose of the model, for example, \"Inteference\" or \"Training\".", "type": "string" } }, "type": "object" }, "Allowed": { - "description": "Allowed IP rule.", "id": "Allowed", "properties": { "ipRules": { - "description": "Optional. Optional list of allowed IP rules.", "items": { "$ref": "IpRule" }, @@ -1176,59 +1079,49 @@ "type": "object" }, "Application": { - "description": "Represents an application associated with a finding.", "id": "Application", "properties": { "baseUri": { - "description": "The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`.", "type": "string" }, "fullUri": { - "description": "The full URI with payload that can be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`.", "type": "string" } }, "type": "object" }, "ArtifactGuardPolicies": { - "description": "Represents the result of evaluating artifact guard policies.", "id": "ArtifactGuardPolicies", "properties": { "failingPolicies": { - "description": "A list of failing policies.", "items": { "$ref": "ArtifactGuardPolicy" }, "type": "array" }, "resourceId": { - "description": "The ID of the resource that has policies configured for it.", "type": "string" } }, "type": "object" }, "ArtifactGuardPolicy": { - "description": "Represents an artifact guard policy.", "id": "ArtifactGuardPolicy", "properties": { "failureReason": { - "description": "The reason for the policy failure, for example, \"severity=HIGH AND max_vuln_count=2\".", "type": "string" }, "policyId": { - "description": "The ID of the failing policy, for example, \"organizations/3392779/locations/global/policies/prod-policy\".", "type": "string" }, "type": { - "description": "The type of the policy evaluation.", "enum": [ "ARTIFACT_GUARD_POLICY_TYPE_UNSPECIFIED", "VULNERABILITY" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Vulnerability type." + "", + "" ], "type": "string" } @@ -1236,35 +1129,28 @@ "type": "object" }, "Asset": { - "description": "Security Command Center representation of a Google Cloud resource. The Asset is a Security Command Center resource that captures information about a single Google Cloud resource. All modifications to an Asset are only within the context of Security Command Center and don't affect the referenced Google Cloud resource.", "id": "Asset", "properties": { "createTime": { - "description": "The time at which the asset was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "name": { - "description": "The relative resource name of this asset. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/assets/{asset_id}\".", "type": "string" }, "resourceProperties": { "additionalProperties": { "type": "any" }, - "description": "Resource managed properties. These properties are managed and defined by the Google Cloud resource and cannot be modified by the user.", "type": "object" }, "securityCenterProperties": { - "$ref": "SecurityCenterProperties", - "description": "Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user." + "$ref": "SecurityCenterProperties" }, "securityMarks": { - "$ref": "GoogleCloudSecuritycenterV1beta1SecurityMarks", - "description": "User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the asset." + "$ref": "GoogleCloudSecuritycenterV1beta1SecurityMarks" }, "updateTime": { - "description": "The time at which the asset was last updated, added, or deleted in Security Command Center.", "format": "google-datetime", "type": "string" } @@ -1272,25 +1158,22 @@ "type": "object" }, "AssetDiscoveryConfig": { - "description": "The configuration used for Asset Discovery runs.", "id": "AssetDiscoveryConfig", "properties": { "inclusionMode": { - "description": "The mode to use for filtering asset discovery.", "enum": [ "INCLUSION_MODE_UNSPECIFIED", "INCLUDE_ONLY", "EXCLUDE" ], "enumDescriptions": [ - "Unspecified. Setting the mode with this value will disable inclusion/exclusion filtering for Asset Discovery.", - "Asset Discovery will capture only the resources within the projects specified. All other resources will be ignored.", - "Asset Discovery will ignore all resources under the projects specified. All other resources will be retrieved." + "", + "", + "" ], "type": "string" }, "projectIds": { - "description": "The project ids to use for filtering asset discovery.", "items": { "type": "string" }, @@ -1300,32 +1183,26 @@ "type": "object" }, "Attack": { - "description": "Information about DDoS attack volume and classification.", "id": "Attack", "properties": { "classification": { - "description": "Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.", "type": "string" }, "volumeBps": { "deprecated": true, - "description": "Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead.", "format": "int32", "type": "integer" }, "volumeBpsLong": { - "description": "Total BPS (bytes per second) volume of attack.", "format": "int64", "type": "string" }, "volumePps": { "deprecated": true, - "description": "Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead.", "format": "int32", "type": "integer" }, "volumePpsLong": { - "description": "Total PPS (packets per second) volume of attack.", "format": "int64", "type": "string" } @@ -1333,49 +1210,41 @@ "type": "object" }, "AttackExposure": { - "description": "An attack exposure contains the results of an attack path simulation run.", "id": "AttackExposure", "properties": { "attackExposureResult": { - "description": "The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789`", "type": "string" }, "exposedHighValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedLowValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedMediumValueResourcesCount": { - "description": "The number of medium value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "latestCalculationTime": { - "description": "The most recent time the attack exposure was updated on this finding.", "format": "google-datetime", "type": "string" }, "score": { - "description": "A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate.", "format": "double", "type": "number" }, "state": { - "description": "What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not.", "enum": [ "STATE_UNSPECIFIED", "CALCULATED", "NOT_CALCULATED" ], "enumDescriptions": [ - "The state is not specified.", - "The attack exposure has been calculated.", - "The attack exposure has not been calculated." + "", + "", + "" ], "type": "string" } @@ -1383,36 +1252,30 @@ "type": "object" }, "AuditConfig": { - "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", "id": "AuditConfig", "properties": { "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", "items": { "$ref": "AuditLogConfig" }, "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" }, "AuditLogConfig": { - "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": "AuditLogConfig", "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", @@ -1420,10 +1283,10 @@ "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" } @@ -1431,34 +1294,27 @@ "type": "object" }, "AwsAccount": { - "description": "An AWS account that is a member of an organization.", "id": "AwsAccount", "properties": { "id": { - "description": "The unique identifier (ID) of the account, containing exactly 12 digits.", "type": "string" }, "name": { - "description": "The friendly name of this account.", "type": "string" } }, "type": "object" }, "AwsMetadata": { - "description": "AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services.", "id": "AwsMetadata", "properties": { "account": { - "$ref": "AwsAccount", - "description": "The AWS account associated with the resource." + "$ref": "AwsAccount" }, "organization": { - "$ref": "AwsOrganization", - "description": "The AWS organization associated with the resource." + "$ref": "AwsOrganization" }, "organizationalUnits": { - "description": "A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level.", "items": { "$ref": "AwsOrganizationalUnit" }, @@ -1468,219 +1324,177 @@ "type": "object" }, "AwsOrganization": { - "description": "An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies.", "id": "AwsOrganization", "properties": { "id": { - "description": "The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires \"o-\" followed by from 10 to 32 lowercase letters or digits.", "type": "string" } }, "type": "object" }, "AwsOrganizationalUnit": { - "description": "An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs.", "id": "AwsOrganizationalUnit", "properties": { "id": { - "description": "The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires \"ou-\" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second \"-\" dash and from 8 to 32 additional lowercase letters or digits. For example, \"ou-ab12-cd34ef56\".", "type": "string" }, "name": { - "description": "The friendly name of the OU.", "type": "string" } }, "type": "object" }, "AzureManagementGroup": { - "description": "Represents an Azure management group.", "id": "AzureManagementGroup", "properties": { "displayName": { - "description": "The display name of the Azure management group.", "type": "string" }, "id": { - "description": "The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`.", "type": "string" } }, "type": "object" }, "AzureMetadata": { - "description": "Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure.", "id": "AzureMetadata", "properties": { "managementGroups": { - "description": "A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level.", "items": { "$ref": "AzureManagementGroup" }, "type": "array" }, "resourceGroup": { - "$ref": "AzureResourceGroup", - "description": "The Azure resource group associated with the resource." + "$ref": "AzureResourceGroup" }, "subscription": { - "$ref": "AzureSubscription", - "description": "The Azure subscription associated with the resource." + "$ref": "AzureSubscription" }, "tenant": { - "$ref": "AzureTenant", - "description": "The Azure Entra tenant associated with the resource." + "$ref": "AzureTenant" } }, "type": "object" }, "AzureResourceGroup": { - "description": "Represents an Azure resource group.", "id": "AzureResourceGroup", "properties": { "id": { - "description": "The ID of the Azure resource group.", "type": "string" }, "name": { - "description": "The name of the Azure resource group. This is not a UUID.", "type": "string" } }, "type": "object" }, "AzureSubscription": { - "description": "Represents an Azure subscription.", "id": "AzureSubscription", "properties": { "displayName": { - "description": "The display name of the Azure subscription.", "type": "string" }, "id": { - "description": "The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`.", "type": "string" } }, "type": "object" }, "AzureTenant": { - "description": "Represents a Microsoft Entra tenant.", "id": "AzureTenant", "properties": { "displayName": { - "description": "The display name of the Azure tenant.", "type": "string" }, "id": { - "description": "The ID of the Microsoft Entra tenant, for example, \"a11aaa11-aa11-1aa1-11aa-1aaa11a\".", "type": "string" } }, "type": "object" }, "BackupDisasterRecovery": { - "description": "Information related to Google Cloud Backup and DR Service findings.", "id": "BackupDisasterRecovery", "properties": { "appliance": { - "description": "The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`.", "type": "string" }, "applications": { - "description": "The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.", "items": { "type": "string" }, "type": "array" }, "backupCreateTime": { - "description": "The timestamp at which the Backup and DR backup was created.", "format": "google-datetime", "type": "string" }, "backupTemplate": { - "description": "The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`.", "type": "string" }, "backupType": { - "description": "The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`.", "type": "string" }, "host": { - "description": "The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`.", "type": "string" }, "policies": { - "description": "The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`.", "items": { "type": "string" }, "type": "array" }, "policyOptions": { - "description": "The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`.", "items": { "type": "string" }, "type": "array" }, "profile": { - "description": "The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`.", "type": "string" }, "storagePool": { - "description": "The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`.", "type": "string" } }, "type": "object" }, "BigQueryDestination": { - "description": "The destination BigQuery dataset to export findings to.", "id": "BigQueryDestination", "properties": { "dataset": { - "description": "Required. The relative resource name of the destination dataset, in the form projects/{projectId}/datasets/{datasetId}.", "type": "string" } }, "type": "object" }, "Binding": { - "description": "Associates `members`, or principals, with a `role`.", "id": "Binding", "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 principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." + "$ref": "Expr" }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `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. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.", "items": { "type": "string" }, "type": "array" }, "role": { - "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).", "type": "string" } }, "type": "object" }, "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", "id": "CancelOperationRequest", "properties": {}, "type": "object" }, "Chokepoint": { - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).", "id": "Chokepoint", "properties": { "relatedFindings": { - "description": "List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings.", "items": { "type": "string" }, @@ -1690,65 +1504,53 @@ "type": "object" }, "CloudArmor": { - "description": "Fields related to Google Cloud Armor findings.", "id": "CloudArmor", "properties": { "adaptiveProtection": { - "$ref": "AdaptiveProtection", - "description": "Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview)." + "$ref": "AdaptiveProtection" }, "attack": { - "$ref": "Attack", - "description": "Information about DDoS attack volume and classification." + "$ref": "Attack" }, "duration": { - "description": "Duration of attack from the start until the current moment (updated every 5 minutes).", "format": "google-duration", "type": "string" }, "requests": { - "$ref": "Requests", - "description": "Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview)." + "$ref": "Requests" }, "securityPolicy": { - "$ref": "SecurityPolicy", - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding." + "$ref": "SecurityPolicy" }, "threatVector": { - "description": "Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, \"L3_4\" for Layer 3 and Layer 4 DDoS attacks, or \"L_7\" for Layer 7 DDoS attacks.", "type": "string" } }, "type": "object" }, "CloudControl": { - "description": "CloudControl associated with the finding.", "id": "CloudControl", "properties": { "cloudControlName": { - "description": "Name of the CloudControl associated with the finding.", "type": "string" }, "policyType": { - "description": "Policy type of the CloudControl", "type": "string" }, "type": { - "description": "Type of cloud control.", "enum": [ "CLOUD_CONTROL_TYPE_UNSPECIFIED", "BUILT_IN", "CUSTOM" ], "enumDescriptions": [ - "Unspecified.", - "Built in Cloud Control.", - "Custom Cloud Control." + "", + "", + "" ], "type": "string" }, "version": { - "description": "Version of the Cloud Control", "format": "int32", "type": "integer" } @@ -1756,31 +1558,27 @@ "type": "object" }, "CloudDlpDataProfile": { - "description": "The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding.", "id": "CloudDlpDataProfile", "properties": { "dataProfile": { - "description": "Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`.", "type": "string" }, "infoTypes": { - "description": "Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type.", "items": { "$ref": "InfoType" }, "type": "array" }, "parentType": { - "description": "The resource hierarchy level at which the data profile was generated.", "enum": [ "PARENT_TYPE_UNSPECIFIED", "ORGANIZATION", "PROJECT" ], "enumDescriptions": [ - "Unspecified parent type.", - "Organization-level configurations.", - "Project-level configurations." + "", + "", + "" ], "type": "string" } @@ -1788,47 +1586,37 @@ "type": "object" }, "CloudDlpInspection": { - "description": "Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding.", "id": "CloudDlpInspection", "properties": { "fullScan": { - "description": "Whether Cloud DLP scanned the complete resource or a sampled subset.", "type": "boolean" }, "infoType": { - "description": "The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.", "type": "string" }, "infoTypeCount": { - "description": "The number of times Cloud DLP found this infoType within this job and resource.", "format": "int64", "type": "string" }, "inspectJob": { - "description": "Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`.", "type": "string" } }, "type": "object" }, "CloudLoggingEntry": { - "description": "Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)", "id": "CloudLoggingEntry", "properties": { "insertId": { - "description": "A unique identifier for the log entry.", "type": "string" }, "logId": { - "description": "The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity`. Note that this field is not URL-encoded, unlike the `LOG_ID` field in `LogEntry`.", "type": "string" }, "resourceContainer": { - "description": "The organization, folder, or project of the monitored resource that produced this log entry.", "type": "string" }, "timestamp": { - "description": "The time the event described by the log entry occurred.", "format": "google-datetime", "type": "string" } @@ -1836,44 +1624,36 @@ "type": "object" }, "Compliance": { - "description": "Contains compliance information about a security standard indicating unmet recommendations.", "id": "Compliance", "properties": { "ids": { - "description": "Policies within the standard or benchmark, for example, A.12.4.1", "items": { "type": "string" }, "type": "array" }, "standard": { - "description": "Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP.", "type": "string" }, "version": { - "description": "Version of the standard or benchmark, for example, 1.1", "type": "string" } }, "type": "object" }, "ComplianceDetails": { - "description": "Compliance Details associated with the finding.", "id": "ComplianceDetails", "properties": { "cloudControl": { - "$ref": "CloudControl", - "description": "CloudControl associated with the finding" + "$ref": "CloudControl" }, "cloudControlDeploymentNames": { - "description": "Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier", "items": { "type": "string" }, "type": "array" }, "frameworks": { - "description": "Details of Frameworks associated with the finding", "items": { "$ref": "Framework" }, @@ -1883,20 +1663,16 @@ "type": "object" }, "Connection": { - "description": "Contains information about the IP connection associated with the finding.", "id": "Connection", "properties": { "destinationIp": { - "description": "Destination IP address. Not present for sockets that are listening and not connected.", "type": "string" }, "destinationPort": { - "description": "Destination port. Not present for sockets that are listening and not connected.", "format": "int32", "type": "integer" }, "protocol": { - "description": "IANA Internet Protocol Number such as TCP(6) and UDP(17).", "enum": [ "PROTOCOL_UNSPECIFIED", "ICMP", @@ -1906,21 +1682,19 @@ "ESP" ], "enumDescriptions": [ - "Unspecified protocol (not HOPOPT).", - "Internet Control Message Protocol.", - "Transmission Control Protocol.", - "User Datagram Protocol.", - "Generic Routing Encapsulation.", - "Encap Security Payload." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "sourceIp": { - "description": "Source IP address.", "type": "string" }, "sourcePort": { - "description": "Source port.", "format": "int32", "type": "integer" } @@ -1928,22 +1702,18 @@ "type": "object" }, "Contact": { - "description": "The email address of a contact.", "id": "Contact", "properties": { "email": { - "description": "An email address. For example, \"`person123@company.com`\".", "type": "string" } }, "type": "object" }, "ContactDetails": { - "description": "Details about specific contacts", "id": "ContactDetails", "properties": { "contacts": { - "description": "A list of contacts", "items": { "$ref": "Contact" }, @@ -1953,66 +1723,53 @@ "type": "object" }, "Container": { - "description": "Container associated with the finding.", "id": "Container", "properties": { "createTime": { - "description": "The time that the container was created.", "format": "google-datetime", "type": "string" }, "imageId": { - "description": "Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest.", "type": "string" }, "labels": { - "description": "Container labels, as provided by the container runtime.", "items": { "$ref": "Label" }, "type": "array" }, "name": { - "description": "Name of the container.", "type": "string" }, "uri": { - "description": "Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags.", "type": "string" } }, "type": "object" }, "Control": { - "description": "Compliance control associated with the finding.", "id": "Control", "properties": { "controlName": { - "description": "Name of the Control", "type": "string" }, "displayName": { - "description": "Display name of the control. For example, AU-02.", "type": "string" } }, "type": "object" }, "Cve": { - "description": "CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability.", "id": "Cve", "properties": { "cvssv3": { - "$ref": "Cvssv3", - "description": "Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document" + "$ref": "Cvssv3" }, "exploitReleaseDate": { - "description": "Date the first publicly available exploit or PoC was released.", "format": "google-datetime", "type": "string" }, "exploitationActivity": { - "description": "The exploitation activity of the vulnerability in the wild.", "enum": [ "EXPLOITATION_ACTIVITY_UNSPECIFIED", "WIDE", @@ -2022,26 +1779,23 @@ "NO_KNOWN" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation has been reported or confirmed to widely occur.", - "Limited reported or confirmed exploitation activities.", - "Exploit is publicly available.", - "No known exploitation activity, but has a high potential for exploitation.", - "No known exploitation activity." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "firstExploitationDate": { - "description": "Date of the earliest known exploitation.", "format": "google-datetime", "type": "string" }, "id": { - "description": "The unique identifier for the vulnerability. e.g. CVE-2021-34527", "type": "string" }, "impact": { - "description": "The potential impact of the vulnerability if it was to be exploited.", "enum": [ "RISK_RATING_UNSPECIFIED", "LOW", @@ -2050,56 +1804,49 @@ "CRITICAL" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation would have little to no security impact.", - "Exploitation would enable attackers to perform activities, or could allow attackers to have a direct impact, but would require additional steps.", - "Exploitation would enable attackers to have a notable direct impact without needing to overcome any major mitigating factors.", - "Exploitation would fundamentally undermine the security of affected systems, enable actors to perform significant attacks with minimal effort, with little to no mitigating factors to overcome." + "", + "", + "", + "", + "" ], "type": "string" }, "observedInTheWild": { - "description": "Whether or not the vulnerability has been observed in the wild.", "type": "boolean" }, "references": { - "description": "Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527", "items": { "$ref": "Reference" }, "type": "array" }, "upstreamFixAvailable": { - "description": "Whether upstream fix is available for the CVE.", "type": "boolean" }, "zeroDay": { - "description": "Whether or not the vulnerability was zero day when the finding was published.", "type": "boolean" } }, "type": "object" }, "Cvssv3": { - "description": "Common Vulnerability Scoring System version 3.", "id": "Cvssv3", "properties": { "attackComplexity": { - "description": "This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", "ATTACK_COMPLEXITY_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "Specialized access conditions or extenuating circumstances do not exist. An attacker can expect repeatable success when attacking the vulnerable component.", - "A successful attack depends on conditions beyond the attacker's control. That is, a successful attack cannot be accomplished at will, but requires the attacker to invest in some measurable amount of effort in preparation or execution against the vulnerable component before a successful attack can be expected." + "", + "", + "" ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -2108,16 +1855,15 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.", - "The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.", - "The vulnerable component is not bound to the network stack and the attacker's path is via read/write/execute capabilities.", - "The attack requires the attacker to physically touch or manipulate the vulnerable component." + "", + "", + "", + "", + "" ], "type": "string" }, "availabilityImpact": { - "description": "This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2125,20 +1871,18 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "baseScore": { - "description": "The base score is a function of the base metric scores.", "format": "double", "type": "number" }, "confidentialityImpact": { - "description": "This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2146,15 +1890,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "integrityImpact": { - "description": "This metric measures the impact to integrity of a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -2162,15 +1905,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "privilegesRequired": { - "description": "This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -2178,38 +1920,36 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files of the vulnerable system to carry out an attack.", - "The attacker requires privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. Alternatively, an attacker with Low privileges has the ability to access only non-sensitive resources.", - "The attacker requires privileges that provide significant (e.g., administrative) control over the vulnerable component allowing access to component-wide settings and files." + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Invalid value.", - "An exploited vulnerability can only affect resources managed by the same security authority.", - "An exploited vulnerability can affect resources beyond the security scope managed by the security authority of the vulnerable component." + "", + "", + "" ], "type": "string" }, "userInteraction": { - "description": "This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", "USER_INTERACTION_REQUIRED" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable system can be exploited without interaction from any user.", - "Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited." + "", + "", + "" ], "type": "string" } @@ -2217,15 +1957,12 @@ "type": "object" }, "Cwe": { - "description": "CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/).", "id": "Cwe", "properties": { "id": { - "description": "The CWE identifier, e.g. CWE-94", "type": "string" }, "references": { - "description": "Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html", "items": { "$ref": "Reference" }, @@ -2235,20 +1972,16 @@ "type": "object" }, "DataAccessEvent": { - "description": "Details about a data access attempt made by a principal not authorized under applicable data security policy.", "id": "DataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -2256,35 +1989,30 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other.", "type": "string" } }, "type": "object" }, "DataFlowEvent": { - "description": "Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy.", "id": "DataFlowEvent", "properties": { "eventId": { - "description": "Unique identifier for data flow event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data flow event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal for the data flow event.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -2292,40 +2020,34 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other.", "type": "string" }, "violatedLocation": { - "description": "Non-compliant location of the principal or the data destination.", "type": "string" } }, "type": "object" }, "DataRetentionDeletionEvent": { - "description": "Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments.", "id": "DataRetentionDeletionEvent", "properties": { "dataObjectCount": { - "description": "Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000.", "format": "int64", "type": "string" }, "eventDetectionTime": { - "description": "Timestamp indicating when the event was detected.", "format": "google-datetime", "type": "string" }, "eventType": { - "description": "Type of the DRD event.", "enum": [ "EVENT_TYPE_UNSPECIFIED", "EVENT_TYPE_MAX_TTL_EXCEEDED", @@ -2341,21 +2063,19 @@ false ], "enumDescriptions": [ - "Unspecified event type.", - "Deprecated: This field is pending removal. Use EVENT_TYPE_MAX_TTL_FROM_CREATION or EVENT_TYPE_MAX_TTL_FROM_LAST_MODIFICATION instead.", - "Max TTL from the asset's creation time.", - "Max TTL from the asset's last modification time.", - "Min TTL from the asset's creation time." + "", + "", + "", + "", + "" ], "type": "string" }, "maxRetentionAllowed": { - "description": "Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days.", "format": "google-duration", "type": "string" }, "minRetentionAllowed": { - "description": "Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION.", "format": "google-duration", "type": "string" } @@ -2363,64 +2083,51 @@ "type": "object" }, "Database": { - "description": "Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided.", "id": "Database", "properties": { "displayName": { - "description": "The human-readable name of the database that the user connected to.", "type": "string" }, "grantees": { - "description": "The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory.", "type": "string" }, "query": { - "description": "The SQL statement that is associated with the database access.", "type": "string" }, "userName": { - "description": "The username used to connect to the database. The username might not be an IAM principal and does not have a set format.", "type": "string" }, "version": { - "description": "The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).", "type": "string" } }, "type": "object" }, "Dataset": { - "description": "Vertex AI dataset associated with the finding.", "id": "Dataset", "properties": { "displayName": { - "description": "The user defined display name of dataset, e.g. plants-dataset", "type": "string" }, "name": { - "description": "Resource name of the dataset, e.g. projects/{project}/locations/{location}/datasets/2094040236064505856", "type": "string" }, "source": { - "description": "Data source, such as BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod", "type": "string" } }, "type": "object" }, "Denied": { - "description": "Denied IP rule.", "id": "Denied", "properties": { "ipRules": { - "description": "Optional. Optional list of denied IP rules.", "items": { "$ref": "IpRule" }, @@ -2430,15 +2137,12 @@ "type": "object" }, "Detection": { - "description": "Memory hash detection contributing to the binary family match.", "id": "Detection", "properties": { "binary": { - "description": "The name of the binary associated with the memory hash signature detection.", "type": "string" }, "percentPagesMatched": { - "description": "The percentage of memory page hashes in the signature that were matched.", "format": "double", "type": "number" } @@ -2446,35 +2150,29 @@ "type": "object" }, "DiscoveredWorkload": { - "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", "id": "DiscoveredWorkload", "properties": { "confidence": { - "description": "The confidence in detection of this workload.", "enum": [ "CONFIDENCE_UNSPECIFIED", "CONFIDENCE_HIGH" ], "enumDescriptions": [ - "Unspecified confidence level.", - "High confidence in detection of a workload." + "", + "" ], "type": "string" }, "detectedRelevantHardware": { - "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", "type": "boolean" }, "detectedRelevantKeywords": { - "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", "type": "boolean" }, "detectedRelevantPackages": { - "description": "A boolean flag set to true if installed packages strongly predict the workload type.", "type": "boolean" }, "workloadType": { - "description": "The type of workload.", "enum": [ "WORKLOAD_TYPE_UNSPECIFIED", "MCP_SERVER", @@ -2482,10 +2180,10 @@ "AGENT" ], "enumDescriptions": [ - "Unspecified workload type", - "A workload of type MCP Server", - "A workload of type AI Inference", - "A workload of type LLM Agent" + "", + "", + "", + "" ], "type": "string" } @@ -2493,106 +2191,87 @@ "type": "object" }, "Disk": { - "description": "Contains information about the disk associated with the finding.", "id": "Disk", "properties": { "name": { - "description": "The name of the disk, for example, \"https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}\".", "type": "string" } }, "type": "object" }, "DiskPath": { - "description": "Path of the file in terms of underlying disk/partition identifiers.", "id": "DiskPath", "properties": { "partitionUuid": { - "description": "UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)", "type": "string" }, "relativePath": { - "description": "Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh", "type": "string" } }, "type": "object" }, "DynamicMuteRecord": { - "description": "The record of a dynamic mute rule that matches the finding.", "id": "DynamicMuteRecord", "properties": { "matchTime": { - "description": "When the dynamic mute rule first matched the finding.", "format": "google-datetime", "type": "string" }, "muteConfig": { - "description": "The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`.", "type": "string" } }, "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); }", "id": "Empty", "properties": {}, "type": "object" }, "EnvironmentVariable": { - "description": "A name-value pair representing an environment variable used in an operating system process.", "id": "EnvironmentVariable", "properties": { "name": { - "description": "Environment variable name as a JSON encoded string.", "type": "string" }, "val": { - "description": "Environment variable value as a JSON encoded string.", "type": "string" } }, "type": "object" }, "ExfilResource": { - "description": "Resource where data was exfiltrated from or exfiltrated to.", "id": "ExfilResource", "properties": { "components": { - "description": "Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name).", "type": "string" } }, "type": "object" }, "Exfiltration": { - "description": "Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to.", "id": "Exfiltration", "properties": { "sources": { - "description": "If there are multiple sources, then the data is considered \"joined\" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source.", "items": { "$ref": "ExfilResource" }, "type": "array" }, "targets": { - "description": "If there are multiple targets, each target would get a complete copy of the \"joined\" source data.", "items": { "$ref": "ExfilResource" }, "type": "array" }, "totalExfiltratedBytes": { - "description": "Total exfiltrated bytes processed for the entire job.", "format": "int64", "type": "string" } @@ -2600,15 +2279,12 @@ "type": "object" }, "ExportFindingsMetadata": { - "description": "The LRO metadata for a ExportFindings request.", "id": "ExportFindingsMetadata", "properties": { "bigQueryDestination": { - "$ref": "BigQueryDestination", - "description": "Required. The destination BigQuery dataset to export findings to." + "$ref": "BigQueryDestination" }, "exportStartTime": { - "description": "Optional. Timestamp at which export was started", "format": "google-datetime", "type": "string" } @@ -2616,176 +2292,139 @@ "type": "object" }, "ExportFindingsResponse": { - "description": "The response to a ExportFindings request. Contains the LRO information.", "id": "ExportFindingsResponse", "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" }, "ExternalExposure": { - "description": "Details about the externally exposed resource associated with the finding.", "id": "ExternalExposure", "properties": { "backendBucket": { - "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", "type": "string" }, "backendService": { - "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "exposedApplication": { - "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", "type": "string" }, "exposedEndpoint": { - "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" }, "exposedService": { - "description": "The name and version of the service, for example, \"Jupyter Notebook 6.14.0\".", "type": "string" }, "forwardingRule": { - "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, "hostnameUri": { - "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", "type": "string" }, "httpResponse": { - "description": "The http response returned by the web application.", "items": { "$ref": "HttpResponse" }, "type": "array" }, "instanceGroup": { - "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, "internalBackendService": { - "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "loadBalancerFirewallPolicy": { - "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" }, "networkEndpointGroup": { - "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, "networkIngressFirewallPolicy": { - "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", "type": "string" }, "privateIpAddress": { - "description": "Private IP address of the exposed endpoint.", "type": "string" }, "privatePort": { - "description": "Port number associated with private IP address.", "type": "string" }, "pscNetworkAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", "type": "string" }, "pscServiceAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", "type": "string" }, "publicIpAddress": { - "description": "Public IP address of the exposed endpoint.", "type": "string" }, "publicPort": { - "description": "Public port number of the exposed endpoint.", "type": "string" }, "serviceFirewallPolicy": { - "description": "The full resource name of the firewall policy of the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" } }, "type": "object" }, "File": { - "description": "File information about the related binary/library used by an executable, or the script used by a script interpreter", "id": "File", "properties": { "contents": { - "description": "Prefix of the file contents as a JSON-encoded string.", "type": "string" }, "diskPath": { - "$ref": "DiskPath", - "description": "Path of the file in terms of underlying disk/partition identifiers." + "$ref": "DiskPath" }, "fileLoadState": { - "description": "The load state of the file.", "enum": [ "FILE_LOAD_STATE_UNSPECIFIED", "LOADED_BY_PROCESS", "NOT_LOADED_BY_PROCESS" ], "enumDescriptions": [ - "The file state is unspecified.", - "The file is being used by an active process at the time of scanning.", - "The file is not being used by any active process at the time of scanning." + "", + "", + "" ], "type": "string" }, "hashedSize": { - "description": "The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file.", "format": "int64", "type": "string" }, "operations": { - "description": "Operation(s) performed on a file.", "items": { "$ref": "FileOperation" }, "type": "array" }, "partiallyHashed": { - "description": "True when the hash covers only a prefix of the file.", "type": "boolean" }, "path": { - "description": "Absolute path of the file as a JSON encoded string.", "type": "string" }, "sha256": { - "description": "SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file.", "type": "string" }, "size": { - "description": "Size of the file in bytes.", "format": "int64", "type": "string" } @@ -2793,11 +2432,9 @@ "type": "object" }, "FileOperation": { - "description": "Operation(s) performed on a file.", "id": "FileOperation", "properties": { "type": { - "description": "The type of the operation", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "OPEN", @@ -2807,12 +2444,12 @@ "EXECUTE" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents an open operation.", - "Represents a read operation.", - "Represents a rename operation.", - "Represents a write operation.", - "Represents an execute operation." + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -2820,81 +2457,63 @@ "type": "object" }, "Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.", "id": "Finding", "properties": { "access": { - "$ref": "Access", - "description": "Access details associated with the finding, such as more information on the caller, which method was accessed, and from where." + "$ref": "Access" }, "affectedResources": { - "$ref": "AffectedResources", - "description": "AffectedResources associated with the finding." + "$ref": "AffectedResources" }, "agentDataAccessEvents": { - "description": "Agent data access events associated with the finding.", "items": { "$ref": "AgentDataAccessEvent" }, "type": "array" }, "aiModel": { - "$ref": "AiModel", - "description": "The AI model associated with the finding." + "$ref": "AiModel" }, "application": { - "$ref": "Application", - "description": "Represents an application associated with the finding." + "$ref": "Application" }, "artifactGuardPolicies": { - "$ref": "ArtifactGuardPolicies", - "description": "ArtifactGuardPolicies associated with the finding." + "$ref": "ArtifactGuardPolicies" }, "attackExposure": { - "$ref": "AttackExposure", - "description": "The results of an attack path simulation relevant to this finding." + "$ref": "AttackExposure" }, "backupDisasterRecovery": { - "$ref": "BackupDisasterRecovery", - "description": "Fields related to Backup and DR findings." + "$ref": "BackupDisasterRecovery" }, "canonicalName": { - "description": "The canonical name of the finding. It's either \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\" or \"projects/{project_number}/sources/{source_id}/findings/{finding_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "chokepoint": { - "$ref": "Chokepoint", - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests." + "$ref": "Chokepoint" }, "cloudArmor": { - "$ref": "CloudArmor", - "description": "Fields related to Cloud Armor findings." + "$ref": "CloudArmor" }, "cloudDlpDataProfile": { - "$ref": "CloudDlpDataProfile", - "description": "Cloud DLP data profile that is associated with the finding." + "$ref": "CloudDlpDataProfile" }, "cloudDlpInspection": { - "$ref": "CloudDlpInspection", - "description": "Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding." + "$ref": "CloudDlpInspection" }, "complianceDetails": { - "$ref": "ComplianceDetails", - "description": "Details about the compliance implications of the finding." + "$ref": "ComplianceDetails" }, "compliances": { - "description": "Contains compliance information for security standards associated to the finding.", "items": { "$ref": "Compliance" }, "type": "array" }, "connections": { - "description": "Contains information about the IP connection associated with the finding.", "items": { "$ref": "Connection" }, @@ -2904,93 +2523,76 @@ "additionalProperties": { "$ref": "ContactDetails" }, - "description": "Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { \"security\": { \"contacts\": [ { \"email\": \"person1@company.com\" }, { \"email\": \"person2@company.com\" } ] } }", "readOnly": true, "type": "object" }, "containers": { - "description": "Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.", "items": { "$ref": "Container" }, "type": "array" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "dataAccessEvents": { - "description": "Data access events associated with the finding.", "items": { "$ref": "DataAccessEvent" }, "type": "array" }, "dataFlowEvents": { - "description": "Data flow events associated with the finding.", "items": { "$ref": "DataFlowEvent" }, "type": "array" }, "dataRetentionDeletionEvents": { - "description": "Data retention deletion events associated with the finding.", "items": { "$ref": "DataRetentionDeletionEvent" }, "type": "array" }, "database": { - "$ref": "Database", - "description": "Database associated with the finding." + "$ref": "Database" }, "description": { - "description": "Contains more details about the finding.", "type": "string" }, "discoveredWorkload": { - "$ref": "DiscoveredWorkload", - "description": "DiscoveredWorkload associated with the finding." + "$ref": "DiscoveredWorkload" }, "disk": { - "$ref": "Disk", - "description": "Disk associated with the finding." + "$ref": "Disk" }, "eventTime": { - "description": "The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "exfiltration": { - "$ref": "Exfiltration", - "description": "Represents exfiltrations associated with the finding." + "$ref": "Exfiltration" }, "externalExposure": { - "$ref": "ExternalExposure", - "description": "External exposure associated with the finding." + "$ref": "ExternalExposure" }, "externalSystems": { "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV1ExternalSystem" }, - "description": "Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.", "readOnly": true, "type": "object" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "files": { - "description": "File associated with the finding.", "items": { "$ref": "File" }, "type": "array" }, "findingClass": { - "description": "The class of the finding.", "enum": [ "FINDING_CLASS_UNSPECIFIED", "THREAT", @@ -3006,79 +2608,67 @@ "SECRET" ], "enumDescriptions": [ - "Unspecified finding class.", - "Describes unwanted or malicious activity.", - "Describes a potential weakness in software that increases risk to Confidentiality & Integrity & Availability.", - "Describes a potential weakness in cloud resource/asset configuration that increases risk.", - "Describes a security observation that is for informational purposes.", - "Describes an error that prevents some SCC functionality.", - "Describes a potential security risk due to a change in the security posture.", - "Describes a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", - "Describes a potential security risk to data assets that contain sensitive data.", - "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet.", - "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "groupMemberships": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.", "items": { "$ref": "GroupMembership" }, "type": "array" }, "iamBindings": { - "description": "Represents IAM bindings associated with the finding.", "items": { "$ref": "IamBinding" }, "type": "array" }, "indicator": { - "$ref": "Indicator", - "description": "Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise)." + "$ref": "Indicator" }, "ipRules": { - "$ref": "IpRules", - "description": "IP rules associated with the finding." + "$ref": "IpRules" }, "job": { - "$ref": "Job", - "description": "Job associated with the finding." + "$ref": "Job" }, "kernelRootkit": { - "$ref": "KernelRootkit", - "description": "Signature of the kernel rootkit." + "$ref": "KernelRootkit" }, "kubernetes": { - "$ref": "Kubernetes", - "description": "Kubernetes resources associated with the finding." + "$ref": "Kubernetes" }, "loadBalancers": { - "description": "The load balancers associated with the finding.", "items": { "$ref": "LoadBalancer" }, "type": "array" }, "logEntries": { - "description": "Log entries that are relevant to the finding.", "items": { "$ref": "LogEntry" }, "type": "array" }, "mitreAttack": { - "$ref": "MitreAttack", - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org" + "$ref": "MitreAttack" }, "moduleName": { - "description": "Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885", "type": "string" }, "mute": { - "description": "Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -3086,93 +2676,76 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" }, "muteInfo": { "$ref": "MuteInfo", - "description": "Output only. The mute information regarding this finding.", "readOnly": true }, "muteInitiator": { - "description": "Records additional information about the mute operation, for example, the [mute configuration](/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding.", "type": "string" }, "muteUpdateTime": { - "description": "Output only. The most recent time this finding was muted or unmuted.", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\", \"projects/{project_id}/sources/{source_id}/findings/{finding_id}\".", "type": "string" }, "networks": { - "description": "Represents the VPC networks that the resource is attached to.", "items": { "$ref": "Network" }, "type": "array" }, "nextSteps": { - "description": "Steps to address the finding.", "type": "string" }, "notebook": { - "$ref": "Notebook", - "description": "Notebook associated with the finding." + "$ref": "Notebook" }, "orgPolicies": { - "description": "Contains information about the org policies associated with the finding.", "items": { "$ref": "OrgPolicy" }, "type": "array" }, "parent": { - "description": "The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "parentDisplayName": { - "description": "Output only. The human readable display name of the finding source such as \"Event Threat Detection\" or \"Security Health Analytics\".", "readOnly": true, "type": "string" }, "policyViolationSummary": { - "$ref": "PolicyViolationSummary", - "description": "PolicyViolationSummary associated with the finding." + "$ref": "PolicyViolationSummary" }, "processes": { - "description": "Represents operating system processes associated with the Finding.", "items": { "$ref": "Process" }, "type": "array" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "secret": { - "$ref": "Secret", - "description": "Secret associated with the finding." + "$ref": "Secret" }, "securityMarks": { "$ref": "SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "securityPosture": { - "$ref": "SecurityPosture", - "description": "The security posture associated with the finding." + "$ref": "SecurityPosture" }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -3181,11 +2754,11 @@ "LOW" ], "enumDescriptions": [ - "This value is used for findings when a source doesn't write a severity value.", - "Vulnerability: A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. Threat: Indicates a threat that is able to access, modify, or delete data or execute unauthorized code within existing resources.", - "Vulnerability: A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities in order to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. Threat: Indicates a threat that is able to create new computational resources in an environment but not able to access data or execute code in existing resources.", - "Vulnerability: A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. Threat: Indicates a threat that is able to cause operational impact but may not access data or execute unauthorized code.", - "Vulnerability: A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. Threat: Indicates a threat that has obtained minimal access to an environment but is not able to access data, execute code, or create resources." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -3193,59 +2766,49 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" }, "toxicCombination": { - "$ref": "ToxicCombination", - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests." + "$ref": "ToxicCombination" }, "vertexAi": { - "$ref": "VertexAi", - "description": "VertexAi associated with the finding." + "$ref": "VertexAi" }, "vulnerability": { - "$ref": "Vulnerability", - "description": "Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "Vulnerability" } }, "type": "object" }, "Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "Framework": { - "description": "Compliance framework associated with the finding.", "id": "Framework", "properties": { "category": { - "description": "Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads", "items": { "enum": [ "FRAMEWORK_CATEGORY_UNSPECIFIED", @@ -3256,43 +2819,39 @@ "CUSTOM_FRAMEWORK" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Security Benchmarks framework", - "Assured Workloads framework", - "Data Security framework", - "Google Best Practices framework", - "A user-created framework" + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "controls": { - "description": "The controls associated with the framework.", "items": { "$ref": "Control" }, "type": "array" }, "displayName": { - "description": "Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework", "type": "string" }, "name": { - "description": "Name of the framework associated with the finding", "type": "string" }, "type": { - "description": "Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture)", "enum": [ "FRAMEWORK_TYPE_UNSPECIFIED", "FRAMEWORK_TYPE_BUILT_IN", "FRAMEWORK_TYPE_CUSTOM" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The framework is a built-in framework if it is created and managed by GCP.", - "The framework is a custom framework if it is created and managed by the user." + "", + "", + "" ], "type": "string" } @@ -3300,11 +2859,9 @@ "type": "object" }, "GcpMetadata": { - "description": "Google Cloud metadata associated with the resource. Only applicable if the finding's cloud provider is Google Cloud.", "id": "GcpMetadata", "properties": { "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "GoogleCloudSecuritycenterV2Folder" }, @@ -3312,56 +2869,45 @@ "type": "array" }, "organization": { - "description": "The name of the organization that the resource belongs to.", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" } }, "type": "object" }, "Geolocation": { - "description": "Represents a geographical location for a given access.", "id": "Geolocation", "properties": { "regionCode": { - "description": "A CLDR.", "type": "string" } }, "type": "object" }, "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", "id": "GetIamPolicyRequest", "properties": { "options": { - "$ref": "GetPolicyOptions", - "description": "OPTIONAL: A `GetPolicyOptions` object for specifying options to `GetIamPolicy`." + "$ref": "GetPolicyOptions" } }, "type": "object" }, "GetPolicyOptions": { - "description": "Encapsulates settings provided to GetIamPolicy.", "id": "GetPolicyOptions", "properties": { "requestedPolicyVersion": { - "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. 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" } @@ -3369,43 +2915,34 @@ "type": "object" }, "GoogleCloudSecuritycenterV1BigQueryExport": { - "description": "Configures how to deliver Findings to BigQuery Instance.", "id": "GoogleCloudSecuritycenterV1BigQueryExport", "properties": { "createTime": { - "description": "Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "dataset": { - "description": "The dataset to write findings' updates to. Its format is \"projects/[project_id]/datasets/[bigquery_dataset_id]\". BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).", "type": "string" }, "description": { - "description": "The description of the export (max of 1024 characters).", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: \"organizations/{organization_id}/bigQueryExports/{export_id}\" Example format: \"folders/{folder_id}/bigQueryExports/{export_id}\" Example format: \"projects/{project_id}/bigQueryExports/{export_id}\" This field is provided in responses, and is ignored when provided in create requests.", "type": "string" }, "principal": { - "description": "Output only. The service account that needs permission to create table and upload data to the BigQuery dataset.", "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -3414,23 +2951,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV1Binding": { - "description": "Represents a Kubernetes RoleBinding or ClusterRoleBinding.", "id": "GoogleCloudSecuritycenterV1Binding", "properties": { "name": { - "description": "Name for the binding.", "type": "string" }, "ns": { - "description": "Namespace for the binding.", "type": "string" }, "role": { - "$ref": "Role", - "description": "The Role or ClusterRole referenced by the binding." + "$ref": "Role" }, "subjects": { - "description": "Represents one or more subjects that are bound to the role. Not always available for PATCH requests.", "items": { "$ref": "Subject" }, @@ -3440,37 +2972,29 @@ "type": "object" }, "GoogleCloudSecuritycenterV1BulkMuteFindingsResponse": { - "description": "The response to a BulkMute request. Contains the LRO information.", "id": "GoogleCloudSecuritycenterV1BulkMuteFindingsResponse", "properties": {}, "type": "object" }, "GoogleCloudSecuritycenterV1CustomConfig": { - "description": "Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify.", "id": "GoogleCloudSecuritycenterV1CustomConfig", "properties": { "customOutput": { - "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec", - "description": "Custom output properties." + "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec" }, "description": { - "description": "Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks.", "type": "string" }, "predicate": { - "$ref": "Expr", - "description": "The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated." + "$ref": "Expr" }, "recommendation": { - "description": "An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the `nextSteps` property of the finding JSON.", "type": "string" }, "resourceSelector": { - "$ref": "GoogleCloudSecuritycenterV1ResourceSelector", - "description": "The resource types that the custom module operates on. Each custom module can specify up to 5 resource types." + "$ref": "GoogleCloudSecuritycenterV1ResourceSelector" }, "severity": { - "description": "The severity to assign to findings generated by the module.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -3479,11 +3003,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified severity.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" } @@ -3491,11 +3015,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1CustomOutputSpec": { - "description": "A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under `sourceProperties`.", "id": "GoogleCloudSecuritycenterV1CustomOutputSpec", "properties": { "properties": { - "description": "A list of custom output properties to add to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV1Property" }, @@ -3505,11 +3027,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule": { - "description": "An EffectiveSecurityHealthAnalyticsCustomModule is the representation of a Security Health Analytics custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective enablement_state for the module in all child folders or projects is also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only.", "id": "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule", "properties": { "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -3517,40 +3037,36 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "customConfig": { "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "Output only. The user-specified configuration for the module.", "readOnly": true }, "displayName": { - "description": "Output only. The display name for the custom module. The name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only.", "readOnly": true, "type": "string" }, "enablementState": { - "description": "Output only. The effective state of enablement for the module at the given level of the hierarchy.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", "DISABLED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given level.", - "The module is disabled at the given level." + "", + "", + "" ], "readOnly": true, "type": "string" }, "name": { - "description": "Output only. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\"", "readOnly": true, "type": "string" } @@ -3558,116 +3074,94 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ExternalSystem": { - "description": "Representation of third party SIEM/SOAR fields within SCC.", "id": "GoogleCloudSecuritycenterV1ExternalSystem", "properties": { "assignees": { - "description": "References primary/secondary etc assignees in the external system.", "items": { "type": "string" }, "type": "array" }, "caseCloseTime": { - "description": "The time when the case was closed, as reported by the external system.", "format": "google-datetime", "type": "string" }, "caseCreateTime": { - "description": "The time when the case was created, as reported by the external system.", "format": "google-datetime", "type": "string" }, "casePriority": { - "description": "The priority of the finding's corresponding case in the external system.", "type": "string" }, "caseSla": { - "description": "The SLA of the finding's corresponding case in the external system.", "format": "google-datetime", "type": "string" }, "caseUri": { - "description": "The link to the finding's corresponding case in the external system.", "type": "string" }, "externalSystemUpdateTime": { - "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", "type": "string" }, "externalUid": { - "description": "The identifier that's used to track the finding's corresponding case in the external system.", "type": "string" }, "name": { - "description": "Full resource name of the external system, for example: \"organizations/1234/sources/5678/findings/123456/externalSystems/jira\", \"folders/1234/sources/5678/findings/123456/externalSystems/jira\", \"projects/1234/sources/5678/findings/123456/externalSystems/jira\"", "type": "string" }, "status": { - "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" }, "ticketInfo": { - "$ref": "TicketInfo", - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." + "$ref": "TicketInfo" } }, "type": "object" }, "GoogleCloudSecuritycenterV1MuteConfig": { - "description": "A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings.", "id": "GoogleCloudSecuritycenterV1MuteConfig", "properties": { "createTime": { - "description": "Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "A description of the mute config.", "type": "string" }, "displayName": { "deprecated": true, - "description": "The human readable name to be displayed for the mute config.", "type": "string" }, "expiryTime": { - "description": "Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings.", "format": "google-datetime", "type": "string" }, "filter": { - "description": "Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:`", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "type": "string" }, "type": { - "description": "Optional. The type of the mute config, which determines what type of mute state the config affects. The static mute state takes precedence over the dynamic mute state. Immutable after creation. STATIC by default if not set during creation.", "enum": [ "MUTE_CONFIG_TYPE_UNSPECIFIED", "STATIC", "DYNAMIC" ], "enumDescriptions": [ - "Unused.", - "A static mute config, which sets the static mute state of future matching findings to muted. Once the static mute state has been set, finding or config modifications will not affect the state.", - "A dynamic mute config, which is applied to existing and future matching findings, setting their dynamic mute state to \"muted\". If the config is updated or deleted, or a matching finding is updated, such that the finding doesn't match the config, the config will be removed from the finding, and the finding's dynamic mute state may become \"unmuted\" (unless other configs still match)." + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -3676,69 +3170,54 @@ "type": "object" }, "GoogleCloudSecuritycenterV1NotificationMessage": { - "description": "Cloud SCC's Notification", "id": "GoogleCloudSecuritycenterV1NotificationMessage", "properties": { "finding": { - "$ref": "Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV1Resource", - "description": "The Cloud resource tied to this notification's Finding." + "$ref": "GoogleCloudSecuritycenterV1Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV1Property": { - "description": "An individual name-value pair that defines a custom source property.", "id": "GoogleCloudSecuritycenterV1Property", "properties": { "name": { - "description": "Name of the property for the custom output.", "type": "string" }, "valueExpression": { - "$ref": "Expr", - "description": "The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks." + "$ref": "Expr" } }, "type": "object" }, "GoogleCloudSecuritycenterV1Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV1Resource", "properties": { "adcApplication": { - "$ref": "AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "AdcApplication" }, "adcApplicationTemplate": { - "$ref": "AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplication" }, "awsMetadata": { - "$ref": "AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "AwsMetadata" }, "azureMetadata": { - "$ref": "AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the resource resides in.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -3746,19 +3225,17 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "Folder" }, @@ -3766,95 +3243,75 @@ "type": "array" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "organization": { - "description": "Indicates which organization or tenant in the cloud provider the finding applies to.", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" }, "resourcePath": { - "$ref": "ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/projects/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The parent service or product from which the resource is provided, for example, GKE or SNS.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplication": { - "description": "The App Hub Application associated with the finding's resource.", "id": "GoogleCloudSecuritycenterV1ResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, @@ -3864,22 +3321,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -3888,11 +3341,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -3900,11 +3353,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -3913,11 +3364,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -3925,11 +3376,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceSelector": { - "description": "Resource for selecting resource type.", "id": "GoogleCloudSecuritycenterV1ResourceSelector", "properties": { "resourceTypes": { - "description": "The resource types to run the detector on.", "items": { "type": "string" }, @@ -3939,11 +3388,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceValueConfig": { - "description": "A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations.", "id": "GoogleCloudSecuritycenterV1ResourceValueConfig", "properties": { "cloudProvider": { - "description": "Cloud provider this configuration applies to", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -3951,40 +3398,34 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Timestamp this resource value configuration was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Description of the resource value configuration.", "type": "string" }, "name": { - "description": "Name for the resource value configuration", "type": "string" }, "resourceLabelsSelector": { "additionalProperties": { "type": "string" }, - "description": "List of resource labels to search for, evaluated with `AND`. For example, `\"resource_labels_selector\": {\"key\": \"value\", \"env\": \"prod\"}` will match resources with labels \"key\": \"value\" `AND` \"env\": \"prod\" https://cloud.google.com/resource-manager/docs/creating-managing-labels", "type": "object" }, "resourceType": { - "description": "Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, \"storage.googleapis.com/Bucket\" with resource_value \"HIGH\" will apply \"HIGH\" value only to \"storage.googleapis.com/Bucket\" resources.", "type": "string" }, "resourceValue": { - "description": "Required. Resource value level this expression represents", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -3993,31 +3434,27 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "Project or folder to scope this configuration to. For example, \"project/456\" would apply this configuration only to resources in \"project/456\" scope will be checked with `AND` of other resources.", "type": "string" }, "sensitiveDataProtectionMapping": { - "$ref": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping", - "description": "A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. \"bigquery.googleapis.com/Dataset\"." + "$ref": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping" }, "tagValues": { - "description": "Required. Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of \"tagValues/123\". Example: `[ \"tagValues/123\", \"tagValues/456\", \"tagValues/789\" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing", "items": { "type": "string" }, "type": "array" }, "updateTime": { - "description": "Output only. Timestamp this resource value configuration was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -4026,16 +3463,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -4043,10 +3477,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -4054,16 +3488,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule": { - "description": "Represents an instance of a Security Health Analytics custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by the child folders and projects.", "id": "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule", "properties": { "ancestorModule": { - "description": "Output only. If empty, indicates that the custom module was created in the organization, folder, or project in which you are viewing the custom module. Otherwise, `ancestor_module` specifies the organization or folder from which the custom module is inherited.", "readOnly": true, "type": "string" }, "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -4071,23 +3502,20 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services (AWS).", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "customConfig": { - "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "The user specified custom configuration for the module." + "$ref": "GoogleCloudSecuritycenterV1CustomConfig" }, "displayName": { - "description": "The display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only.", "type": "string" }, "enablementState": { - "description": "The enablement state of the custom module.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", @@ -4095,24 +3523,21 @@ "INHERITED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given CRM resource.", - "The module is disabled at the given CRM resource.", - "State is inherited from an ancestor module. The module will either be effectively ENABLED or DISABLED based on its closest non-inherited ancestor module in the CRM hierarchy." + "", + "", + "", + "" ], "type": "string" }, "lastEditor": { - "description": "Output only. The editor that last updated the custom module.", "readOnly": true, "type": "string" }, "name": { - "description": "Immutable. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}\" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits.", "type": "string" }, "updateTime": { - "description": "Output only. The time at which the custom module was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -4121,11 +3546,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping": { - "description": "Resource value mapping for Sensitive Data Protection findings. If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration.", "id": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping", "properties": { "highSensitivityMapping": { - "description": "Resource value mapping for high-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -4134,16 +3557,15 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "mediumSensitivityMapping": { - "description": "Resource value mapping for medium-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -4152,11 +3574,11 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" } @@ -4164,62 +3586,51 @@ "type": "object" }, "GoogleCloudSecuritycenterV1beta1Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV1beta1Finding", "properties": { "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "eventTime": { - "description": "The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved.", "format": "google-datetime", "type": "string" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "name": { - "description": "The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\"", "type": "string" }, "parent": { - "description": "Immutable. The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV1beta1SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "sourceProperties": { "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" } @@ -4227,16 +3638,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -4244,10 +3652,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -4255,68 +3663,54 @@ "type": "object" }, "GoogleCloudSecuritycenterV1beta1SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV1beta1SecurityMarks", "properties": { "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV1p1beta1Finding", "properties": { "canonicalName": { - "description": "The canonical name of the finding. It's either \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\" or \"projects/{project_number}/sources/{source_id}/findings/{finding_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "eventTime": { - "description": "The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. Must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "name": { - "description": "The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\"", "type": "string" }, "parent": { - "description": "The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV1p1beta1SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -4325,11 +3719,11 @@ "LOW" ], "enumDescriptions": [ - "No severity specified. The default value.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -4337,20 +3731,18 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" } @@ -4358,45 +3750,36 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "GoogleCloudSecuritycenterV1p1beta1Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1NotificationMessage": { - "description": "Security Command Center's Notification", "id": "GoogleCloudSecuritycenterV1p1beta1NotificationMessage", "properties": { "finding": { - "$ref": "GoogleCloudSecuritycenterV1p1beta1Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "GoogleCloudSecuritycenterV1p1beta1Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV1p1beta1Resource", - "description": "The Cloud resource tied to the notification." + "$ref": "GoogleCloudSecuritycenterV1p1beta1Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV1p1beta1Resource", "properties": { "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "GoogleCloudSecuritycenterV1p1beta1Folder" }, @@ -4404,39 +3787,31 @@ "type": "array" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project id that the resource belongs to.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -4444,10 +3819,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -4455,122 +3830,96 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV1p1beta1SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"folders/{folder_id}/assets/{asset_id}/securityMarks\" \"projects/{project_number}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks\"", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Access": { - "description": "Represents an access event.", "id": "GoogleCloudSecuritycenterV2Access", "properties": { "callerIp": { - "description": "Caller's IP address, such as \"1.1.1.1\".", "type": "string" }, "callerIpGeo": { - "$ref": "GoogleCloudSecuritycenterV2Geolocation", - "description": "The caller IP's geolocation, which identifies where the call came from." + "$ref": "GoogleCloudSecuritycenterV2Geolocation" }, "methodName": { - "description": "The method that the service account called, e.g. \"SetIamPolicy\".", "type": "string" }, "principalEmail": { - "description": "Associated email, such as \"foo@google.com\". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id).", "type": "string" }, "principalSubject": { - "description": "A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name}[{subject}]`.", "type": "string" }, "serviceAccountDelegationInfo": { - "description": "The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events.", "items": { "$ref": "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo" }, "type": "array" }, "serviceAccountKeyName": { - "description": "The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: \"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\". ", "type": "string" }, "serviceName": { - "description": "This is the API service that the service account made a call to, e.g. \"iam.googleapis.com\"", "type": "string" }, "userAgent": { - "description": "The caller's user agent string associated with the finding.", "type": "string" }, "userAgentFamily": { - "description": "Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application.", "type": "string" }, "userName": { - "description": "A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AccessReview": { - "description": "Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding.", "id": "GoogleCloudSecuritycenterV2AccessReview", "properties": { "group": { - "description": "The API group of the resource. \"*\" means all.", "type": "string" }, "name": { - "description": "The name of the resource being requested. Empty means all.", "type": "string" }, "ns": { - "description": "Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by \"\" (empty).", "type": "string" }, "resource": { - "description": "The optional resource type requested. \"*\" means all.", "type": "string" }, "subresource": { - "description": "The optional subresource type.", "type": "string" }, "verb": { - "description": "A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. \"*\" means all.", "type": "string" }, "version": { - "description": "The API version of the resource. \"*\" means all.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdaptiveProtection": { - "description": "Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).", "id": "GoogleCloudSecuritycenterV2AdaptiveProtection", "properties": { "confidence": { - "description": "A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation.", "format": "double", "type": "number" } @@ -4578,48 +3927,39 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AffectedResources": { - "description": "Details about resources affected by this finding.", "id": "GoogleCloudSecuritycenterV2AffectedResources", "properties": { "count": { - "description": "The count of resources affected by the finding.", "format": "int64", "type": "string" } @@ -4627,20 +3967,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AgentDataAccessEvent": { - "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", "id": "GoogleCloudSecuritycenterV2AgentDataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -4648,26 +3984,23 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalSubject": { - "description": "The agent principal that accessed the data.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AiModel": { - "description": "Contains information about the AI model associated with the finding.", "id": "GoogleCloudSecuritycenterV2AiModel", "properties": { "deploymentPlatform": { - "description": "The platform on which the model is deployed.", "enum": [ "DEPLOYMENT_PLATFORM_UNSPECIFIED", "VERTEX_AI", @@ -4676,51 +4009,42 @@ "FINE_TUNED_MODEL" ], "enumDescriptions": [ - "Unspecified deployment platform.", - "Vertex AI.", - "Google Kubernetes Engine.", - "Google Compute Engine.", - "Fine tuned model." + "", + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The user defined display name of model. Ex. baseline-classification-model", "type": "string" }, "domain": { - "description": "The domain of the model, for example, “image-classification”.", "type": "string" }, "library": { - "description": "The name of the model library, for example, “transformers”.", "type": "string" }, "location": { - "description": "The region in which the model is used, for example, “us-central1”.", "type": "string" }, "name": { - "description": "The name of the AI model, for example, \"gemini:1.0.0\".", "type": "string" }, "publisher": { - "description": "The publisher of the model, for example, “google” or “nvidia”.", "type": "string" }, "usageCategory": { - "description": "The purpose of the model, for example, \"Inteference\" or \"Training\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Allowed": { - "description": "Allowed IP rule.", "id": "GoogleCloudSecuritycenterV2Allowed", "properties": { "ipRules": { - "description": "Optional. Optional list of allowed IP rules.", "items": { "$ref": "GoogleCloudSecuritycenterV2IpRule" }, @@ -4730,59 +4054,49 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Application": { - "description": "Represents an application associated with a finding.", "id": "GoogleCloudSecuritycenterV2Application", "properties": { "baseUri": { - "description": "The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`.", "type": "string" }, "fullUri": { - "description": "The full URI with payload that could be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ArtifactGuardPolicies": { - "description": "Represents the result of evaluating artifact guard policies.", "id": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies", "properties": { "failingPolicies": { - "description": "A list of failing policies.", "items": { "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicy" }, "type": "array" }, "resourceId": { - "description": "The ID of the resource that has policies configured for it.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ArtifactGuardPolicy": { - "description": "Represents an artifact guard policy.", "id": "GoogleCloudSecuritycenterV2ArtifactGuardPolicy", "properties": { "failureReason": { - "description": "The reason for the policy failure, for example, \"severity=HIGH AND max_vuln_count=2\".", "type": "string" }, "policyId": { - "description": "The ID of the failing policy, for example, \"organizations/3392779/locations/global/policies/prod-policy\".", "type": "string" }, "type": { - "description": "The type of the policy evaluation.", "enum": [ "ARTIFACT_GUARD_POLICY_TYPE_UNSPECIFIED", "VULNERABILITY" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Vulnerability type." + "", + "" ], "type": "string" } @@ -4790,32 +4104,26 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Attack": { - "description": "Information about DDoS attack volume and classification.", "id": "GoogleCloudSecuritycenterV2Attack", "properties": { "classification": { - "description": "Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.", "type": "string" }, "volumeBps": { "deprecated": true, - "description": "Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead.", "format": "int32", "type": "integer" }, "volumeBpsLong": { - "description": "Total BPS (bytes per second) volume of attack.", "format": "int64", "type": "string" }, "volumePps": { "deprecated": true, - "description": "Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead.", "format": "int32", "type": "integer" }, "volumePpsLong": { - "description": "Total PPS (packets per second) volume of attack.", "format": "int64", "type": "string" } @@ -4823,49 +4131,41 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AttackExposure": { - "description": "An attack exposure contains the results of an attack path simulation run.", "id": "GoogleCloudSecuritycenterV2AttackExposure", "properties": { "attackExposureResult": { - "description": "The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789`", "type": "string" }, "exposedHighValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedLowValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedMediumValueResourcesCount": { - "description": "The number of medium value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "latestCalculationTime": { - "description": "The most recent time the attack exposure was updated on this finding.", "format": "google-datetime", "type": "string" }, "score": { - "description": "A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate.", "format": "double", "type": "number" }, "state": { - "description": "Output only. What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not.", "enum": [ "STATE_UNSPECIFIED", "CALCULATED", "NOT_CALCULATED" ], "enumDescriptions": [ - "The state is not specified.", - "The attack exposure has been calculated.", - "The attack exposure has not been calculated." + "", + "", + "" ], "readOnly": true, "type": "string" @@ -4874,34 +4174,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AwsAccount": { - "description": "An AWS account that is a member of an organization.", "id": "GoogleCloudSecuritycenterV2AwsAccount", "properties": { "id": { - "description": "The unique identifier (ID) of the account, containing exactly 12 digits.", "type": "string" }, "name": { - "description": "The friendly name of this account.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AwsMetadata": { - "description": "AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services.", "id": "GoogleCloudSecuritycenterV2AwsMetadata", "properties": { "account": { - "$ref": "GoogleCloudSecuritycenterV2AwsAccount", - "description": "The AWS account associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AwsAccount" }, "organization": { - "$ref": "GoogleCloudSecuritycenterV2AwsOrganization", - "description": "The AWS organization associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AwsOrganization" }, "organizationalUnits": { - "description": "A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2AwsOrganizationalUnit" }, @@ -4911,217 +4204,174 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AwsOrganization": { - "description": "An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies.", "id": "GoogleCloudSecuritycenterV2AwsOrganization", "properties": { "id": { - "description": "The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires \"o-\" followed by from 10 to 32 lowercase letters or digits.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AwsOrganizationalUnit": { - "description": "An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs.", "id": "GoogleCloudSecuritycenterV2AwsOrganizationalUnit", "properties": { "id": { - "description": "The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires \"ou-\" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second \"-\" dash and from 8 to 32 additional lowercase letters or digits. For example, \"ou-ab12-cd34ef56\".", "type": "string" }, "name": { - "description": "The friendly name of the OU.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureManagementGroup": { - "description": "Represents an Azure management group.", "id": "GoogleCloudSecuritycenterV2AzureManagementGroup", "properties": { "displayName": { - "description": "The display name of the Azure management group.", "type": "string" }, "id": { - "description": "The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureMetadata": { - "description": "Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure.", "id": "GoogleCloudSecuritycenterV2AzureMetadata", "properties": { "managementGroups": { - "description": "A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2AzureManagementGroup" }, "type": "array" }, "resourceGroup": { - "$ref": "GoogleCloudSecuritycenterV2AzureResourceGroup", - "description": "The Azure resource group associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureResourceGroup" }, "subscription": { - "$ref": "GoogleCloudSecuritycenterV2AzureSubscription", - "description": "The Azure subscription associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureSubscription" }, "tenant": { - "$ref": "GoogleCloudSecuritycenterV2AzureTenant", - "description": "The Azure Entra tenant associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureTenant" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureResourceGroup": { - "description": "Represents an Azure resource group.", "id": "GoogleCloudSecuritycenterV2AzureResourceGroup", "properties": { "id": { - "description": "The ID of the Azure resource group.", "type": "string" }, "name": { - "description": "The name of the Azure resource group. This is not a UUID.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureSubscription": { - "description": "Represents an Azure subscription.", "id": "GoogleCloudSecuritycenterV2AzureSubscription", "properties": { "displayName": { - "description": "The display name of the Azure subscription.", "type": "string" }, "id": { - "description": "The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureTenant": { - "description": "Represents a Microsoft Entra tenant.", "id": "GoogleCloudSecuritycenterV2AzureTenant", "properties": { "displayName": { - "description": "The display name of the Azure tenant.", "type": "string" }, "id": { - "description": "The ID of the Microsoft Entra tenant, for example, \"a11aaa11-aa11-1aa1-11aa-1aaa11a\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2BackupDisasterRecovery": { - "description": "Information related to Google Cloud Backup and DR Service findings.", "id": "GoogleCloudSecuritycenterV2BackupDisasterRecovery", "properties": { "appliance": { - "description": "The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`.", "type": "string" }, "applications": { - "description": "The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.", "items": { "type": "string" }, "type": "array" }, "backupCreateTime": { - "description": "The timestamp at which the Backup and DR backup was created.", "format": "google-datetime", "type": "string" }, "backupTemplate": { - "description": "The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`.", "type": "string" }, "backupType": { - "description": "The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`.", "type": "string" }, "host": { - "description": "The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`.", "type": "string" }, "policies": { - "description": "The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`.", "items": { "type": "string" }, "type": "array" }, "policyOptions": { - "description": "The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`.", "items": { "type": "string" }, "type": "array" }, "profile": { - "description": "The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`.", "type": "string" }, "storagePool": { - "description": "The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2BigQueryExport": { - "description": "Configures how to deliver Findings to BigQuery Instance.", "id": "GoogleCloudSecuritycenterV2BigQueryExport", "properties": { "createTime": { - "description": "Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The resource name of the Cloud KMS `CryptoKey` used to protect this configuration's data, if configured during Security Command Center activation.", "readOnly": true, "type": "string" }, "dataset": { - "description": "The dataset to write findings' updates to. Its format is \"projects/[project_id]/datasets/[bigquery_dataset_id]\". BigQuery dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).", "type": "string" }, "description": { - "description": "The description of the export (max of 1024 characters).", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. The following list shows some examples: + `organizations/{organization_id}/locations/{location_id}/bigQueryExports/{export_id}` + `folders/{folder_id}/locations/{location_id}/bigQueryExports/{export_id}` + `projects/{project_id}/locations/{location_id}/bigQueryExports/{export_id}` This field is provided in responses, and is ignored when provided in create requests.", "type": "string" }, "principal": { - "description": "Output only. The service account that needs permission to create table and upload data to the BigQuery dataset.", "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -5130,23 +4380,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Binding": { - "description": "Represents a Kubernetes RoleBinding or ClusterRoleBinding.", "id": "GoogleCloudSecuritycenterV2Binding", "properties": { "name": { - "description": "Name for the binding.", "type": "string" }, "ns": { - "description": "Namespace for the binding.", "type": "string" }, "role": { - "$ref": "GoogleCloudSecuritycenterV2Role", - "description": "The Role or ClusterRole referenced by the binding." + "$ref": "GoogleCloudSecuritycenterV2Role" }, "subjects": { - "description": "Represents one or more subjects that are bound to the role. Not always available for PATCH requests.", "items": { "$ref": "GoogleCloudSecuritycenterV2Subject" }, @@ -5156,17 +4401,14 @@ "type": "object" }, "GoogleCloudSecuritycenterV2BulkMuteFindingsResponse": { - "description": "The response to a BulkMute request. Contains the LRO information.", "id": "GoogleCloudSecuritycenterV2BulkMuteFindingsResponse", "properties": {}, "type": "object" }, "GoogleCloudSecuritycenterV2Chokepoint": { - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).", "id": "GoogleCloudSecuritycenterV2Chokepoint", "properties": { "relatedFindings": { - "description": "List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings.", "items": { "type": "string" }, @@ -5176,65 +4418,53 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudArmor": { - "description": "Fields related to Google Cloud Armor findings.", "id": "GoogleCloudSecuritycenterV2CloudArmor", "properties": { "adaptiveProtection": { - "$ref": "GoogleCloudSecuritycenterV2AdaptiveProtection", - "description": "Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview)." + "$ref": "GoogleCloudSecuritycenterV2AdaptiveProtection" }, "attack": { - "$ref": "GoogleCloudSecuritycenterV2Attack", - "description": "Information about DDoS attack volume and classification." + "$ref": "GoogleCloudSecuritycenterV2Attack" }, "duration": { - "description": "Duration of attack from the start until the current moment (updated every 5 minutes).", "format": "google-duration", "type": "string" }, "requests": { - "$ref": "GoogleCloudSecuritycenterV2Requests", - "description": "Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview)." + "$ref": "GoogleCloudSecuritycenterV2Requests" }, "securityPolicy": { - "$ref": "GoogleCloudSecuritycenterV2SecurityPolicy", - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityPolicy" }, "threatVector": { - "description": "Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, \"L3_4\" for Layer 3 and Layer 4 DDoS attacks, or \"L_7\" for Layer 7 DDoS attacks.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2CloudControl": { - "description": "CloudControl associated with the finding.", "id": "GoogleCloudSecuritycenterV2CloudControl", "properties": { "cloudControlName": { - "description": "Name of the CloudControl associated with the finding.", "type": "string" }, "policyType": { - "description": "Policy type of the CloudControl", "type": "string" }, "type": { - "description": "Type of cloud control.", "enum": [ "CLOUD_CONTROL_TYPE_UNSPECIFIED", "BUILT_IN", "CUSTOM" ], "enumDescriptions": [ - "Unspecified.", - "Built in Cloud Control.", - "Custom Cloud Control." + "", + "", + "" ], "type": "string" }, "version": { - "description": "Version of the Cloud Control", "format": "int32", "type": "integer" } @@ -5242,31 +4472,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudDlpDataProfile": { - "description": "The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding.", "id": "GoogleCloudSecuritycenterV2CloudDlpDataProfile", "properties": { "dataProfile": { - "description": "Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`.", "type": "string" }, "infoTypes": { - "description": "Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type.", "items": { "$ref": "GoogleCloudSecuritycenterV2InfoType" }, "type": "array" }, "parentType": { - "description": "The resource hierarchy level at which the data profile was generated.", "enum": [ "PARENT_TYPE_UNSPECIFIED", "ORGANIZATION", "PROJECT" ], "enumDescriptions": [ - "Unspecified parent type.", - "Organization-level configurations.", - "Project-level configurations." + "", + "", + "" ], "type": "string" } @@ -5274,47 +4500,37 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudDlpInspection": { - "description": "Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding.", "id": "GoogleCloudSecuritycenterV2CloudDlpInspection", "properties": { "fullScan": { - "description": "Whether Cloud DLP scanned the complete resource or a sampled subset.", "type": "boolean" }, "infoType": { - "description": "The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.", "type": "string" }, "infoTypeCount": { - "description": "The number of times Cloud DLP found this infoType within this job and resource.", "format": "int64", "type": "string" }, "inspectJob": { - "description": "Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2CloudLoggingEntry": { - "description": "Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)", "id": "GoogleCloudSecuritycenterV2CloudLoggingEntry", "properties": { "insertId": { - "description": "A unique identifier for the log entry.", "type": "string" }, "logId": { - "description": "The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity` Note that this field is not URL-encoded, unlike in `LogEntry`.", "type": "string" }, "resourceContainer": { - "description": "The organization, folder, or project of the monitored resource that produced this log entry.", "type": "string" }, "timestamp": { - "description": "The time the event described by the log entry occurred.", "format": "google-datetime", "type": "string" } @@ -5322,44 +4538,36 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Compliance": { - "description": "Contains compliance information about a security standard indicating unmet recommendations.", "id": "GoogleCloudSecuritycenterV2Compliance", "properties": { "ids": { - "description": "Policies within the standard or benchmark, for example, A.12.4.1", "items": { "type": "string" }, "type": "array" }, "standard": { - "description": "Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP.", "type": "string" }, "version": { - "description": "Version of the standard or benchmark, for example, 1.1", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ComplianceDetails": { - "description": "Compliance Details associated with the finding.", "id": "GoogleCloudSecuritycenterV2ComplianceDetails", "properties": { "cloudControl": { - "$ref": "GoogleCloudSecuritycenterV2CloudControl", - "description": "CloudControl associated with the finding" + "$ref": "GoogleCloudSecuritycenterV2CloudControl" }, "cloudControlDeploymentNames": { - "description": "Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier", "items": { "type": "string" }, "type": "array" }, "frameworks": { - "description": "Details of Frameworks associated with the finding", "items": { "$ref": "GoogleCloudSecuritycenterV2Framework" }, @@ -5369,20 +4577,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Connection": { - "description": "Contains information about the IP connection associated with the finding.", "id": "GoogleCloudSecuritycenterV2Connection", "properties": { "destinationIp": { - "description": "Destination IP address. Not present for sockets that are listening and not connected.", "type": "string" }, "destinationPort": { - "description": "Destination port. Not present for sockets that are listening and not connected.", "format": "int32", "type": "integer" }, "protocol": { - "description": "IANA Internet Protocol Number such as TCP(6) and UDP(17).", "enum": [ "PROTOCOL_UNSPECIFIED", "ICMP", @@ -5392,21 +4596,19 @@ "ESP" ], "enumDescriptions": [ - "Unspecified protocol (not HOPOPT).", - "Internet Control Message Protocol.", - "Transmission Control Protocol.", - "User Datagram Protocol.", - "Generic Routing Encapsulation.", - "Encap Security Payload." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "sourceIp": { - "description": "Source IP address.", "type": "string" }, "sourcePort": { - "description": "Source port.", "format": "int32", "type": "integer" } @@ -5414,22 +4616,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Contact": { - "description": "The email address of a contact.", "id": "GoogleCloudSecuritycenterV2Contact", "properties": { "email": { - "description": "An email address. For example, \"`person123@company.com`\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ContactDetails": { - "description": "Details about specific contacts", "id": "GoogleCloudSecuritycenterV2ContactDetails", "properties": { "contacts": { - "description": "A list of contacts", "items": { "$ref": "GoogleCloudSecuritycenterV2Contact" }, @@ -5439,66 +4637,53 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Container": { - "description": "Container associated with the finding.", "id": "GoogleCloudSecuritycenterV2Container", "properties": { "createTime": { - "description": "The time that the container was created.", "format": "google-datetime", "type": "string" }, "imageId": { - "description": "Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest.", "type": "string" }, "labels": { - "description": "Container labels, as provided by the container runtime.", "items": { "$ref": "GoogleCloudSecuritycenterV2Label" }, "type": "array" }, "name": { - "description": "Name of the container.", "type": "string" }, "uri": { - "description": "Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Control": { - "description": "Compliance control associated with the finding.", "id": "GoogleCloudSecuritycenterV2Control", "properties": { "controlName": { - "description": "Name of the Control", "type": "string" }, "displayName": { - "description": "Display name of the control. For example, AU-02.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Cve": { - "description": "CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability.", "id": "GoogleCloudSecuritycenterV2Cve", "properties": { "cvssv3": { - "$ref": "GoogleCloudSecuritycenterV2Cvssv3", - "description": "Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document" + "$ref": "GoogleCloudSecuritycenterV2Cvssv3" }, "exploitReleaseDate": { - "description": "Date the first publicly available exploit or PoC was released.", "format": "google-datetime", "type": "string" }, "exploitationActivity": { - "description": "The exploitation activity of the vulnerability in the wild.", "enum": [ "EXPLOITATION_ACTIVITY_UNSPECIFIED", "WIDE", @@ -5508,26 +4693,23 @@ "NO_KNOWN" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation has been reported or confirmed to widely occur.", - "Limited reported or confirmed exploitation activities.", - "Exploit is publicly available.", - "No known exploitation activity, but has a high potential for exploitation.", - "No known exploitation activity." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "firstExploitationDate": { - "description": "Date of the earliest known exploitation.", "format": "google-datetime", "type": "string" }, "id": { - "description": "The unique identifier for the vulnerability. e.g. CVE-2021-34527", "type": "string" }, "impact": { - "description": "The potential impact of the vulnerability if it was to be exploited.", "enum": [ "RISK_RATING_UNSPECIFIED", "LOW", @@ -5536,56 +4718,49 @@ "CRITICAL" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation would have little to no security impact.", - "Exploitation would enable attackers to perform activities, or could allow attackers to have a direct impact, but would require additional steps.", - "Exploitation would enable attackers to have a notable direct impact without needing to overcome any major mitigating factors.", - "Exploitation would fundamentally undermine the security of affected systems, enable actors to perform significant attacks with minimal effort, with little to no mitigating factors to overcome." + "", + "", + "", + "", + "" ], "type": "string" }, "observedInTheWild": { - "description": "Whether or not the vulnerability has been observed in the wild.", "type": "boolean" }, "references": { - "description": "Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527", "items": { "$ref": "GoogleCloudSecuritycenterV2Reference" }, "type": "array" }, "upstreamFixAvailable": { - "description": "Whether upstream fix is available for the CVE.", "type": "boolean" }, "zeroDay": { - "description": "Whether or not the vulnerability was zero day when the finding was published.", "type": "boolean" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Cvssv3": { - "description": "Common Vulnerability Scoring System version 3.", "id": "GoogleCloudSecuritycenterV2Cvssv3", "properties": { "attackComplexity": { - "description": "This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", "ATTACK_COMPLEXITY_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "Specialized access conditions or extenuating circumstances do not exist. An attacker can expect repeatable success when attacking the vulnerable component.", - "A successful attack depends on conditions beyond the attacker's control. That is, a successful attack cannot be accomplished at will, but requires the attacker to invest in some measurable amount of effort in preparation or execution against the vulnerable component before a successful attack can be expected." + "", + "", + "" ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -5594,16 +4769,15 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.", - "The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.", - "The vulnerable component is not bound to the network stack and the attacker's path is via read/write/execute capabilities.", - "The attack requires the attacker to physically touch or manipulate the vulnerable component." + "", + "", + "", + "", + "" ], "type": "string" }, "availabilityImpact": { - "description": "This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -5611,20 +4785,18 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "baseScore": { - "description": "The base score is a function of the base metric scores.", "format": "double", "type": "number" }, "confidentialityImpact": { - "description": "This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -5632,15 +4804,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "integrityImpact": { - "description": "This metric measures the impact to integrity of a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -5648,15 +4819,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "privilegesRequired": { - "description": "This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -5664,38 +4834,36 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files of the vulnerable system to carry out an attack.", - "The attacker requires privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. Alternatively, an attacker with Low privileges has the ability to access only non-sensitive resources.", - "The attacker requires privileges that provide significant (e.g., administrative) control over the vulnerable component allowing access to component-wide settings and files." + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Invalid value.", - "An exploited vulnerability can only affect resources managed by the same security authority.", - "An exploited vulnerability can affect resources beyond the security scope managed by the security authority of the vulnerable component." + "", + "", + "" ], "type": "string" }, "userInteraction": { - "description": "This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", "USER_INTERACTION_REQUIRED" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable system can be exploited without interaction from any user.", - "Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited." + "", + "", + "" ], "type": "string" } @@ -5703,15 +4871,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Cwe": { - "description": "CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/).", "id": "GoogleCloudSecuritycenterV2Cwe", "properties": { "id": { - "description": "The CWE identifier, e.g. CWE-94", "type": "string" }, "references": { - "description": "Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html", "items": { "$ref": "GoogleCloudSecuritycenterV2Reference" }, @@ -5721,20 +4886,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2DataAccessEvent": { - "description": "Details about a data access attempt made by a principal not authorized under applicable data security policy.", "id": "GoogleCloudSecuritycenterV2DataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -5742,35 +4903,30 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DataFlowEvent": { - "description": "Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy.", "id": "GoogleCloudSecuritycenterV2DataFlowEvent", "properties": { "eventId": { - "description": "Unique identifier for data flow event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data flow event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal for the data flow event.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -5778,40 +4934,34 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other.", "type": "string" }, "violatedLocation": { - "description": "Non-compliant location of the principal or the data destination.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent": { - "description": "Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments.", "id": "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent", "properties": { "dataObjectCount": { - "description": "Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000.", "format": "int64", "type": "string" }, "eventDetectionTime": { - "description": "Timestamp indicating when the event was detected.", "format": "google-datetime", "type": "string" }, "eventType": { - "description": "Type of the DRD event.", "enum": [ "EVENT_TYPE_UNSPECIFIED", "EVENT_TYPE_MAX_TTL_EXCEEDED", @@ -5827,21 +4977,19 @@ false ], "enumDescriptions": [ - "Unspecified event type.", - "Deprecated: This field is pending removal. Use EVENT_TYPE_MAX_TTL_FROM_CREATION or EVENT_TYPE_MAX_TTL_FROM_LAST_MODIFICATION instead.", - "Max TTL from the asset's creation time.", - "Max TTL from the asset's last modification time.", - "Min TTL from the asset's creation time." + "", + "", + "", + "", + "" ], "type": "string" }, "maxRetentionAllowed": { - "description": "Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days.", "format": "google-duration", "type": "string" }, "minRetentionAllowed": { - "description": "Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION.", "format": "google-duration", "type": "string" } @@ -5849,64 +4997,51 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Database": { - "description": "Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided.", "id": "GoogleCloudSecuritycenterV2Database", "properties": { "displayName": { - "description": "The human-readable name of the database that the user connected to.", "type": "string" }, "grantees": { - "description": "The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory.", "type": "string" }, "query": { - "description": "The SQL statement that is associated with the database access.", "type": "string" }, "userName": { - "description": "The username used to connect to the database. The username might not be an IAM principal and does not have a set format.", "type": "string" }, "version": { - "description": "The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Dataset": { - "description": "Vertex AI dataset associated with the finding.", "id": "GoogleCloudSecuritycenterV2Dataset", "properties": { "displayName": { - "description": "The user defined display name of dataset, e.g. plants-dataset", "type": "string" }, "name": { - "description": "Resource name of the dataset, e.g. projects/{project}/locations/{location}/datasets/2094040236064505856", "type": "string" }, "source": { - "description": "Data source, such as a BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Denied": { - "description": "Denied IP rule.", "id": "GoogleCloudSecuritycenterV2Denied", "properties": { "ipRules": { - "description": "Optional. Optional list of denied IP rules.", "items": { "$ref": "GoogleCloudSecuritycenterV2IpRule" }, @@ -5916,15 +5051,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Detection": { - "description": "Memory hash detection contributing to the binary family match.", "id": "GoogleCloudSecuritycenterV2Detection", "properties": { "binary": { - "description": "The name of the binary associated with the memory hash signature detection.", "type": "string" }, "percentPagesMatched": { - "description": "The percentage of memory page hashes in the signature that were matched.", "format": "double", "type": "number" } @@ -5932,35 +5064,29 @@ "type": "object" }, "GoogleCloudSecuritycenterV2DiscoveredWorkload": { - "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", "id": "GoogleCloudSecuritycenterV2DiscoveredWorkload", "properties": { "confidence": { - "description": "The confidence in detection of this workload.", "enum": [ "CONFIDENCE_UNSPECIFIED", "CONFIDENCE_HIGH" ], "enumDescriptions": [ - "Unspecified confidence level.", - "High confidence in detection of a workload." + "", + "" ], "type": "string" }, "detectedRelevantHardware": { - "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", "type": "boolean" }, "detectedRelevantKeywords": { - "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", "type": "boolean" }, "detectedRelevantPackages": { - "description": "A boolean flag set to true if installed packages strongly predict the workload type.", "type": "boolean" }, "workloadType": { - "description": "The type of workload.", "enum": [ "WORKLOAD_TYPE_UNSPECIFIED", "MCP_SERVER", @@ -5968,10 +5094,10 @@ "AGENT" ], "enumDescriptions": [ - "Unspecified workload type", - "A workload of type MCP Server", - "A workload of type AI Inference", - "A workload of type LLM Agent" + "", + "", + "", + "" ], "type": "string" } @@ -5979,100 +5105,82 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Disk": { - "description": "Contains information about the disk associated with the finding.", "id": "GoogleCloudSecuritycenterV2Disk", "properties": { "name": { - "description": "The name of the disk, for example, \"https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DiskPath": { - "description": "Path of the file in terms of underlying disk/partition identifiers.", "id": "GoogleCloudSecuritycenterV2DiskPath", "properties": { "partitionUuid": { - "description": "UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)", "type": "string" }, "relativePath": { - "description": "Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DynamicMuteRecord": { - "description": "The record of a dynamic mute rule that matches the finding.", "id": "GoogleCloudSecuritycenterV2DynamicMuteRecord", "properties": { "matchTime": { - "description": "When the dynamic mute rule first matched the finding.", "format": "google-datetime", "type": "string" }, "muteConfig": { - "description": "The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2EnvironmentVariable": { - "description": "A name-value pair representing an environment variable used in an operating system process.", "id": "GoogleCloudSecuritycenterV2EnvironmentVariable", "properties": { "name": { - "description": "Environment variable name as a JSON encoded string.", "type": "string" }, "val": { - "description": "Environment variable value as a JSON encoded string.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ExfilResource": { - "description": "Resource where data was exfiltrated from or exfiltrated to.", "id": "GoogleCloudSecuritycenterV2ExfilResource", "properties": { "components": { - "description": "Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name).", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Exfiltration": { - "description": "Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to.", "id": "GoogleCloudSecuritycenterV2Exfiltration", "properties": { "sources": { - "description": "If there are multiple sources, then the data is considered \"joined\" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source.", "items": { "$ref": "GoogleCloudSecuritycenterV2ExfilResource" }, "type": "array" }, "targets": { - "description": "If there are multiple targets, each target would get a complete copy of the \"joined\" source data.", "items": { "$ref": "GoogleCloudSecuritycenterV2ExfilResource" }, "type": "array" }, "totalExfiltratedBytes": { - "description": "Total exfiltrated bytes processed for the entire job.", "format": "int64", "type": "string" } @@ -6080,205 +5188,162 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ExternalExposure": { - "description": "Details about the externally exposed resource associated with the finding.", "id": "GoogleCloudSecuritycenterV2ExternalExposure", "properties": { "backendBucket": { - "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", "type": "string" }, "backendService": { - "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "exposedApplication": { - "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", "type": "string" }, "exposedEndpoint": { - "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" }, "exposedService": { - "description": "The name and version of the service, for example, \"Jupyter Notebook 6.14.0\".", "type": "string" }, "forwardingRule": { - "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, "hostnameUri": { - "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", "type": "string" }, "httpResponse": { - "description": "The http response returned by the web application.", "items": { "$ref": "GoogleCloudSecuritycenterV2HttpResponse" }, "type": "array" }, "instanceGroup": { - "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, "internalBackendService": { - "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "loadBalancerFirewallPolicy": { - "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" }, "networkEndpointGroup": { - "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, "networkIngressFirewallPolicy": { - "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", "type": "string" }, "privateIpAddress": { - "description": "Private IP address of the exposed endpoint.", "type": "string" }, "privatePort": { - "description": "Port number associated with private IP address.", "type": "string" }, "pscNetworkAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", "type": "string" }, "pscServiceAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", "type": "string" }, "publicIpAddress": { - "description": "Public IP address of the exposed endpoint.", "type": "string" }, "publicPort": { - "description": "Public port number of the exposed endpoint.", "type": "string" }, "serviceFirewallPolicy": { - "description": "The full resource name of the firewall policy of the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ExternalSystem": { - "description": "Representation of third party SIEM/SOAR fields within SCC.", "id": "GoogleCloudSecuritycenterV2ExternalSystem", "properties": { "assignees": { - "description": "References primary/secondary etc assignees in the external system.", "items": { "type": "string" }, "type": "array" }, "caseCloseTime": { - "description": "The time when the case was closed, as reported by the external system.", "format": "google-datetime", "type": "string" }, "caseCreateTime": { - "description": "The time when the case was created, as reported by the external system.", "format": "google-datetime", "type": "string" }, "casePriority": { - "description": "The priority of the finding's corresponding case in the external system.", "type": "string" }, "caseSla": { - "description": "The SLA of the finding's corresponding case in the external system.", "format": "google-datetime", "type": "string" }, "caseUri": { - "description": "The link to the finding's corresponding case in the external system.", "type": "string" }, "externalSystemUpdateTime": { - "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", "type": "string" }, "externalUid": { - "description": "The identifier that's used to track the finding's corresponding case in the external system.", "type": "string" }, "name": { - "description": "Full resource name of the external system. The following list shows some examples: + `organizations/1234/sources/5678/findings/123456/externalSystems/jira` + `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira`", "type": "string" }, "status": { - "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" }, "ticketInfo": { - "$ref": "GoogleCloudSecuritycenterV2TicketInfo", - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." + "$ref": "GoogleCloudSecuritycenterV2TicketInfo" } }, "type": "object" }, "GoogleCloudSecuritycenterV2File": { - "description": "File information about the related binary/library used by an executable, or the script used by a script interpreter", "id": "GoogleCloudSecuritycenterV2File", "properties": { "contents": { - "description": "Prefix of the file contents as a JSON-encoded string.", "type": "string" }, "diskPath": { - "$ref": "GoogleCloudSecuritycenterV2DiskPath", - "description": "Path of the file in terms of underlying disk/partition identifiers." + "$ref": "GoogleCloudSecuritycenterV2DiskPath" }, "fileLoadState": { - "description": "The load state of the file.", "enum": [ "FILE_LOAD_STATE_UNSPECIFIED", "LOADED_BY_PROCESS", "NOT_LOADED_BY_PROCESS" ], "enumDescriptions": [ - "The file state is unspecified.", - "The file is being used by an active process at the time of scanning.", - "The file is not being used by any active process at the time of scanning." + "", + "", + "" ], "type": "string" }, "hashedSize": { - "description": "The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file.", "format": "int64", "type": "string" }, "operations": { - "description": "Operation(s) performed on a file.", "items": { "$ref": "GoogleCloudSecuritycenterV2FileOperation" }, "type": "array" }, "partiallyHashed": { - "description": "True when the hash covers only a prefix of the file.", "type": "boolean" }, "path": { - "description": "Absolute path of the file as a JSON encoded string.", "type": "string" }, "sha256": { - "description": "SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file.", "type": "string" }, "size": { - "description": "Size of the file in bytes.", "format": "int64", "type": "string" } @@ -6286,11 +5351,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2FileOperation": { - "description": "Operation(s) performed on a file.", "id": "GoogleCloudSecuritycenterV2FileOperation", "properties": { "type": { - "description": "The type of the operation", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "OPEN", @@ -6300,12 +5363,12 @@ "EXECUTE" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents an open operation.", - "Represents a read operation.", - "Represents a rename operation.", - "Represents a write operation.", - "Represents an execute operation." + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -6313,82 +5376,64 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV2Finding", "properties": { "access": { - "$ref": "GoogleCloudSecuritycenterV2Access", - "description": "Access details associated with the finding, such as more information on the caller, which method was accessed, and from where." + "$ref": "GoogleCloudSecuritycenterV2Access" }, "affectedResources": { - "$ref": "GoogleCloudSecuritycenterV2AffectedResources", - "description": "AffectedResources associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AffectedResources" }, "agentDataAccessEvents": { - "description": "Agent data access events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2AgentDataAccessEvent" }, "type": "array" }, "aiModel": { - "$ref": "GoogleCloudSecuritycenterV2AiModel", - "description": "The AI model associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AiModel" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2Application", - "description": "Represents an application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Application" }, "artifactGuardPolicies": { - "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies", - "description": "ArtifactGuardPolicies associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies" }, "attackExposure": { - "$ref": "GoogleCloudSecuritycenterV2AttackExposure", - "description": "The results of an attack path simulation relevant to this finding." + "$ref": "GoogleCloudSecuritycenterV2AttackExposure" }, "backupDisasterRecovery": { - "$ref": "GoogleCloudSecuritycenterV2BackupDisasterRecovery", - "description": "Fields related to Backup and DR findings." + "$ref": "GoogleCloudSecuritycenterV2BackupDisasterRecovery" }, "canonicalName": { - "description": "Output only. The canonical name of the finding. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` The prefix is the closest CRM ancestor of the resource associated with the finding.", "readOnly": true, "type": "string" }, "category": { - "description": "Immutable. The additional taxonomy group within findings from a given source. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "chokepoint": { - "$ref": "GoogleCloudSecuritycenterV2Chokepoint", - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests." + "$ref": "GoogleCloudSecuritycenterV2Chokepoint" }, "cloudArmor": { - "$ref": "GoogleCloudSecuritycenterV2CloudArmor", - "description": "Fields related to Cloud Armor findings." + "$ref": "GoogleCloudSecuritycenterV2CloudArmor" }, "cloudDlpDataProfile": { - "$ref": "GoogleCloudSecuritycenterV2CloudDlpDataProfile", - "description": "Cloud DLP data profile that is associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2CloudDlpDataProfile" }, "cloudDlpInspection": { - "$ref": "GoogleCloudSecuritycenterV2CloudDlpInspection", - "description": "Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2CloudDlpInspection" }, "complianceDetails": { - "$ref": "GoogleCloudSecuritycenterV2ComplianceDetails", - "description": "Details about the compliance implications of the finding." + "$ref": "GoogleCloudSecuritycenterV2ComplianceDetails" }, "compliances": { - "description": "Contains compliance information for security standards associated to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Compliance" }, "type": "array" }, "connections": { - "description": "Contains information about the IP connection associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Connection" }, @@ -6398,99 +5443,81 @@ "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV2ContactDetails" }, - "description": "Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { \"security\": { \"contacts\": [ { \"email\": \"person1@company.com\" }, { \"email\": \"person2@company.com\" } ] } }", "readOnly": true, "type": "object" }, "containers": { - "description": "Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "createTime": { - "description": "Output only. The time at which the finding was created in Security Command Center.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The name of the Cloud KMS key used to encrypt this finding, if any.", "readOnly": true, "type": "string" }, "dataAccessEvents": { - "description": "Data access events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataAccessEvent" }, "type": "array" }, "dataFlowEvents": { - "description": "Data flow events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataFlowEvent" }, "type": "array" }, "dataRetentionDeletionEvents": { - "description": "Data retention deletion events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent" }, "type": "array" }, "database": { - "$ref": "GoogleCloudSecuritycenterV2Database", - "description": "Database associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Database" }, "description": { - "description": "Contains more details about the finding.", "type": "string" }, "discoveredWorkload": { - "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload", - "description": "DiscoveredWorkload associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload" }, "disk": { - "$ref": "GoogleCloudSecuritycenterV2Disk", - "description": "Disk associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Disk" }, "eventTime": { - "description": "The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "exfiltration": { - "$ref": "GoogleCloudSecuritycenterV2Exfiltration", - "description": "Represents exfiltrations associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Exfiltration" }, "externalExposure": { - "$ref": "GoogleCloudSecuritycenterV2ExternalExposure", - "description": "External exposure associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2ExternalExposure" }, "externalSystems": { "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV2ExternalSystem" }, - "description": "Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.", "readOnly": true, "type": "object" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "files": { - "description": "File associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2File" }, "type": "array" }, "findingClass": { - "description": "The class of the finding.", "enum": [ "FINDING_CLASS_UNSPECIFIED", "THREAT", @@ -6506,79 +5533,67 @@ "SECRET" ], "enumDescriptions": [ - "Unspecified finding class.", - "Describes unwanted or malicious activity.", - "Describes a potential weakness in software that increases risk to Confidentiality & Integrity & Availability.", - "Describes a potential weakness in cloud resource/asset configuration that increases risk.", - "Describes a security observation that is for informational purposes.", - "Describes an error that prevents some SCC functionality.", - "Describes a potential security risk due to a change in the security posture.", - "Describes a combination of security issues that represent a more severe security problem when taken together.", - "Describes a potential security risk to data assets that contain sensitive data.", - "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet.", - "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "groupMemberships": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.", "items": { "$ref": "GoogleCloudSecuritycenterV2GroupMembership" }, "type": "array" }, "iamBindings": { - "description": "Represents IAM bindings associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2IamBinding" }, "type": "array" }, "indicator": { - "$ref": "GoogleCloudSecuritycenterV2Indicator", - "description": "Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise)." + "$ref": "GoogleCloudSecuritycenterV2Indicator" }, "ipRules": { - "$ref": "GoogleCloudSecuritycenterV2IpRules", - "description": "IP rules associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IpRules" }, "job": { - "$ref": "GoogleCloudSecuritycenterV2Job", - "description": "Job associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Job" }, "kernelRootkit": { - "$ref": "GoogleCloudSecuritycenterV2KernelRootkit", - "description": "Signature of the kernel rootkit." + "$ref": "GoogleCloudSecuritycenterV2KernelRootkit" }, "kubernetes": { - "$ref": "GoogleCloudSecuritycenterV2Kubernetes", - "description": "Kubernetes resources associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Kubernetes" }, "loadBalancers": { - "description": "The load balancers associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2LoadBalancer" }, "type": "array" }, "logEntries": { - "description": "Log entries that are relevant to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2LogEntry" }, "type": "array" }, "mitreAttack": { - "$ref": "GoogleCloudSecuritycenterV2MitreAttack", - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org" + "$ref": "GoogleCloudSecuritycenterV2MitreAttack" }, "moduleName": { - "description": "Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885", "type": "string" }, "mute": { - "description": "Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -6586,93 +5601,76 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" }, "muteInfo": { "$ref": "GoogleCloudSecuritycenterV2MuteInfo", - "description": "Output only. The mute information regarding this finding.", "readOnly": true }, "muteInitiator": { - "description": "Records additional information about the mute operation, for example, the [mute configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding.", "type": "string" }, "muteUpdateTime": { - "description": "Output only. The most recent time this finding was muted or unmuted.", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}` + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`", "type": "string" }, "networks": { - "description": "Represents the VPC networks that the resource is attached to.", "items": { "$ref": "GoogleCloudSecuritycenterV2Network" }, "type": "array" }, "nextSteps": { - "description": "Steps to address the finding.", "type": "string" }, "notebook": { - "$ref": "GoogleCloudSecuritycenterV2Notebook", - "description": "Notebook associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Notebook" }, "orgPolicies": { - "description": "Contains information about the org policies associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2OrgPolicy" }, "type": "array" }, "parent": { - "description": "The relative resource name of the source and location the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}` + `folders/{folders_id}/sources/{source_id}` + `projects/{projects_id}/sources/{source_id}` + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}` + `folders/{folders_id}/sources/{source_id}/locations/{location_id}` + `projects/{projects_id}/sources/{source_id}/locations/{location_id}`", "type": "string" }, "parentDisplayName": { - "description": "Output only. The human readable display name of the finding source such as \"Event Threat Detection\" or \"Security Health Analytics\".", "readOnly": true, "type": "string" }, "policyViolationSummary": { - "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary", - "description": "PolicyViolationSummary associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary" }, "processes": { - "description": "Represents operating system processes associated with the Finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Process" }, "type": "array" }, "resourceName": { - "description": "Immutable. For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string.", "type": "string" }, "secret": { - "$ref": "GoogleCloudSecuritycenterV2Secret", - "description": "Secret associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Secret" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV2SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "securityPosture": { - "$ref": "GoogleCloudSecuritycenterV2SecurityPosture", - "description": "The security posture associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityPosture" }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -6681,11 +5679,11 @@ "LOW" ], "enumDescriptions": [ - "This value is used for findings when a source doesn't write a severity value.", - "Vulnerability: A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. Threat: Indicates a threat that is able to access, modify, or delete data or execute unauthorized code within existing resources.", - "Vulnerability: A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities in order to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. Threat: Indicates a threat that is able to create new computational resources in an environment but not able to access data or execute code in existing resources.", - "Vulnerability: A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. Threat: Indicates a threat that is able to cause operational impact but may not access data or execute unauthorized code.", - "Vulnerability: A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. Threat: Indicates a threat that has obtained minimal access to an environment but is not able to access data, execute code, or create resources." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -6693,60 +5691,50 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "Output only. The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "readOnly": true, "type": "string" }, "toxicCombination": { - "$ref": "GoogleCloudSecuritycenterV2ToxicCombination", - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests." + "$ref": "GoogleCloudSecuritycenterV2ToxicCombination" }, "vertexAi": { - "$ref": "GoogleCloudSecuritycenterV2VertexAi", - "description": "VertexAi associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2VertexAi" }, "vulnerability": { - "$ref": "GoogleCloudSecuritycenterV2Vulnerability", - "description": "Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "GoogleCloudSecuritycenterV2Vulnerability" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "GoogleCloudSecuritycenterV2Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Framework": { - "description": "Compliance framework associated with the finding.", "id": "GoogleCloudSecuritycenterV2Framework", "properties": { "category": { - "description": "Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads", "items": { "enum": [ "FRAMEWORK_CATEGORY_UNSPECIFIED", @@ -6757,43 +5745,39 @@ "CUSTOM_FRAMEWORK" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Security Benchmarks framework", - "Assured Workloads framework", - "Data Security framework", - "Google Best Practices framework", - "A user-created framework" + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "controls": { - "description": "The controls associated with the framework.", "items": { "$ref": "GoogleCloudSecuritycenterV2Control" }, "type": "array" }, "displayName": { - "description": "Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework", "type": "string" }, "name": { - "description": "Name of the framework associated with the finding", "type": "string" }, "type": { - "description": "Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture)", "enum": [ "FRAMEWORK_TYPE_UNSPECIFIED", "FRAMEWORK_TYPE_BUILT_IN", "FRAMEWORK_TYPE_CUSTOM" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The framework is a built-in framework if it is created and managed by GCP.", - "The framework is a custom framework if it is created and managed by the user." + "", + "", + "" ], "type": "string" } @@ -6801,35 +5785,30 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Geolocation": { - "description": "Represents a geographical location for a given access.", "id": "GoogleCloudSecuritycenterV2Geolocation", "properties": { "regionCode": { - "description": "A CLDR.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2GroupMembership": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way.", "id": "GoogleCloudSecuritycenterV2GroupMembership", "properties": { "groupId": { - "description": "ID of the group.", "type": "string" }, "groupType": { - "description": "Type of group.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "GROUP_TYPE_TOXIC_COMBINATION", "GROUP_TYPE_CHOKEPOINT" ], "enumDescriptions": [ - "Default value.", - "Group represents a toxic combination.", - "Group represents a chokepoint." + "", + "", + "" ], "type": "string" } @@ -6837,76 +5816,64 @@ "type": "object" }, "GoogleCloudSecuritycenterV2HttpResponse": { - "description": "The http response returned by the web application.", "id": "GoogleCloudSecuritycenterV2HttpResponse", "properties": { "path": { - "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", "type": "string" }, "statusCode": { - "description": "The http response code returned by the web application, for example, 200.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IamBinding": { - "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "GoogleCloudSecuritycenterV2IamBinding", "properties": { "action": { - "description": "The action that was performed on a Binding.", "enum": [ "ACTION_UNSPECIFIED", "ADD", "REMOVE" ], "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." + "", + "", + "" ], "type": "string" }, "member": { - "description": "A single identity requesting access for a Cloud Platform resource, for example, \"foo@google.com\".", "type": "string" }, "role": { - "description": "Role that is assigned to \"members\". For example, \"roles/viewer\", \"roles/editor\", or \"roles/owner\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Indicator": { - "description": "Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).", "id": "GoogleCloudSecuritycenterV2Indicator", "properties": { "domains": { - "description": "List of domains associated to the Finding.", "items": { "type": "string" }, "type": "array" }, "ipAddresses": { - "description": "The list of IP addresses that are associated with the finding.", "items": { "type": "string" }, "type": "array" }, "signatures": { - "description": "The list of matched signatures indicating that the given process is present in the environment.", "items": { "$ref": "GoogleCloudSecuritycenterV2ProcessSignature" }, "type": "array" }, "uris": { - "description": "The list of URIs associated to the Findings.", "items": { "type": "string" }, @@ -6916,84 +5883,70 @@ "type": "object" }, "GoogleCloudSecuritycenterV2InfoType": { - "description": "Type of information detected by the API.", "id": "GoogleCloudSecuritycenterV2InfoType", "properties": { "name": { - "description": "Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64}`.", "type": "string" }, "sensitivityScore": { - "$ref": "GoogleCloudSecuritycenterV2SensitivityScore", - "description": "Optional custom sensitivity for this InfoType. This only applies to data profiling." + "$ref": "GoogleCloudSecuritycenterV2SensitivityScore" }, "version": { - "description": "Optional version name for this InfoType.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IpRule": { - "description": "IP rule information.", "id": "GoogleCloudSecuritycenterV2IpRule", "properties": { "portRanges": { - "description": "Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number.", "items": { "$ref": "GoogleCloudSecuritycenterV2PortRange" }, "type": "array" }, "protocol": { - "description": "The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IpRules": { - "description": "IP rules associated with the finding.", "id": "GoogleCloudSecuritycenterV2IpRules", "properties": { "allowed": { - "$ref": "GoogleCloudSecuritycenterV2Allowed", - "description": "Tuple with allowed rules." + "$ref": "GoogleCloudSecuritycenterV2Allowed" }, "denied": { - "$ref": "GoogleCloudSecuritycenterV2Denied", - "description": "Tuple with denied rules." + "$ref": "GoogleCloudSecuritycenterV2Denied" }, "destinationIpRanges": { - "description": "If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, "type": "array" }, "direction": { - "description": "The direction that the rule is applicable to, one of ingress or egress.", "enum": [ "DIRECTION_UNSPECIFIED", "INGRESS", "EGRESS" ], "enumDescriptions": [ - "Unspecified direction value.", - "Ingress direction value.", - "Egress direction value." + "", + "", + "" ], "type": "string" }, "exposedServices": { - "description": "Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.", "items": { "type": "string" }, "type": "array" }, "sourceIpRanges": { - "description": "If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, @@ -7003,37 +5956,30 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Issue": { - "description": "Security Command Center Issue.", "id": "GoogleCloudSecuritycenterV2Issue", "properties": { "createTime": { - "description": "Output only. The time the issue was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "The description of the issue in Markdown format.", "type": "string" }, "detection": { - "description": "The finding category or rule name that generated the issue.", "type": "string" }, "domains": { - "description": "The domains of the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueDomain" }, "type": "array" }, "exposureScore": { - "description": "The exposure score of the issue.", "format": "double", "type": "number" }, "issueType": { - "description": "The type of the issue.", "enum": [ "ISSUE_TYPE_UNSPECIFIED", "CHOKEPOINT", @@ -7041,60 +5987,51 @@ "INSIGHT" ], "enumDescriptions": [ - "Unspecified issue type.", - "Chokepoint issue type.", - "Toxic combination issue type.", - "Insight issue type." + "", + "", + "", + "" ], "type": "string" }, "lastObservationTime": { - "description": "The time the issue was last observed.", "format": "google-datetime", "type": "string" }, "mute": { - "$ref": "GoogleCloudSecuritycenterV2IssueMute", - "description": "The mute information of the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueMute" }, "name": { - "description": "Identifier. The name of the issue. Format: organizations/{organization}/locations/{location}/issues/{issue}", "type": "string" }, "primaryResource": { - "$ref": "GoogleCloudSecuritycenterV2IssueResource", - "description": "The primary resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResource" }, "relatedFindings": { - "description": "The findings related to the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueFinding" }, "type": "array" }, "remediations": { - "description": "Approaches to remediate the issue in Markdown format.", "items": { "type": "string" }, "type": "array" }, "secondaryResources": { - "description": "Additional resources associated with the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResource" }, "type": "array" }, "securityContexts": { - "description": "The security context of the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContext" }, "type": "array" }, "severity": { - "description": "The severity of the issue.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -7103,31 +6040,29 @@ "LOW" ], "enumDescriptions": [ - "Unspecified severity.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" }, "state": { - "description": "Output only. The state of the issue.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "Active state.", - "Inactive state." + "", + "", + "" ], "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The time the issue was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -7136,11 +6071,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueDomain": { - "description": "The domains of an issue.", "id": "GoogleCloudSecuritycenterV2IssueDomain", "properties": { "domainCategory": { - "description": "The domain category of the issue.", "enum": [ "DOMAIN_CATEGORY_UNSPECIFIED", "AI", @@ -7152,14 +6085,14 @@ "THREAT" ], "enumDescriptions": [ - "Unspecified domain category.", - "Issues in the AI domain.", - "Issues in the code domain.", - "Issues in the container domain.", - "Issues in the data domain.", - "Issues in the identity and access domain.", - "Issues in the vulnerability domain.", - "Issues in the threat domain." + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -7167,75 +6100,62 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueFinding": { - "description": "Finding related to an issue.", "id": "GoogleCloudSecuritycenterV2IssueFinding", "properties": { "cve": { - "$ref": "GoogleCloudSecuritycenterV2IssueFindingCve", - "description": "The CVE of the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueFindingCve" }, "name": { - "description": "The name of the finding.", "type": "string" }, "securityBulletin": { - "$ref": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin", - "description": "The security bulletin of the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueFindingCve": { - "description": "The CVE of the finding.", "id": "GoogleCloudSecuritycenterV2IssueFindingCve", "properties": { "name": { - "description": "The CVE name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin": { - "description": "The security bulletin of the finding.", "id": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin", "properties": { "name": { - "description": "The security bulletin name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueMute": { - "description": "The mute information of the issue.", "id": "GoogleCloudSecuritycenterV2IssueMute", "properties": { "muteInitiator": { - "description": "The email address of the user who last changed the mute state of the issue.", "type": "string" }, "muteReason": { - "description": "The user-provided reason for muting the issue.", "type": "string" }, "muteState": { - "description": "Output only. The mute state of the issue.", "enum": [ "MUTE_STATE_UNSPECIFIED", "NOT_MUTED", "MUTED" ], "enumDescriptions": [ - "Unspecified mute state.", - "Not muted.", - "Muted." + "", + "", + "" ], "readOnly": true, "type": "string" }, "muteUpdateTime": { - "description": "The time the issue was muted.", "format": "google-datetime", "type": "string" } @@ -7243,35 +6163,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResource": { - "description": "A resource associated with the an issue.", "id": "GoogleCloudSecuritycenterV2IssueResource", "properties": { "adcApplication": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication" }, "adcApplicationTemplate": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplication", - "description": "The AppHub application associated with the resource, if any. Only populated for the primary resource." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplication" }, "awsMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata", - "description": "The AWS metadata of the resource associated with the issue. Only populated for AWS resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata" }, "azureMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata", - "description": "The Azure metadata of the resource associated with the issue. Only populated for Azure resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata" }, "cloudProvider": { - "description": "The cloud provider of the resource associated with the issue.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD", @@ -7279,112 +6191,92 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The resource-type specific display name of the resource associated with the issue.", "type": "string" }, "googleCloudMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata", - "description": "The Google Cloud metadata of the resource associated with the issue. Only populated for Google Cloud resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata" }, "name": { - "description": "The full resource name of the resource associated with the issue.", "type": "string" }, "type": { - "description": "The type of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplication": { - "description": "The AppHub application associated with the resource, if any.", "id": "GoogleCloudSecuritycenterV2IssueResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, @@ -7394,22 +6286,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -7418,11 +6306,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -7430,11 +6318,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -7443,11 +6329,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -7455,93 +6341,75 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata": { - "description": "The AWS metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata", "properties": { "account": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount", - "description": "The AWS account of the resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount": { - "description": "The AWS account of the resource associated with the issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount", "properties": { "id": { - "description": "The AWS account ID of the resource associated with the issue.", "type": "string" }, "name": { - "description": "The AWS account name of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata": { - "description": "The Azure metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata", "properties": { "subscription": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription", - "description": "The Azure subscription of the resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription": { - "description": "The Azure subscription of the resource associated with the issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription", "properties": { "displayName": { - "description": "The Azure subscription display name of the resource associated with the issue.", "type": "string" }, "id": { - "description": "The Azure subscription ID of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata": { - "description": "Google Cloud metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata", "properties": { "projectId": { - "description": "The project ID that the resource associated with the issue belongs to.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContext": { - "description": "Security context associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContext", "properties": { "aggregatedCount": { - "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount", - "description": "The aggregated count of the security context." + "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount" }, "context": { - "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextContext", - "description": "The context of the security context." + "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextContext" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount": { - "description": "Aggregated count of a security context.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount", "properties": { "key": { - "description": "Aggregation key.", "type": "string" }, "value": { - "description": "Aggregation value.", "format": "int32", "type": "integer" } @@ -7549,15 +6417,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContextContext": { - "description": "Context of a security context.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContextContext", "properties": { "type": { - "description": "Context type.", "type": "string" }, "values": { - "description": "Context values.", "items": { "type": "string" }, @@ -7567,24 +6432,19 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Job": { - "description": "Describes a job", "id": "GoogleCloudSecuritycenterV2Job", "properties": { "errorCode": { - "description": "Optional. If the job did not complete successfully, this field describes why.", "format": "int32", "type": "integer" }, "location": { - "description": "Optional. Gives the location where the job ran, such as `US` or `europe-west1`", "type": "string" }, "name": { - "description": "The fully-qualified name for a job. e.g. `projects//jobs/`", "type": "string" }, "state": { - "description": "Output only. State of the job, such as `RUNNING` or `PENDING`.", "enum": [ "JOB_STATE_UNSPECIFIED", "PENDING", @@ -7593,11 +6453,11 @@ "FAILED" ], "enumDescriptions": [ - "Unspecified represents an unknown state and should not be used.", - "Job is scheduled and pending for run", - "Job in progress", - "Job has completed with success", - "Job has completed but with failure" + "", + "", + "", + "", + "" ], "readOnly": true, "type": "string" @@ -7606,96 +6466,78 @@ "type": "object" }, "GoogleCloudSecuritycenterV2KernelRootkit": { - "description": "Kernel mode rootkit signatures.", "id": "GoogleCloudSecuritycenterV2KernelRootkit", "properties": { "name": { - "description": "Rootkit name, when available.", "type": "string" }, "unexpectedCodeModification": { - "description": "True if unexpected modifications of kernel code memory are present.", "type": "boolean" }, "unexpectedFtraceHandler": { - "description": "True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedInterruptHandler": { - "description": "True if interrupt handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKernelCodePages": { - "description": "True if kernel code pages that are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKprobeHandler": { - "description": "True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedProcessesInRunqueue": { - "description": "True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list.", "type": "boolean" }, "unexpectedReadOnlyDataModification": { - "description": "True if unexpected modifications of kernel read-only data memory are present.", "type": "boolean" }, "unexpectedSystemCallHandler": { - "description": "True if system call handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Kubernetes": { - "description": "Kubernetes-related attributes.", "id": "GoogleCloudSecuritycenterV2Kubernetes", "properties": { "accessReviews": { - "description": "Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2AccessReview" }, "type": "array" }, "bindings": { - "description": "Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV2Binding" }, "type": "array" }, "nodePools": { - "description": "GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available.", "items": { "$ref": "GoogleCloudSecuritycenterV2NodePool" }, "type": "array" }, "nodes": { - "description": "Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information.", "items": { "$ref": "GoogleCloudSecuritycenterV2Node" }, "type": "array" }, "objects": { - "description": "Kubernetes objects related to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Object" }, "type": "array" }, "pods": { - "description": "Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod.", "items": { "$ref": "GoogleCloudSecuritycenterV2Pod" }, "type": "array" }, "roles": { - "description": "Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV2Role" }, @@ -7705,52 +6547,42 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Label": { - "description": "Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).", "id": "GoogleCloudSecuritycenterV2Label", "properties": { "name": { - "description": "Name of the label.", "type": "string" }, "value": { - "description": "Value that corresponds to the label's name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2LoadBalancer": { - "description": "Contains information related to the load balancer associated with the finding.", "id": "GoogleCloudSecuritycenterV2LoadBalancer", "properties": { "name": { - "description": "The name of the load balancer associated with the finding.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2LogEntry": { - "description": "An individual entry in a log.", "id": "GoogleCloudSecuritycenterV2LogEntry", "properties": { "cloudLoggingEntry": { - "$ref": "GoogleCloudSecuritycenterV2CloudLoggingEntry", - "description": "An individual entry in a log stored in Cloud Logging." + "$ref": "GoogleCloudSecuritycenterV2CloudLoggingEntry" } }, "type": "object" }, "GoogleCloudSecuritycenterV2MemoryHashSignature": { - "description": "A signature corresponding to memory page hashes.", "id": "GoogleCloudSecuritycenterV2MemoryHashSignature", "properties": { "binaryFamily": { - "description": "The binary family.", "type": "string" }, "detections": { - "description": "The list of memory hash detections contributing to the binary family match.", "items": { "$ref": "GoogleCloudSecuritycenterV2Detection" }, @@ -7760,11 +6592,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2MitreAttack": { - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org", "id": "GoogleCloudSecuritycenterV2MitreAttack", "properties": { "additionalTactics": { - "description": "Additional MITRE ATT&CK tactics related to this finding, if any.", "items": { "enum": [ "TACTIC_UNSPECIFIED", @@ -7784,28 +6614,27 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "additionalTechniques": { - "description": "Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -7949,152 +6778,151 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "primaryTactic": { - "description": "The MITRE ATT&CK tactic most closely represented by this finding, if any.", "enum": [ "TACTIC_UNSPECIFIED", "RECONNAISSANCE", @@ -8113,26 +6941,25 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "primaryTechniques": { - "description": "The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -8276,210 +7103,199 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "version": { - "description": "The MITRE ATT&CK version referenced by the above fields. E.g. \"8\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2MuteConfig": { - "description": "A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings.", "id": "GoogleCloudSecuritycenterV2MuteConfig", "properties": { "createTime": { - "description": "Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The resource name of the Cloud KMS `CryptoKey` used to encrypt this configuration data, if CMEK was enabled during Security Command Center activation.", "readOnly": true, "type": "string" }, "description": { - "description": "A description of the mute config.", "type": "string" }, "expiryTime": { - "description": "Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings.", "format": "google-datetime", "type": "string" }, "filter": { - "description": "Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:`", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. This field will be ignored if provided on config creation. The following list shows some examples of the format: + `organizations/{organization}/muteConfigs/{mute_config}` + `organizations/{organization}locations/{location}//muteConfigs/{mute_config}` + `folders/{folder}/muteConfigs/{mute_config}` + `folders/{folder}/locations/{location}/muteConfigs/{mute_config}` + `projects/{project}/muteConfigs/{mute_config}` + `projects/{project}/locations/{location}/muteConfigs/{mute_config}`", "type": "string" }, "type": { - "description": "Required. The type of the mute config, which determines what type of mute state the config affects. Immutable after creation.", "enum": [ "MUTE_CONFIG_TYPE_UNSPECIFIED", "STATIC", "DYNAMIC" ], "enumDescriptions": [ - "Unused.", - "A static mute config, which sets the static mute state of future matching findings to muted. Once the static mute state has been set, finding or config modifications will not affect the state.", - "A dynamic mute config, which is applied to existing and future matching findings, setting their dynamic mute state to \"muted\". If the config is updated or deleted, or a matching finding is updated, such that the finding doesn't match the config, the config will be removed from the finding, and the finding's dynamic mute state may become \"unmuted\" (unless other configs still match)." + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -8488,55 +7304,45 @@ "type": "object" }, "GoogleCloudSecuritycenterV2MuteInfo": { - "description": "Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules.", "id": "GoogleCloudSecuritycenterV2MuteInfo", "properties": { "dynamicMuteRecords": { - "description": "The list of dynamic mute rules that currently match the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DynamicMuteRecord" }, "type": "array" }, "staticMute": { - "$ref": "GoogleCloudSecuritycenterV2StaticMute", - "description": "If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute." + "$ref": "GoogleCloudSecuritycenterV2StaticMute" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Network": { - "description": "Contains information about a VPC network associated with the finding.", "id": "GoogleCloudSecuritycenterV2Network", "properties": { "name": { - "description": "The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Node": { - "description": "Kubernetes nodes associated with the finding.", "id": "GoogleCloudSecuritycenterV2Node", "properties": { "name": { - "description": "[Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2NodePool": { - "description": "Provides GKE node pool information.", "id": "GoogleCloudSecuritycenterV2NodePool", "properties": { "name": { - "description": "Kubernetes node pool name.", "type": "string" }, "nodes": { - "description": "Nodes associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Node" }, @@ -8546,196 +7352,157 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Notebook": { - "description": "Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding.", "id": "GoogleCloudSecuritycenterV2Notebook", "properties": { "lastAuthor": { - "description": "The user ID of the latest author to modify the notebook.", "type": "string" }, "name": { - "description": "The name of the notebook.", "type": "string" }, "notebookUpdateTime": { - "description": "The most recent time the notebook was updated.", "format": "google-datetime", "type": "string" }, "service": { - "description": "The source notebook service, for example, \"Colab Enterprise\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2NotificationMessage": { - "description": "Cloud SCC's Notification", "id": "GoogleCloudSecuritycenterV2NotificationMessage", "properties": { "finding": { - "$ref": "GoogleCloudSecuritycenterV2Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "GoogleCloudSecuritycenterV2Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV2Resource", - "description": "The Cloud resource tied to this notification's Finding." + "$ref": "GoogleCloudSecuritycenterV2Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Object": { - "description": "Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.", "id": "GoogleCloudSecuritycenterV2Object", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "group": { - "description": "Kubernetes object group, such as \"policy.k8s.io/v1\".", "type": "string" }, "kind": { - "description": "Kubernetes object kind, such as \"Namespace\".", "type": "string" }, "name": { - "description": "Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.", "type": "string" }, "ns": { - "description": "Kubernetes object namespace. Must be a valid DNS label. Named \"ns\" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2OrgPolicy": { - "description": "Contains information about the org policies associated with the finding.", "id": "GoogleCloudSecuritycenterV2OrgPolicy", "properties": { "name": { - "description": "Identifier. The resource name of the org policy. Example: \"organizations/{organization_id}/policies/{constraint_name}\"", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Package": { - "description": "Package is a generic definition of a package.", "id": "GoogleCloudSecuritycenterV2Package", "properties": { "cpeUri": { - "description": "The CPE URI where the vulnerability was detected.", "type": "string" }, "packageName": { - "description": "The name of the package where the vulnerability was detected.", "type": "string" }, "packageType": { - "description": "Type of package, for example, os, maven, or go.", "type": "string" }, "packageVersion": { - "description": "The version of the package.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Pipeline": { - "description": "Vertex AI training pipeline associated with the finding.", "id": "GoogleCloudSecuritycenterV2Pipeline", "properties": { "displayName": { - "description": "The user-defined display name of pipeline, e.g. plants-classification", "type": "string" }, "name": { - "description": "Resource name of the pipeline, e.g. projects/{project}/locations/{location}/trainingPipelines/5253428229225578496", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Pod": { - "description": "A Kubernetes Pod.", "id": "GoogleCloudSecuritycenterV2Pod", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "labels": { - "description": "Pod labels. For Kubernetes containers, these are applied to the container.", "items": { "$ref": "GoogleCloudSecuritycenterV2Label" }, "type": "array" }, "name": { - "description": "Kubernetes Pod name.", "type": "string" }, "ns": { - "description": "Kubernetes Pod namespace.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2PolicyDriftDetails": { - "description": "The policy field that violates the deployed posture and its expected and detected values.", "id": "GoogleCloudSecuritycenterV2PolicyDriftDetails", "properties": { "detectedValue": { - "description": "The detected value that violates the deployed posture, for example, `false` or `allowed_values={\"projects/22831892\"}`.", "type": "string" }, "expectedValue": { - "description": "The value of this field that was configured in a posture, for example, `true` or `allowed_values={\"projects/29831892\"}`.", "type": "string" }, "field": { - "description": "The name of the updated field, for example constraint.implementation.policy_rules[0].enforce", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2PolicyViolationSummary": { - "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", "id": "GoogleCloudSecuritycenterV2PolicyViolationSummary", "properties": { "conformantResourcesCount": { - "description": "Total number of child resources that conform to the policy.", "format": "int64", "type": "string" }, "evaluationErrorsCount": { - "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", "format": "int64", "type": "string" }, "outOfScopeResourcesCount": { - "description": "Total count of child resources which were not in scope for evaluation.", "format": "int64", "type": "string" }, "policyViolationsCount": { - "description": "Count of child resources in violation of the policy.", "format": "int64", "type": "string" } @@ -8743,16 +7510,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV2PortRange": { - "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "GoogleCloudSecuritycenterV2PortRange", "properties": { "max": { - "description": "Maximum port value.", "format": "int64", "type": "string" }, "min": { - "description": "Minimum port value.", "format": "int64", "type": "string" } @@ -8760,62 +7524,50 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Process": { - "description": "Represents an operating system process.", "id": "GoogleCloudSecuritycenterV2Process", "properties": { "args": { - "description": "Process arguments as JSON encoded strings.", "items": { "type": "string" }, "type": "array" }, "argumentsTruncated": { - "description": "True if `args` is incomplete.", "type": "boolean" }, "binary": { - "$ref": "GoogleCloudSecuritycenterV2File", - "description": "File information for the process executable." + "$ref": "GoogleCloudSecuritycenterV2File" }, "envVariables": { - "description": "Process environment variables.", "items": { "$ref": "GoogleCloudSecuritycenterV2EnvironmentVariable" }, "type": "array" }, "envVariablesTruncated": { - "description": "True if `env_variables` is incomplete.", "type": "boolean" }, "libraries": { - "description": "File information for libraries loaded by the process.", "items": { "$ref": "GoogleCloudSecuritycenterV2File" }, "type": "array" }, "name": { - "description": "The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.", "type": "string" }, "parentPid": { - "description": "The parent process ID.", "format": "int64", "type": "string" }, "pid": { - "description": "The process ID.", "format": "int64", "type": "string" }, "script": { - "$ref": "GoogleCloudSecuritycenterV2File", - "description": "When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter." + "$ref": "GoogleCloudSecuritycenterV2File" }, "userId": { - "description": "The ID of the user that executed the process. E.g. If this is the root user this will always be 0.", "format": "int64", "type": "string" } @@ -8823,70 +7575,58 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ProcessSignature": { - "description": "Indicates what signature matched this process.", "id": "GoogleCloudSecuritycenterV2ProcessSignature", "properties": { "memoryHashSignature": { - "$ref": "GoogleCloudSecuritycenterV2MemoryHashSignature", - "description": "Signature indicating that a binary family was matched." + "$ref": "GoogleCloudSecuritycenterV2MemoryHashSignature" }, "signatureType": { - "description": "Describes the type of resource associated with the signature.", "enum": [ "SIGNATURE_TYPE_UNSPECIFIED", "SIGNATURE_TYPE_PROCESS", "SIGNATURE_TYPE_FILE" ], "enumDescriptions": [ - "The default signature type.", - "Used for signatures concerning processes.", - "Used for signatures concerning disks." + "", + "", + "" ], "type": "string" }, "yaraRuleSignature": { - "$ref": "GoogleCloudSecuritycenterV2YaraRuleSignature", - "description": "Signature indicating that a YARA rule was matched." + "$ref": "GoogleCloudSecuritycenterV2YaraRuleSignature" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Reference": { - "description": "Additional Links", "id": "GoogleCloudSecuritycenterV2Reference", "properties": { "source": { - "description": "Source of the reference e.g. NVD", "type": "string" }, "uri": { - "description": "Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Requests": { - "description": "Information about the requests relevant to the finding.", "id": "GoogleCloudSecuritycenterV2Requests", "properties": { "longTermAllowed": { - "description": "Allowed RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "longTermDenied": { - "description": "Denied RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "ratio": { - "description": "For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term.", "format": "double", "type": "number" }, "shortTermAllowed": { - "description": "Allowed RPS (requests per second) in the short term.", "format": "int32", "type": "integer" } @@ -8894,35 +7634,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV2Resource", "properties": { "adcApplication": { - "$ref": "GoogleCloudSecuritycenterV2AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcApplication" }, "adcApplicationTemplate": { - "$ref": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplication" }, "awsMetadata": { - "$ref": "GoogleCloudSecuritycenterV2AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AwsMetadata" }, "azureMetadata": { - "$ref": "GoogleCloudSecuritycenterV2AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the finding is from.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -8930,91 +7662,74 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "gcpMetadata": { - "$ref": "GcpMetadata", - "description": "The Google Cloud metadata associated with the finding." + "$ref": "GcpMetadata" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourcePath": { - "$ref": "GoogleCloudSecuritycenterV2ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "GoogleCloudSecuritycenterV2ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/projects/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The service or resource provider associated with the resource.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplication": { - "description": "The App Hub Application associated with the finding's resource.", "id": "GoogleCloudSecuritycenterV2ResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, @@ -9024,22 +7739,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -9048,11 +7759,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -9060,11 +7771,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -9073,11 +7782,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -9085,11 +7794,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourcePath": { - "description": "Represents the path of resources leading up to the resource this finding is about.", "id": "GoogleCloudSecuritycenterV2ResourcePath", "properties": { "nodes": { - "description": "The list of nodes that make the up resource path, ordered from lowest level to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourcePathNode" }, @@ -9099,19 +7806,15 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourcePathNode": { - "description": "A node within the resource path. Each node represents a resource within the resource hierarchy.", "id": "GoogleCloudSecuritycenterV2ResourcePathNode", "properties": { "displayName": { - "description": "The display name of the resource this node represents.", "type": "string" }, "id": { - "description": "The ID of the resource this node represents.", "type": "string" }, "nodeType": { - "description": "The type of resource this node represents.", "enum": [ "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED", "GCP_ORGANIZATION", @@ -9125,16 +7828,16 @@ "AZURE_RESOURCE_GROUP" ], "enumDescriptions": [ - "Node type is unspecified.", - "The node represents a Google Cloud organization.", - "The node represents a Google Cloud folder.", - "The node represents a Google Cloud project.", - "The node represents an AWS organization.", - "The node represents an AWS organizational unit.", - "The node represents an AWS account.", - "The node represents an Azure management group.", - "The node represents an Azure subscription.", - "The node represents an Azure resource group." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -9142,11 +7845,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceValueConfig": { - "description": "A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations.", "id": "GoogleCloudSecuritycenterV2ResourceValueConfig", "properties": { "cloudProvider": { - "description": "Cloud provider this configuration applies to", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -9154,40 +7855,34 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Timestamp this resource value configuration was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Description of the resource value configuration.", "type": "string" }, "name": { - "description": "Identifier. Name for the resource value configuration", "type": "string" }, "resourceLabelsSelector": { "additionalProperties": { "type": "string" }, - "description": "List of resource labels to search for, evaluated with `AND`. For example, \"resource_labels_selector\": {\"key\": \"value\", \"env\": \"prod\"} will match resources with labels \"key\": \"value\" `AND` \"env\": \"prod\" https://cloud.google.com/resource-manager/docs/creating-managing-labels", "type": "object" }, "resourceType": { - "description": "Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, \"storage.googleapis.com/Bucket\" with resource_value \"HIGH\" will apply \"HIGH\" value only to \"storage.googleapis.com/Bucket\" resources.", "type": "string" }, "resourceValue": { - "description": "Resource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -9196,31 +7891,27 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "Project or folder to scope this configuration to. For example, \"project/456\" would apply this configuration only to resources in \"project/456\" scope and will be checked with `AND` of other resources.", "type": "string" }, "sensitiveDataProtectionMapping": { - "$ref": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping", - "description": "A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. \"bigquery.googleapis.com/Dataset\"." + "$ref": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping" }, "tagValues": { - "description": "Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of \"tagValues/123\". Example: `[ \"tagValues/123\", \"tagValues/456\", \"tagValues/789\" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing", "items": { "type": "string" }, "type": "array" }, "updateTime": { - "description": "Output only. Timestamp this resource value configuration was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -9229,90 +7920,74 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Role": { - "description": "Kubernetes Role or ClusterRole.", "id": "GoogleCloudSecuritycenterV2Role", "properties": { "kind": { - "description": "Role type.", "enum": [ "KIND_UNSPECIFIED", "ROLE", "CLUSTER_ROLE" ], "enumDescriptions": [ - "Role type is not specified.", - "Kubernetes Role.", - "Kubernetes ClusterRole." + "", + "", + "" ], "type": "string" }, "name": { - "description": "Role name.", "type": "string" }, "ns": { - "description": "Role namespace.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Secret": { - "description": "Details about a secret or credential associated with the finding.", "id": "GoogleCloudSecuritycenterV2Secret", "properties": { "environmentVariable": { - "$ref": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable", - "description": "The environment variable containing the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable" }, "filePath": { - "$ref": "GoogleCloudSecuritycenterV2SecretFilePath", - "description": "The file containing the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretFilePath" }, "status": { - "$ref": "GoogleCloudSecuritycenterV2SecretStatus", - "description": "The status of the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretStatus" }, "type": { - "description": "The type of secret, for example, GCP_API_KEY.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretEnvironmentVariable": { - "description": "Environment variable containing the secret.", "id": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable", "properties": { "key": { - "description": "Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretFilePath": { - "description": "File path containing the secret.", "id": "GoogleCloudSecuritycenterV2SecretFilePath", "properties": { "path": { - "description": "Path to the file.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretStatus": { - "description": "The status of the secret.", "id": "GoogleCloudSecuritycenterV2SecretStatus", "properties": { "lastUpdatedTime": { - "description": "Time that the secret was found.", "format": "google-datetime", "type": "string" }, "validity": { - "description": "The validity of the secret.", "enum": [ "SECRET_VALIDITY_UNSPECIFIED", "SECRET_VALIDITY_UNSUPPORTED", @@ -9321,11 +7996,11 @@ "SECRET_VALIDITY_VALID" ], "enumDescriptions": [ - "Default value; no validation was attempted.", - "There is no mechanism to validate the secret.", - "Validation is supported but the validation failed.", - "The secret is confirmed to be invalid.", - "The secret is confirmed to be valid." + "", + "", + "", + "", + "" ], "type": "string" } @@ -9333,114 +8008,91 @@ "type": "object" }, "GoogleCloudSecuritycenterV2SecurityBulletin": { - "description": "SecurityBulletin are notifications of vulnerabilities of Google products.", "id": "GoogleCloudSecuritycenterV2SecurityBulletin", "properties": { "bulletinId": { - "description": "ID of the bulletin corresponding to the vulnerability.", "type": "string" }, "submissionTime": { - "description": "Submission time of this Security Bulletin.", "format": "google-datetime", "type": "string" }, "suggestedUpgradeVersion": { - "description": "This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV2SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. The following list shows some examples: + `organizations/{organization_id}/assets/{asset_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks` + `folders/{folder_id}/assets/{asset_id}/securityMarks` + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `folders/{folder_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks` + `projects/{project_number}/assets/{asset_id}/securityMarks` + `projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks` + `projects/{project_number}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name The following list shows some examples: + `organizations/{organization_id}/assets/{asset_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityPolicy": { - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding.", "id": "GoogleCloudSecuritycenterV2SecurityPolicy", "properties": { "name": { - "description": "The name of the Google Cloud Armor security policy, for example, \"my-security-policy\".", "type": "string" }, "preview": { - "description": "Whether or not the associated rule or policy is in preview mode.", "type": "boolean" }, "type": { - "description": "The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityPosture": { - "description": "Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud.", "id": "GoogleCloudSecuritycenterV2SecurityPosture", "properties": { "changedPolicy": { - "description": "The name of the updated policy, for example, `projects/{project_id}/policies/{constraint_name}`.", "type": "string" }, "name": { - "description": "Name of the posture, for example, `CIS-Posture`.", "type": "string" }, "policy": { - "description": "The ID of the updated policy, for example, `compute-policy-1`.", "type": "string" }, "policyDriftDetails": { - "description": "The details about a change in an updated policy that violates the deployed posture.", "items": { "$ref": "GoogleCloudSecuritycenterV2PolicyDriftDetails" }, "type": "array" }, "policySet": { - "description": "The name of the updated policy set, for example, `cis-policyset`.", "type": "string" }, "postureDeployment": { - "description": "The name of the posture deployment, for example, `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.", "type": "string" }, "postureDeploymentResource": { - "description": "The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number}`.", "type": "string" }, "revisionId": { - "description": "The version of the posture, for example, `c7cfa2a8`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping": { - "description": "Resource value mapping for Sensitive Data Protection findings If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration.", "id": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping", "properties": { "highSensitivityMapping": { - "description": "Resource value mapping for high-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -9449,16 +8101,15 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "mediumSensitivityMapping": { - "description": "Resource value mapping for medium-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -9467,11 +8118,11 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" } @@ -9479,11 +8130,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2SensitivityScore": { - "description": "Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive.", "id": "GoogleCloudSecuritycenterV2SensitivityScore", "properties": { "score": { - "description": "The sensitivity score applied to the resource.", "enum": [ "SENSITIVITY_SCORE_LEVEL_UNSPECIFIED", "SENSITIVITY_LOW", @@ -9492,11 +8141,11 @@ "SENSITIVITY_HIGH" ], "enumDescriptions": [ - "Unused.", - "No sensitive information detected. The resource isn't publicly accessible.", - "Unable to determine sensitivity.", - "Medium risk. Contains personally identifiable information (PII), potentially sensitive data, or fields with free-text data that are at a higher risk of having intermittent sensitive data. Consider limiting access.", - "High risk. Sensitive personally identifiable information (SPII) can be present. Exfiltration of data can lead to user data loss. Re-identification of users might be possible. Consider limiting usage and or removing SPII." + "", + "", + "", + "", + "" ], "type": "string" } @@ -9504,31 +8153,25 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo": { - "description": "Identity delegation history of an authenticated service account.", "id": "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo", "properties": { "principalEmail": { - "description": "The email address of a Google account.", "type": "string" }, "principalSubject": { - "description": "A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name}[{subject}]`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2StaticMute": { - "description": "Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly.", "id": "GoogleCloudSecuritycenterV2StaticMute", "properties": { "applyTime": { - "description": "When the static mute was applied.", "format": "google-datetime", "type": "string" }, "state": { - "description": "The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -9536,10 +8179,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -9547,11 +8190,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Subject": { - "description": "Represents a Kubernetes subject.", "id": "GoogleCloudSecuritycenterV2Subject", "properties": { "kind": { - "description": "Authentication type for the subject.", "enum": [ "AUTH_TYPE_UNSPECIFIED", "USER", @@ -9559,67 +8200,55 @@ "GROUP" ], "enumDescriptions": [ - "Authentication is not specified.", - "User with valid certificate.", - "Users managed by Kubernetes API with credentials stored as secrets.", - "Collection of users." + "", + "", + "", + "" ], "type": "string" }, "name": { - "description": "Name for the subject.", "type": "string" }, "ns": { - "description": "Namespace for the subject.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2TicketInfo": { - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", "id": "GoogleCloudSecuritycenterV2TicketInfo", "properties": { "assignee": { - "description": "The assignee of the ticket in the ticket system.", "type": "string" }, "description": { - "description": "The description of the ticket in the ticket system.", "type": "string" }, "id": { - "description": "The identifier of the ticket in the ticket system.", "type": "string" }, "status": { - "description": "The latest status of the ticket, as reported by the ticket system.", "type": "string" }, "updateTime": { - "description": "The time when the ticket was last updated, as reported by the ticket system.", "format": "google-datetime", "type": "string" }, "uri": { - "description": "The link to the ticket in the ticket system.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ToxicCombination": { - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "id": "GoogleCloudSecuritycenterV2ToxicCombination", "properties": { "attackExposureScore": { - "description": "The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack.", "format": "double", "type": "number" }, "relatedFindings": { - "description": "List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`.", "items": { "type": "string" }, @@ -9629,18 +8258,15 @@ "type": "object" }, "GoogleCloudSecuritycenterV2VertexAi": { - "description": "Vertex AI-related information associated with the finding.", "id": "GoogleCloudSecuritycenterV2VertexAi", "properties": { "datasets": { - "description": "Datasets associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Dataset" }, "type": "array" }, "pipelines": { - "description": "Pipelines associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Pipeline" }, @@ -9650,83 +8276,66 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Vulnerability": { - "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "GoogleCloudSecuritycenterV2Vulnerability", "properties": { "cve": { - "$ref": "GoogleCloudSecuritycenterV2Cve", - "description": "CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "GoogleCloudSecuritycenterV2Cve" }, "cwes": { - "description": "Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability.", "items": { "$ref": "GoogleCloudSecuritycenterV2Cwe" }, "type": "array" }, "fixedPackage": { - "$ref": "GoogleCloudSecuritycenterV2Package", - "description": "The fixed package is relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2Package" }, "offendingPackage": { - "$ref": "GoogleCloudSecuritycenterV2Package", - "description": "The offending package is relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2Package" }, "providerRiskScore": { - "description": "Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is.", "format": "int64", "type": "string" }, "reachable": { - "description": "Represents whether the vulnerability is reachable (detected via static analysis)", "type": "boolean" }, "securityBulletin": { - "$ref": "GoogleCloudSecuritycenterV2SecurityBulletin", - "description": "The security bulletin is relevant to this finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityBulletin" } }, "type": "object" }, "GoogleCloudSecuritycenterV2YaraRuleSignature": { - "description": "A signature corresponding to a YARA rule.", "id": "GoogleCloudSecuritycenterV2YaraRuleSignature", "properties": { "yaraRule": { - "description": "The name of the YARA rule.", "type": "string" } }, "type": "object" }, "GroupAssetsRequest": { - "description": "Request message for grouping by assets.", "id": "GroupAssetsRequest", "properties": { "compareDuration": { - "description": "When compare_duration is set, the Asset's \"state\" property is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible \"state\" values when compare_duration is specified: * \"ADDED\": indicates that the asset was not present before compare_duration, but present at reference_time. * \"REMOVED\": indicates that the asset was present at the start of compare_duration, but not present at reference_time. * \"ACTIVE\": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and reference_time. This field is ignored if `state` is not a field in `group_by`.", "format": "google-duration", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `resource_properties.size = 100` is a valid filter string.", "type": "string" }, "groupBy": { - "description": "Required. Expression that defines what assets fields to use for grouping. The string value should follow SQL syntax: comma separated list of fields. For example: \"security_center_properties.resource_project,security_center_properties.project\". The following fields are supported when compare_duration is not set: * security_center_properties.resource_project * security_center_properties.resource_type * security_center_properties.resource_parent The following fields are supported when compare_duration is set: * security_center_properties.resource_type", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `GroupAssetsResponse`; indicates that this is a continuation of a prior `GroupAssets` call, and that the system should return the next page of data.", "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "type": "string" } @@ -9734,22 +8343,18 @@ "type": "object" }, "GroupAssetsResponse": { - "description": "Response message for grouping by assets.", "id": "GroupAssetsResponse", "properties": { "groupByResults": { - "description": "Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear.", "items": { "$ref": "GroupResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the groupBy request.", "format": "google-datetime", "type": "string" } @@ -9757,28 +8362,22 @@ "type": "object" }, "GroupFindingsRequest": { - "description": "Request message for grouping by findings.", "id": "GroupFindingsRequest", "properties": { "filter": { - "description": "Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `source_properties.size = 100` is a valid filter string.", "type": "string" }, "groupBy": { - "description": "Required. Expression that defines what assets fields to use for grouping (including `state`). The string value should follow SQL syntax: comma separated list of fields. For example: \"parent,resource_name\". The following fields are supported: * resource_name * category * state * parent", "type": "string" }, "pageSize": { - "description": "The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000.", "format": "int32", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `GroupFindingsResponse`; indicates that this is a continuation of a prior `GroupFindings` call, and that the system should return the next page of data.", "type": "string" }, "readTime": { - "description": "Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW.", "format": "google-datetime", "type": "string" } @@ -9786,22 +8385,18 @@ "type": "object" }, "GroupFindingsResponse": { - "description": "Response message for group by findings.", "id": "GroupFindingsResponse", "properties": { "groupByResults": { - "description": "Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear.", "items": { "$ref": "GroupResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the groupBy request.", "format": "google-datetime", "type": "string" } @@ -9809,24 +8404,21 @@ "type": "object" }, "GroupMembership": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way.", "id": "GroupMembership", "properties": { "groupId": { - "description": "ID of the group.", "type": "string" }, "groupType": { - "description": "Type of group.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "GROUP_TYPE_TOXIC_COMBINATION", "GROUP_TYPE_CHOKEPOINT" ], "enumDescriptions": [ - "Default value.", - "Group represents a toxic combination.", - "Group represents a chokepoint." + "", + "", + "" ], "type": "string" } @@ -9834,11 +8426,9 @@ "type": "object" }, "GroupResult": { - "description": "Result containing the properties and count of a groupBy request.", "id": "GroupResult", "properties": { "count": { - "description": "Total count of resources for the given properties.", "format": "int64", "type": "string" }, @@ -9846,83 +8436,70 @@ "additionalProperties": { "type": "any" }, - "description": "Properties matching the groupBy fields in the request.", "type": "object" } }, "type": "object" }, "HttpResponse": { - "description": "The http response returned by the web application.", "id": "HttpResponse", "properties": { "path": { - "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", "type": "string" }, "statusCode": { - "description": "The http response code returned by the web application, for example, 200.", "type": "string" } }, "type": "object" }, "IamBinding": { - "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "IamBinding", "properties": { "action": { - "description": "The action that was performed on a Binding.", "enum": [ "ACTION_UNSPECIFIED", "ADD", "REMOVE" ], "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." + "", + "", + "" ], "type": "string" }, "member": { - "description": "A single identity requesting access for a Cloud Platform resource, for example, \"foo@google.com\".", "type": "string" }, "role": { - "description": "Role that is assigned to \"members\". For example, \"roles/viewer\", \"roles/editor\", or \"roles/owner\".", "type": "string" } }, "type": "object" }, "Indicator": { - "description": "Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).", "id": "Indicator", "properties": { "domains": { - "description": "List of domains associated to the Finding.", "items": { "type": "string" }, "type": "array" }, "ipAddresses": { - "description": "The list of IP addresses that are associated with the finding.", "items": { "type": "string" }, "type": "array" }, "signatures": { - "description": "The list of matched signatures indicating that the given process is present in the environment.", "items": { "$ref": "ProcessSignature" }, "type": "array" }, "uris": { - "description": "The list of URIs associated to the Findings.", "items": { "type": "string" }, @@ -9932,84 +8509,70 @@ "type": "object" }, "InfoType": { - "description": "Type of information detected by the API.", "id": "InfoType", "properties": { "name": { - "description": "Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64}`.", "type": "string" }, "sensitivityScore": { - "$ref": "SensitivityScore", - "description": "Optional custom sensitivity for this InfoType. This only applies to data profiling." + "$ref": "SensitivityScore" }, "version": { - "description": "Optional version name for this InfoType.", "type": "string" } }, "type": "object" }, "IpRule": { - "description": "IP rule information.", "id": "IpRule", "properties": { "portRanges": { - "description": "Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number.", "items": { "$ref": "PortRange" }, "type": "array" }, "protocol": { - "description": "The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value.", "type": "string" } }, "type": "object" }, "IpRules": { - "description": "IP rules associated with the finding.", "id": "IpRules", "properties": { "allowed": { - "$ref": "Allowed", - "description": "Tuple with allowed rules." + "$ref": "Allowed" }, "denied": { - "$ref": "Denied", - "description": "Tuple with denied rules." + "$ref": "Denied" }, "destinationIpRanges": { - "description": "If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, "type": "array" }, "direction": { - "description": "The direction that the rule is applicable to, one of ingress or egress.", "enum": [ "DIRECTION_UNSPECIFIED", "INGRESS", "EGRESS" ], "enumDescriptions": [ - "Unspecified direction value.", - "Ingress direction value.", - "Egress direction value." + "", + "", + "" ], "type": "string" }, "exposedServices": { - "description": "Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.", "items": { "type": "string" }, "type": "array" }, "sourceIpRanges": { - "description": "If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, @@ -10019,24 +8582,19 @@ "type": "object" }, "Job": { - "description": "Describes a job", "id": "Job", "properties": { "errorCode": { - "description": "Optional. If the job did not complete successfully, this field describes why.", "format": "int32", "type": "integer" }, "location": { - "description": "Optional. Gives the location where the job ran, such as `US` or `europe-west1`", "type": "string" }, "name": { - "description": "The fully-qualified name for a job. e.g. `projects//jobs/`", "type": "string" }, "state": { - "description": "Output only. State of the job, such as `RUNNING` or `PENDING`.", "enum": [ "JOB_STATE_UNSPECIFIED", "PENDING", @@ -10045,11 +8603,11 @@ "FAILED" ], "enumDescriptions": [ - "Unspecified represents an unknown state and should not be used.", - "Job is scheduled and pending for run", - "Job in progress", - "Job has completed with success", - "Job has completed but with failure" + "", + "", + "", + "", + "" ], "readOnly": true, "type": "string" @@ -10058,96 +8616,78 @@ "type": "object" }, "KernelRootkit": { - "description": "Kernel mode rootkit signatures.", "id": "KernelRootkit", "properties": { "name": { - "description": "Rootkit name, when available.", "type": "string" }, "unexpectedCodeModification": { - "description": "True if unexpected modifications of kernel code memory are present.", "type": "boolean" }, "unexpectedFtraceHandler": { - "description": "True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedInterruptHandler": { - "description": "True if interrupt handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKernelCodePages": { - "description": "True if kernel code pages that are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKprobeHandler": { - "description": "True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedProcessesInRunqueue": { - "description": "True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list.", "type": "boolean" }, "unexpectedReadOnlyDataModification": { - "description": "True if unexpected modifications of kernel read-only data memory are present.", "type": "boolean" }, "unexpectedSystemCallHandler": { - "description": "True if system call handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" } }, "type": "object" }, "Kubernetes": { - "description": "Kubernetes-related attributes.", "id": "Kubernetes", "properties": { "accessReviews": { - "description": "Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding.", "items": { "$ref": "AccessReview" }, "type": "array" }, "bindings": { - "description": "Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV1Binding" }, "type": "array" }, "nodePools": { - "description": "GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available.", "items": { "$ref": "NodePool" }, "type": "array" }, "nodes": { - "description": "Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information.", "items": { "$ref": "Node" }, "type": "array" }, "objects": { - "description": "Kubernetes objects related to the finding.", "items": { "$ref": "Object" }, "type": "array" }, "pods": { - "description": "Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod.", "items": { "$ref": "Pod" }, "type": "array" }, "roles": { - "description": "Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "Role" }, @@ -10157,42 +8697,34 @@ "type": "object" }, "Label": { - "description": "Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).", "id": "Label", "properties": { "name": { - "description": "Name of the label.", "type": "string" }, "value": { - "description": "Value that corresponds to the label's name.", "type": "string" } }, "type": "object" }, "ListAssetsResponse": { - "description": "Response message for listing assets.", "id": "ListAssetsResponse", "properties": { "listAssetsResults": { - "description": "Assets matching the list request.", "items": { "$ref": "ListAssetsResult" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the list request.", "format": "google-datetime", "type": "string" }, "totalSize": { - "description": "The total number of assets matching the query.", "format": "int32", "type": "integer" } @@ -10200,15 +8732,12 @@ "type": "object" }, "ListAssetsResult": { - "description": "Result containing the Asset and its State.", "id": "ListAssetsResult", "properties": { "asset": { - "$ref": "Asset", - "description": "Asset matching the search request." + "$ref": "Asset" }, "state": { - "description": "State of the asset.", "enum": [ "STATE_UNSPECIFIED", "UNUSED", @@ -10217,11 +8746,11 @@ "ACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "Request did not specify use of this field in the result.", - "Asset was added between the points in time.", - "Asset was removed between the points in time.", - "Asset was active at both point(s) in time." + "", + "", + "", + "", + "" ], "type": "string" } @@ -10229,27 +8758,22 @@ "type": "object" }, "ListFindingsResponse": { - "description": "Response message for listing findings.", "id": "ListFindingsResponse", "properties": { "findings": { - "description": "Findings matching the list request.", "items": { "$ref": "GoogleCloudSecuritycenterV1beta1Finding" }, "type": "array" }, "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "readTime": { - "description": "Time used for executing the list request.", "format": "google-datetime", "type": "string" }, "totalSize": { - "description": "The total number of findings matching the query.", "format": "int32", "type": "integer" } @@ -10257,22 +8781,18 @@ "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" }, "unreachable": { - "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations.", "items": { "type": "string" }, @@ -10282,15 +8802,12 @@ "type": "object" }, "ListSourcesResponse": { - "description": "Response message for listing sources.", "id": "ListSourcesResponse", "properties": { "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more results.", "type": "string" }, "sources": { - "description": "Sources belonging to the requested parent.", "items": { "$ref": "Source" }, @@ -10300,37 +8817,30 @@ "type": "object" }, "LoadBalancer": { - "description": "Contains information related to the load balancer associated with the finding.", "id": "LoadBalancer", "properties": { "name": { - "description": "The name of the load balancer associated with the finding.", "type": "string" } }, "type": "object" }, "LogEntry": { - "description": "An individual entry in a log.", "id": "LogEntry", "properties": { "cloudLoggingEntry": { - "$ref": "CloudLoggingEntry", - "description": "An individual entry in a log stored in Cloud Logging." + "$ref": "CloudLoggingEntry" } }, "type": "object" }, "MemoryHashSignature": { - "description": "A signature corresponding to memory page hashes.", "id": "MemoryHashSignature", "properties": { "binaryFamily": { - "description": "The binary family.", "type": "string" }, "detections": { - "description": "The list of memory hash detections contributing to the binary family match.", "items": { "$ref": "Detection" }, @@ -10340,11 +8850,9 @@ "type": "object" }, "MitreAttack": { - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org", "id": "MitreAttack", "properties": { "additionalTactics": { - "description": "Additional MITRE ATT&CK tactics related to this finding, if any.", "items": { "enum": [ "TACTIC_UNSPECIFIED", @@ -10364,28 +8872,27 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "additionalTechniques": { - "description": "Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -10529,152 +9036,151 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "primaryTactic": { - "description": "The MITRE ATT&CK tactic most closely represented by this finding, if any.", "enum": [ "TACTIC_UNSPECIFIED", "RECONNAISSANCE", @@ -10693,26 +9199,25 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "primaryTechniques": { - "description": "The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -10856,207 +9361,196 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "version": { - "description": "The MITRE ATT&CK version referenced by the above fields. E.g. \"8\".", "type": "string" } }, "type": "object" }, "MuteInfo": { - "description": "Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules.", "id": "MuteInfo", "properties": { "dynamicMuteRecords": { - "description": "The list of dynamic mute rules that currently match the finding.", "items": { "$ref": "DynamicMuteRecord" }, "type": "array" }, "staticMute": { - "$ref": "StaticMute", - "description": "If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute." + "$ref": "StaticMute" } }, "type": "object" }, "Network": { - "description": "Contains information about a VPC network associated with the finding.", "id": "Network", "properties": { "name": { - "description": "The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`.", "type": "string" } }, "type": "object" }, "Node": { - "description": "Kubernetes nodes associated with the finding.", "id": "Node", "properties": { "name": { - "description": "[Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node.", "type": "string" } }, "type": "object" }, "NodePool": { - "description": "Provides GKE node pool information.", "id": "NodePool", "properties": { "name": { - "description": "Kubernetes node pool name.", "type": "string" }, "nodes": { - "description": "Nodes associated with the finding.", "items": { "$ref": "Node" }, @@ -11066,81 +9560,65 @@ "type": "object" }, "Notebook": { - "description": "Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding.", "id": "Notebook", "properties": { "lastAuthor": { - "description": "The user ID of the latest author to modify the notebook.", "type": "string" }, "name": { - "description": "The name of the notebook.", "type": "string" }, "notebookUpdateTime": { - "description": "The most recent time the notebook was updated.", "format": "google-datetime", "type": "string" }, "service": { - "description": "The source notebook service, for example, \"Colab Enterprise\".", "type": "string" } }, "type": "object" }, "Object": { - "description": "Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.", "id": "Object", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "Container" }, "type": "array" }, "group": { - "description": "Kubernetes object group, such as \"policy.k8s.io/v1\".", "type": "string" }, "kind": { - "description": "Kubernetes object kind, such as \"Namespace\".", "type": "string" }, "name": { - "description": "Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.", "type": "string" }, "ns": { - "description": "Kubernetes object namespace. Must be a valid DNS label. Named \"ns\" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.", "type": "string" } }, "type": "object" }, "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", "properties": { "done": { - "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", "type": "boolean" }, "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "$ref": "Status" }, "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": { @@ -11148,134 +9626,109 @@ "description": "Properties of the object. Contains field @type with type URL.", "type": "any" }, - "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", "type": "object" } }, "type": "object" }, "OrgPolicy": { - "description": "Contains information about the org policies associated with the finding.", "id": "OrgPolicy", "properties": { "name": { - "description": "The resource name of the org policy. Example: \"organizations/{organization_id}/policies/{constraint_name}\"", "type": "string" } }, "type": "object" }, "OrganizationSettings": { - "description": "User specified settings that are attached to the Security Command Center organization.", "id": "OrganizationSettings", "properties": { "assetDiscoveryConfig": { - "$ref": "AssetDiscoveryConfig", - "description": "The configuration used for Asset Discovery runs." + "$ref": "AssetDiscoveryConfig" }, "enableAssetDiscovery": { - "description": "A flag that indicates if Asset Discovery should be enabled. If the flag is set to `true`, then discovery of assets will occur. If it is set to `false`, all historical assets will remain, but discovery of future assets will not occur.", "type": "boolean" }, "name": { - "description": "The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/organizationSettings\".", "type": "string" } }, "type": "object" }, "Package": { - "description": "Package is a generic definition of a package.", "id": "Package", "properties": { "cpeUri": { - "description": "The CPE URI where the vulnerability was detected.", "type": "string" }, "packageName": { - "description": "The name of the package where the vulnerability was detected.", "type": "string" }, "packageType": { - "description": "Type of package, for example, os, maven, or go.", "type": "string" }, "packageVersion": { - "description": "The version of the package.", "type": "string" } }, "type": "object" }, "Pipeline": { - "description": "Vertex AI training pipeline associated with the finding.", "id": "Pipeline", "properties": { "displayName": { - "description": "The user defined display name of pipeline, e.g. plants-classification", "type": "string" }, "name": { - "description": "Resource name of the pipeline, e.g. projects/{project}/locations/{location}/trainingPipelines/5253428229225578496", "type": "string" } }, "type": "object" }, "Pod": { - "description": "A Kubernetes Pod.", "id": "Pod", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "Container" }, "type": "array" }, "labels": { - "description": "Pod labels. For Kubernetes containers, these are applied to the container.", "items": { "$ref": "Label" }, "type": "array" }, "name": { - "description": "Kubernetes Pod name.", "type": "string" }, "ns": { - "description": "Kubernetes Pod namespace.", "type": "string" } }, "type": "object" }, "Policy": { - "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time < 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": "Policy", "properties": { "auditConfigs": { - "description": "Specifies cloud audit logging configuration for this policy.", "items": { "$ref": "AuditConfig" }, "type": "array" }, "bindings": { - "description": "Associates a list of `members`, or principals, with 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 principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`.", "items": { "$ref": "Binding" }, "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" } @@ -11283,45 +9736,36 @@ "type": "object" }, "PolicyDriftDetails": { - "description": "The policy field that violates the deployed posture and its expected and detected values.", "id": "PolicyDriftDetails", "properties": { "detectedValue": { - "description": "The detected value that violates the deployed posture, for example, `false` or `allowed_values={\"projects/22831892\"}`.", "type": "string" }, "expectedValue": { - "description": "The value of this field that was configured in a posture, for example, `true` or `allowed_values={\"projects/29831892\"}`.", "type": "string" }, "field": { - "description": "The name of the updated field, for example constraint.implementation.policy_rules[0].enforce", "type": "string" } }, "type": "object" }, "PolicyViolationSummary": { - "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", "id": "PolicyViolationSummary", "properties": { "conformantResourcesCount": { - "description": "Total number of child resources that conform to the policy.", "format": "int64", "type": "string" }, "evaluationErrorsCount": { - "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", "format": "int64", "type": "string" }, "outOfScopeResourcesCount": { - "description": "Total count of child resources which were not in scope for evaluation.", "format": "int64", "type": "string" }, "policyViolationsCount": { - "description": "Count of child resources in violation of the policy.", "format": "int64", "type": "string" } @@ -11329,16 +9773,13 @@ "type": "object" }, "PortRange": { - "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "PortRange", "properties": { "max": { - "description": "Maximum port value.", "format": "int64", "type": "string" }, "min": { - "description": "Minimum port value.", "format": "int64", "type": "string" } @@ -11346,62 +9787,50 @@ "type": "object" }, "Process": { - "description": "Represents an operating system process.", "id": "Process", "properties": { "args": { - "description": "Process arguments as JSON encoded strings.", "items": { "type": "string" }, "type": "array" }, "argumentsTruncated": { - "description": "True if `args` is incomplete.", "type": "boolean" }, "binary": { - "$ref": "File", - "description": "File information for the process executable." + "$ref": "File" }, "envVariables": { - "description": "Process environment variables.", "items": { "$ref": "EnvironmentVariable" }, "type": "array" }, "envVariablesTruncated": { - "description": "True if `env_variables` is incomplete.", "type": "boolean" }, "libraries": { - "description": "File information for libraries loaded by the process.", "items": { "$ref": "File" }, "type": "array" }, "name": { - "description": "The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.", "type": "string" }, "parentPid": { - "description": "The parent process ID.", "format": "int64", "type": "string" }, "pid": { - "description": "The process ID.", "format": "int64", "type": "string" }, "script": { - "$ref": "File", - "description": "When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter." + "$ref": "File" }, "userId": { - "description": "The ID of the user that executed the process. E.g. If this is the root user this will always be 0.", "format": "int64", "type": "string" } @@ -11409,70 +9838,58 @@ "type": "object" }, "ProcessSignature": { - "description": "Indicates what signature matched this process.", "id": "ProcessSignature", "properties": { "memoryHashSignature": { - "$ref": "MemoryHashSignature", - "description": "Signature indicating that a binary family was matched." + "$ref": "MemoryHashSignature" }, "signatureType": { - "description": "Describes the type of resource associated with the signature.", "enum": [ "SIGNATURE_TYPE_UNSPECIFIED", "SIGNATURE_TYPE_PROCESS", "SIGNATURE_TYPE_FILE" ], "enumDescriptions": [ - "The default signature type.", - "Used for signatures concerning processes.", - "Used for signatures concerning disks." + "", + "", + "" ], "type": "string" }, "yaraRuleSignature": { - "$ref": "YaraRuleSignature", - "description": "Signature indicating that a YARA rule was matched." + "$ref": "YaraRuleSignature" } }, "type": "object" }, "Reference": { - "description": "Additional Links", "id": "Reference", "properties": { "source": { - "description": "Source of the reference e.g. NVD", "type": "string" }, "uri": { - "description": "Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.", "type": "string" } }, "type": "object" }, "Requests": { - "description": "Information about the requests relevant to the finding.", "id": "Requests", "properties": { "longTermAllowed": { - "description": "Allowed RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "longTermDenied": { - "description": "Denied RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "ratio": { - "description": "For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term.", "format": "double", "type": "number" }, "shortTermAllowed": { - "description": "Allowed RPS (requests per second) in the short term.", "format": "int32", "type": "integer" } @@ -11480,11 +9897,9 @@ "type": "object" }, "ResourcePath": { - "description": "Represents the path of resources leading up to the resource this finding is about.", "id": "ResourcePath", "properties": { "nodes": { - "description": "The list of nodes that make the up resource path, ordered from lowest level to highest level.", "items": { "$ref": "ResourcePathNode" }, @@ -11494,19 +9909,15 @@ "type": "object" }, "ResourcePathNode": { - "description": "A node within the resource path. Each node represents a resource within the resource hierarchy.", "id": "ResourcePathNode", "properties": { "displayName": { - "description": "The display name of the resource this node represents.", "type": "string" }, "id": { - "description": "The ID of the resource this node represents.", "type": "string" }, "nodeType": { - "description": "The type of resource this node represents.", "enum": [ "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED", "GCP_ORGANIZATION", @@ -11520,16 +9931,16 @@ "AZURE_RESOURCE_GROUP" ], "enumDescriptions": [ - "Node type is unspecified.", - "The node represents a Google Cloud organization.", - "The node represents a Google Cloud folder.", - "The node represents a Google Cloud project.", - "The node represents an AWS organization.", - "The node represents an AWS organizational unit.", - "The node represents an AWS account.", - "The node represents an Azure management group.", - "The node represents an Azure subscription.", - "The node represents an Azure resource group." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -11537,96 +9948,79 @@ "type": "object" }, "Role": { - "description": "Kubernetes Role or ClusterRole.", "id": "Role", "properties": { "kind": { - "description": "Role type.", "enum": [ "KIND_UNSPECIFIED", "ROLE", "CLUSTER_ROLE" ], "enumDescriptions": [ - "Role type is not specified.", - "Kubernetes Role.", - "Kubernetes ClusterRole." + "", + "", + "" ], "type": "string" }, "name": { - "description": "Role name.", "type": "string" }, "ns": { - "description": "Role namespace.", "type": "string" } }, "type": "object" }, "RunAssetDiscoveryRequest": { - "description": "Request message for running asset discovery for an organization.", "id": "RunAssetDiscoveryRequest", "properties": {}, "type": "object" }, "Secret": { - "description": "Details about a secret or credential associated with the finding.", "id": "Secret", "properties": { "environmentVariable": { - "$ref": "SecretEnvironmentVariable", - "description": "The environment variable containing the secret." + "$ref": "SecretEnvironmentVariable" }, "filePath": { - "$ref": "SecretFilePath", - "description": "The file containing the secret." + "$ref": "SecretFilePath" }, "status": { - "$ref": "SecretStatus", - "description": "The status of the secret." + "$ref": "SecretStatus" }, "type": { - "description": "The type of secret, for example, GCP_API_KEY.", "type": "string" } }, "type": "object" }, "SecretEnvironmentVariable": { - "description": "Environment variable containing the secret.", "id": "SecretEnvironmentVariable", "properties": { "key": { - "description": "Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content.", "type": "string" } }, "type": "object" }, "SecretFilePath": { - "description": "File path containing the secret.", "id": "SecretFilePath", "properties": { "path": { - "description": "Path to the file.", "type": "string" } }, "type": "object" }, "SecretStatus": { - "description": "The status of the secret.", "id": "SecretStatus", "properties": { "lastUpdatedTime": { - "description": "Time that the secret was found.", "format": "google-datetime", "type": "string" }, "validity": { - "description": "The validity of the secret.", "enum": [ "SECRET_VALIDITY_UNSPECIFIED", "SECRET_VALIDITY_UNSUPPORTED", @@ -11635,11 +10029,11 @@ "SECRET_VALIDITY_VALID" ], "enumDescriptions": [ - "Default value; no validation was attempted.", - "There is no mechanism to validate the secret.", - "Validation is supported but the validation failed.", - "The secret is confirmed to be invalid.", - "The secret is confirmed to be valid." + "", + "", + "", + "", + "" ], "type": "string" } @@ -11647,144 +10041,115 @@ "type": "object" }, "SecurityBulletin": { - "description": "SecurityBulletin are notifications of vulnerabilities of Google products.", "id": "SecurityBulletin", "properties": { "bulletinId": { - "description": "ID of the bulletin corresponding to the vulnerability.", "type": "string" }, "submissionTime": { - "description": "Submission time of this Security Bulletin.", "format": "google-datetime", "type": "string" }, "suggestedUpgradeVersion": { - "description": "This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0", "type": "string" } }, "type": "object" }, "SecurityCenterProperties": { - "description": "Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user.", "id": "SecurityCenterProperties", "properties": { "resourceName": { - "description": "Immutable. The full resource name of the Google Cloud resource this asset represents. This field is immutable after create time. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceOwners": { - "description": "Owners of the Google Cloud resource.", "items": { "type": "string" }, "type": "array" }, "resourceParent": { - "description": "The full resource name of the immediate parent of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceProject": { - "description": "The full resource name of the project the resource belongs to. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceType": { - "description": "The type of the Google Cloud resource. Examples include: APPLICATION, PROJECT, and ORGANIZATION. This is a case insensitive field defined by Security Command Center and/or the producer of the resource and is immutable after create time.", "type": "string" } }, "type": "object" }, "SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"folders/{folder_id}/assets/{asset_id}/securityMarks\" \"projects/{project_number}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks\"", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "SecurityPolicy": { - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding.", "id": "SecurityPolicy", "properties": { "name": { - "description": "The name of the Google Cloud Armor security policy, for example, \"my-security-policy\".", "type": "string" }, "preview": { - "description": "Whether or not the associated rule or policy is in preview mode.", "type": "boolean" }, "type": { - "description": "The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'.", "type": "string" } }, "type": "object" }, "SecurityPosture": { - "description": "Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud.", "id": "SecurityPosture", "properties": { "changedPolicy": { - "description": "The name of the updated policy, for example, `projects/{project_id}/policies/{constraint_name}`.", "type": "string" }, "name": { - "description": "Name of the posture, for example, `CIS-Posture`.", "type": "string" }, "policy": { - "description": "The ID of the updated policy, for example, `compute-policy-1`.", "type": "string" }, "policyDriftDetails": { - "description": "The details about a change in an updated policy that violates the deployed posture.", "items": { "$ref": "PolicyDriftDetails" }, "type": "array" }, "policySet": { - "description": "The name of the updated policyset, for example, `cis-policyset`.", "type": "string" }, "postureDeployment": { - "description": "The name of the posture deployment, for example, `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.", "type": "string" }, "postureDeploymentResource": { - "description": "The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number}`.", "type": "string" }, "revisionId": { - "description": "The version of the posture, for example, `c7cfa2a8`.", "type": "string" } }, "type": "object" }, "SensitivityScore": { - "description": "Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive.", "id": "SensitivityScore", "properties": { "score": { - "description": "The sensitivity score applied to the resource.", "enum": [ "SENSITIVITY_SCORE_LEVEL_UNSPECIFIED", "SENSITIVITY_LOW", @@ -11793,11 +10158,11 @@ "SENSITIVITY_HIGH" ], "enumDescriptions": [ - "Unused.", - "No sensitive information detected. The resource isn't publicly accessible.", - "Unable to determine sensitivity.", - "Medium risk. Contains personally identifiable information (PII), potentially sensitive data, or fields with free-text data that are at a higher risk of having intermittent sensitive data. Consider limiting access.", - "High risk. Sensitive personally identifiable information (SPII) can be present. Exfiltration of data can lead to user data loss. Re-identification of users might be possible. Consider limiting usage and or removing SPII." + "", + "", + "", + "", + "" ], "type": "string" } @@ -11805,40 +10170,34 @@ "type": "object" }, "ServiceAccountDelegationInfo": { - "description": "Identity delegation history of an authenticated service account.", "id": "ServiceAccountDelegationInfo", "properties": { "principalEmail": { - "description": "The email address of a Google account.", "type": "string" }, "principalSubject": { - "description": "A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name}[{subject}]`", "type": "string" } }, "type": "object" }, "SetFindingStateRequest": { - "description": "Request message for updating a finding's state.", "id": "SetFindingStateRequest", "properties": { "startTime": { - "description": "Optional. The time at which the updated state takes effect. If not set uses the current time.", "format": "google-datetime", "type": "string" }, "state": { - "description": "Required. The desired State of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" } @@ -11846,15 +10205,12 @@ "type": "object" }, "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", "id": "SetIamPolicyRequest", "properties": { "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them." + "$ref": "Policy" }, "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" } @@ -11862,35 +10218,28 @@ "type": "object" }, "Source": { - "description": "Security Command Center finding source. A finding source is an entity or a mechanism that can produce a finding. A source is like a container of findings that come from the same scanner, logger, monitor, etc.", "id": "Source", "properties": { "description": { - "description": "The description of the source (max of 1024 characters). Example: \"Web Security Scanner is a web security scanner for common vulnerabilities in App Engine applications. It can automatically scan and detect four common vulnerabilities, including cross-site-scripting (XSS), Flash injection, mixed content (HTTP in HTTPS), and outdated/insecure libraries.\"", "type": "string" }, "displayName": { - "description": "The source's display name. A source's display name must be unique amongst its siblings, for example, two sources with the same parent can't share the same display name. The display name must have a length between 1 and 64 characters (inclusive).", "type": "string" }, "name": { - "description": "The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" } }, "type": "object" }, "StaticMute": { - "description": "Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly.", "id": "StaticMute", "properties": { "applyTime": { - "description": "When the static mute was applied.", "format": "google-datetime", "type": "string" }, "state": { - "description": "The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -11898,10 +10247,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -11909,16 +10258,13 @@ "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.", @@ -11929,18 +10275,15 @@ "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" }, "Subject": { - "description": "Represents a Kubernetes subject.", "id": "Subject", "properties": { "kind": { - "description": "Authentication type for the subject.", "enum": [ "AUTH_TYPE_UNSPECIFIED", "USER", @@ -11948,30 +10291,26 @@ "GROUP" ], "enumDescriptions": [ - "Authentication is not specified.", - "User with valid certificate.", - "Users managed by Kubernetes API with credentials stored as secrets.", - "Collection of users." + "", + "", + "", + "" ], "type": "string" }, "name": { - "description": "Name for the subject.", "type": "string" }, "ns": { - "description": "Namespace for the subject.", "type": "string" } }, "type": "object" }, "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", "id": "TestIamPermissionsRequest", "properties": { "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" }, @@ -11981,11 +10320,9 @@ "type": "object" }, "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", "id": "TestIamPermissionsResponse", "properties": { "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", "items": { "type": "string" }, @@ -11995,48 +10332,38 @@ "type": "object" }, "TicketInfo": { - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", "id": "TicketInfo", "properties": { "assignee": { - "description": "The assignee of the ticket in the ticket system.", "type": "string" }, "description": { - "description": "The description of the ticket in the ticket system.", "type": "string" }, "id": { - "description": "The identifier of the ticket in the ticket system.", "type": "string" }, "status": { - "description": "The latest status of the ticket, as reported by the ticket system.", "type": "string" }, "updateTime": { - "description": "The time when the ticket was last updated, as reported by the ticket system.", "format": "google-datetime", "type": "string" }, "uri": { - "description": "The link to the ticket in the ticket system.", "type": "string" } }, "type": "object" }, "ToxicCombination": { - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "id": "ToxicCombination", "properties": { "attackExposureScore": { - "description": "The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack.", "format": "double", "type": "number" }, "relatedFindings": { - "description": "List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`.", "items": { "type": "string" }, @@ -12046,18 +10373,15 @@ "type": "object" }, "VertexAi": { - "description": "Vertex AI-related information associated with the finding.", "id": "VertexAi", "properties": { "datasets": { - "description": "Datasets associated with the finding.", "items": { "$ref": "Dataset" }, "type": "array" }, "pipelines": { - "description": "Pipelines associated with the finding.", "items": { "$ref": "Pipeline" }, @@ -12067,46 +10391,37 @@ "type": "object" }, "Vulnerability": { - "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "Vulnerability", "properties": { "cve": { - "$ref": "Cve", - "description": "CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "Cve" }, "cwes": { - "description": "Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability.", "items": { "$ref": "Cwe" }, "type": "array" }, "fixedPackage": { - "$ref": "Package", - "description": "The fixed package is relevant to the finding." + "$ref": "Package" }, "offendingPackage": { - "$ref": "Package", - "description": "The offending package is relevant to the finding." + "$ref": "Package" }, "providerRiskScore": { - "description": "Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is.", "format": "int64", "type": "string" }, "reachable": { - "description": "Represents whether the vulnerability is reachable (detected via static analysis)", "type": "boolean" }, "securityBulletin": { - "$ref": "SecurityBulletin", - "description": "The security bulletin is relevant to this finding." + "$ref": "SecurityBulletin" } }, "type": "object" }, "VulnerabilityCountBySeverity": { - "description": "Vulnerability count by severity.", "id": "VulnerabilityCountBySeverity", "properties": { "severityToFindingCount": { @@ -12114,18 +10429,15 @@ "format": "int64", "type": "string" }, - "description": "Key is the Severity enum.", "type": "object" } }, "type": "object" }, "VulnerabilitySnapshot": { - "description": "Result containing the properties and count of a VulnerabilitySnapshot request.", "id": "VulnerabilitySnapshot", "properties": { "cloudProvider": { - "description": "The cloud provider for the vulnerability snapshot.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -12133,23 +10445,20 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "findingCount": { - "$ref": "VulnerabilityCountBySeverity", - "description": "The vulnerability count by severity." + "$ref": "VulnerabilityCountBySeverity" }, "name": { - "description": "Identifier. The vulnerability snapshot name. Format: //locations//vulnerabilitySnapshots/", "type": "string" }, "snapshotTime": { - "description": "The time that the snapshot was taken.", "format": "google-datetime", "type": "string" } @@ -12157,11 +10466,9 @@ "type": "object" }, "YaraRuleSignature": { - "description": "A signature corresponding to a YARA rule.", "id": "YaraRuleSignature", "properties": { "yaraRule": { - "description": "The name of the YARA rule.", "type": "string" } }, diff --git a/discovery/securitycenter-v1beta2.json b/discovery/securitycenter-v1beta2.json index f95b2c3fac..6083252885 100644 --- a/discovery/securitycenter-v1beta2.json +++ b/discovery/securitycenter-v1beta2.json @@ -125,7 +125,7 @@ "folders": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getContainerThreatDetectionSettings", @@ -134,7 +134,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/containerThreatDetectionSettings$", "required": true, @@ -150,7 +149,7 @@ ] }, "getEventThreatDetectionSettings": { - "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getEventThreatDetectionSettings", @@ -159,7 +158,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -175,7 +173,7 @@ ] }, "getRapidVulnerabilityDetectionSettings": { - "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getRapidVulnerabilityDetectionSettings", @@ -184,7 +182,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, @@ -200,7 +197,7 @@ ] }, "getSecurityCenterSettings": { - "description": "Get the SecurityCenterSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/securityCenterSettings", "httpMethod": "GET", "id": "securitycenter.folders.getSecurityCenterSettings", @@ -209,7 +206,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization}/securityCenterSettings Format: folders/{folder}/securityCenterSettings Format: projects/{project}/securityCenterSettings", "location": "path", "pattern": "^folders/[^/]+/securityCenterSettings$", "required": true, @@ -225,7 +221,7 @@ ] }, "getSecurityHealthAnalyticsSettings": { - "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings", "httpMethod": "GET", "id": "securitycenter.folders.getSecurityHealthAnalyticsSettings", @@ -234,7 +230,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -250,7 +245,7 @@ ] }, "getVirtualMachineThreatDetectionSettings": { - "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.folders.getVirtualMachineThreatDetectionSettings", @@ -259,7 +254,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, @@ -275,7 +269,7 @@ ] }, "getWebSecurityScannerSettings": { - "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings", "httpMethod": "GET", "id": "securitycenter.folders.getWebSecurityScannerSettings", @@ -284,7 +278,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^folders/[^/]+/webSecurityScannerSettings$", "required": true, @@ -300,7 +293,7 @@ ] }, "updateContainerThreatDetectionSettings": { - "description": "Update the ContainerThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.folders.updateContainerThreatDetectionSettings", @@ -309,14 +302,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -334,7 +325,7 @@ ] }, "updateEventThreatDetectionSettings": { - "description": "Update the EventThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.folders.updateEventThreatDetectionSettings", @@ -343,14 +334,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -368,7 +357,7 @@ ] }, "updateRapidVulnerabilityDetectionSettings": { - "description": "Update the RapidVulnerabilityDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.folders.updateRapidVulnerabilityDetectionSettings", @@ -377,14 +366,12 @@ ], "parameters": { "name": { - "description": "The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -402,7 +389,7 @@ ] }, "updateSecurityHealthAnalyticsSettings": { - "description": "Update the SecurityHealthAnalyticsSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings", "httpMethod": "PATCH", "id": "securitycenter.folders.updateSecurityHealthAnalyticsSettings", @@ -411,14 +398,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -436,7 +421,7 @@ ] }, "updateVirtualMachineThreatDetectionSettings": { - "description": "Update the VirtualMachineThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.folders.updateVirtualMachineThreatDetectionSettings", @@ -445,14 +430,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -470,7 +453,7 @@ ] }, "updateWebSecurityScannerSettings": { - "description": "Update the WebSecurityScannerSettings resource.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings", "httpMethod": "PATCH", "id": "securitycenter.folders.updateWebSecurityScannerSettings", @@ -479,14 +462,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^folders/[^/]+/webSecurityScannerSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -508,7 +489,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.containerThreatDetectionSettings.calculate", @@ -517,14 +498,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -542,7 +521,7 @@ "eventThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/eventThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.eventThreatDetectionSettings.calculate", @@ -551,14 +530,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/eventThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -576,7 +553,7 @@ "rapidVulnerabilityDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/rapidVulnerabilityDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.rapidVulnerabilityDetectionSettings.calculate", @@ -585,7 +562,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, @@ -605,7 +581,7 @@ "securityHealthAnalyticsSettings": { "methods": { "calculate": { - "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/securityHealthAnalyticsSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.securityHealthAnalyticsSettings.calculate", @@ -614,14 +590,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^folders/[^/]+/securityHealthAnalyticsSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -639,7 +613,7 @@ "virtualMachineThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/virtualMachineThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.virtualMachineThreatDetectionSettings.calculate", @@ -648,14 +622,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^folders/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -673,7 +645,7 @@ "webSecurityScannerSettings": { "methods": { "calculate": { - "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/folders/{foldersId}/webSecurityScannerSettings:calculate", "httpMethod": "GET", "id": "securitycenter.folders.webSecurityScannerSettings.calculate", @@ -682,14 +654,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^folders/[^/]+/webSecurityScannerSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -709,7 +679,7 @@ "organizations": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getContainerThreatDetectionSettings", @@ -718,7 +688,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/containerThreatDetectionSettings$", "required": true, @@ -734,7 +703,7 @@ ] }, "getEventThreatDetectionSettings": { - "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getEventThreatDetectionSettings", @@ -743,7 +712,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -759,7 +727,7 @@ ] }, "getRapidVulnerabilityDetectionSettings": { - "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getRapidVulnerabilityDetectionSettings", @@ -768,7 +736,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, @@ -784,7 +751,7 @@ ] }, "getSecurityCenterSettings": { - "description": "Get the SecurityCenterSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/securityCenterSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getSecurityCenterSettings", @@ -793,7 +760,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization}/securityCenterSettings Format: folders/{folder}/securityCenterSettings Format: projects/{project}/securityCenterSettings", "location": "path", "pattern": "^organizations/[^/]+/securityCenterSettings$", "required": true, @@ -809,7 +775,7 @@ ] }, "getSecurityHealthAnalyticsSettings": { - "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getSecurityHealthAnalyticsSettings", @@ -818,7 +784,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -834,7 +799,7 @@ ] }, "getSubscription": { - "description": "Get the Subscription resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/subscription", "httpMethod": "GET", "id": "securitycenter.organizations.getSubscription", @@ -843,7 +808,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the subscription to retrieve. Format: organizations/{organization}/subscription", "location": "path", "pattern": "^organizations/[^/]+/subscription$", "required": true, @@ -859,7 +823,7 @@ ] }, "getVirtualMachineThreatDetectionSettings": { - "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getVirtualMachineThreatDetectionSettings", @@ -868,7 +832,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, @@ -884,7 +847,7 @@ ] }, "getWebSecurityScannerSettings": { - "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings", "httpMethod": "GET", "id": "securitycenter.organizations.getWebSecurityScannerSettings", @@ -893,7 +856,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^organizations/[^/]+/webSecurityScannerSettings$", "required": true, @@ -909,7 +871,7 @@ ] }, "updateContainerThreatDetectionSettings": { - "description": "Update the ContainerThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateContainerThreatDetectionSettings", @@ -918,14 +880,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -943,7 +903,7 @@ ] }, "updateEventThreatDetectionSettings": { - "description": "Update the EventThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateEventThreatDetectionSettings", @@ -952,14 +912,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -977,7 +935,7 @@ ] }, "updateRapidVulnerabilityDetectionSettings": { - "description": "Update the RapidVulnerabilityDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateRapidVulnerabilityDetectionSettings", @@ -986,14 +944,12 @@ ], "parameters": { "name": { - "description": "The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1011,7 +967,7 @@ ] }, "updateSecurityHealthAnalyticsSettings": { - "description": "Update the SecurityHealthAnalyticsSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateSecurityHealthAnalyticsSettings", @@ -1020,14 +976,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1045,7 +999,7 @@ ] }, "updateVirtualMachineThreatDetectionSettings": { - "description": "Update the VirtualMachineThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateVirtualMachineThreatDetectionSettings", @@ -1054,14 +1008,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1079,7 +1031,7 @@ ] }, "updateWebSecurityScannerSettings": { - "description": "Update the WebSecurityScannerSettings resource.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings", "httpMethod": "PATCH", "id": "securitycenter.organizations.updateWebSecurityScannerSettings", @@ -1088,14 +1040,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^organizations/[^/]+/webSecurityScannerSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1117,7 +1067,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.containerThreatDetectionSettings.calculate", @@ -1126,14 +1076,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1151,7 +1099,7 @@ "eventThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/eventThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.eventThreatDetectionSettings.calculate", @@ -1160,14 +1108,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/eventThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1185,7 +1131,7 @@ "rapidVulnerabilityDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/rapidVulnerabilityDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.rapidVulnerabilityDetectionSettings.calculate", @@ -1194,7 +1140,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, @@ -1214,7 +1159,7 @@ "securityHealthAnalyticsSettings": { "methods": { "calculate": { - "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/securityHealthAnalyticsSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.securityHealthAnalyticsSettings.calculate", @@ -1223,14 +1168,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^organizations/[^/]+/securityHealthAnalyticsSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1248,7 +1191,7 @@ "virtualMachineThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/virtualMachineThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.virtualMachineThreatDetectionSettings.calculate", @@ -1257,14 +1200,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^organizations/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1282,7 +1223,7 @@ "webSecurityScannerSettings": { "methods": { "calculate": { - "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/organizations/{organizationsId}/webSecurityScannerSettings:calculate", "httpMethod": "GET", "id": "securitycenter.organizations.webSecurityScannerSettings.calculate", @@ -1291,14 +1232,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^organizations/[^/]+/webSecurityScannerSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1318,7 +1257,7 @@ "projects": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getContainerThreatDetectionSettings", @@ -1327,7 +1266,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/containerThreatDetectionSettings$", "required": true, @@ -1343,7 +1281,7 @@ ] }, "getEventThreatDetectionSettings": { - "description": "Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getEventThreatDetectionSettings", @@ -1352,7 +1290,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, @@ -1368,7 +1305,7 @@ ] }, "getRapidVulnerabilityDetectionSettings": { - "description": "Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getRapidVulnerabilityDetectionSettings", @@ -1377,7 +1314,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, @@ -1393,7 +1329,7 @@ ] }, "getSecurityCenterSettings": { - "description": "Get the SecurityCenterSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/securityCenterSettings", "httpMethod": "GET", "id": "securitycenter.projects.getSecurityCenterSettings", @@ -1402,7 +1338,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization}/securityCenterSettings Format: folders/{folder}/securityCenterSettings Format: projects/{project}/securityCenterSettings", "location": "path", "pattern": "^projects/[^/]+/securityCenterSettings$", "required": true, @@ -1418,7 +1353,7 @@ ] }, "getSecurityHealthAnalyticsSettings": { - "description": "Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings", "httpMethod": "GET", "id": "securitycenter.projects.getSecurityHealthAnalyticsSettings", @@ -1427,7 +1362,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, @@ -1443,7 +1377,7 @@ ] }, "getVirtualMachineThreatDetectionSettings": { - "description": "Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.getVirtualMachineThreatDetectionSettings", @@ -1452,7 +1386,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, @@ -1468,7 +1401,7 @@ ] }, "getWebSecurityScannerSettings": { - "description": "Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings", "httpMethod": "GET", "id": "securitycenter.projects.getWebSecurityScannerSettings", @@ -1477,7 +1410,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^projects/[^/]+/webSecurityScannerSettings$", "required": true, @@ -1493,7 +1425,7 @@ ] }, "updateContainerThreatDetectionSettings": { - "description": "Update the ContainerThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.updateContainerThreatDetectionSettings", @@ -1502,14 +1434,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1527,7 +1457,7 @@ ] }, "updateEventThreatDetectionSettings": { - "description": "Update the EventThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.updateEventThreatDetectionSettings", @@ -1536,14 +1466,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1561,7 +1489,7 @@ ] }, "updateRapidVulnerabilityDetectionSettings": { - "description": "Update the RapidVulnerabilityDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.updateRapidVulnerabilityDetectionSettings", @@ -1570,14 +1498,12 @@ ], "parameters": { "name": { - "description": "The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1595,7 +1521,7 @@ ] }, "updateSecurityHealthAnalyticsSettings": { - "description": "Update the SecurityHealthAnalyticsSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.updateSecurityHealthAnalyticsSettings", @@ -1604,14 +1530,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1629,7 +1553,7 @@ ] }, "updateVirtualMachineThreatDetectionSettings": { - "description": "Update the VirtualMachineThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.updateVirtualMachineThreatDetectionSettings", @@ -1638,14 +1562,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1663,7 +1585,7 @@ ] }, "updateWebSecurityScannerSettings": { - "description": "Update the WebSecurityScannerSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.updateWebSecurityScannerSettings", @@ -1672,14 +1594,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^projects/[^/]+/webSecurityScannerSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1701,7 +1621,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.containerThreatDetectionSettings.calculate", @@ -1710,14 +1630,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1735,7 +1653,7 @@ "eventThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/eventThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.eventThreatDetectionSettings.calculate", @@ -1744,14 +1662,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/eventThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1771,7 +1687,7 @@ "clusters": { "methods": { "getContainerThreatDetectionSettings": { - "description": "Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings", "httpMethod": "GET", "id": "securitycenter.projects.locations.clusters.getContainerThreatDetectionSettings", @@ -1780,7 +1696,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/containerThreatDetectionSettings$", "required": true, @@ -1796,7 +1711,7 @@ ] }, "updateContainerThreatDetectionSettings": { - "description": "Update the ContainerThreatDetectionSettings resource.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings", "httpMethod": "PATCH", "id": "securitycenter.projects.locations.clusters.updateContainerThreatDetectionSettings", @@ -1805,14 +1720,12 @@ ], "parameters": { "name": { - "description": "Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "updateMask": { - "description": "The list of fields to be updated.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1834,7 +1747,7 @@ "containerThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/containerThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.locations.clusters.containerThreatDetectionSettings.calculate", @@ -1843,14 +1756,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/containerThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1872,7 +1783,7 @@ "rapidVulnerabilityDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/rapidVulnerabilityDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.rapidVulnerabilityDetectionSettings.calculate", @@ -1881,7 +1792,6 @@ ], "parameters": { "name": { - "description": "Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/rapidVulnerabilityDetectionSettings$", "required": true, @@ -1901,7 +1811,7 @@ "securityHealthAnalyticsSettings": { "methods": { "calculate": { - "description": "Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/securityHealthAnalyticsSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.securityHealthAnalyticsSettings.calculate", @@ -1910,14 +1820,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "location": "path", "pattern": "^projects/[^/]+/securityHealthAnalyticsSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1935,7 +1843,7 @@ "virtualMachineThreatDetectionSettings": { "methods": { "calculate": { - "description": "Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/virtualMachineThreatDetectionSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.virtualMachineThreatDetectionSettings.calculate", @@ -1944,14 +1852,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "location": "path", "pattern": "^projects/[^/]+/virtualMachineThreatDetectionSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -1969,7 +1875,7 @@ "webSecurityScannerSettings": { "methods": { "calculate": { - "description": "Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail.", + "description": "", "flatPath": "v1beta2/projects/{projectsId}/webSecurityScannerSettings:calculate", "httpMethod": "GET", "id": "securitycenter.projects.webSecurityScannerSettings.calculate", @@ -1978,14 +1884,12 @@ ], "parameters": { "name": { - "description": "Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "location": "path", "pattern": "^projects/[^/]+/webSecurityScannerSettings$", "required": true, "type": "string" }, "showEligibleModulesOnly": { - "description": "Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown.", "location": "query", "type": "boolean" } @@ -2003,104 +1907,82 @@ } } }, - "revision": "20260424", + "revision": "20260526", "rootUrl": "https://securitycenter.googleapis.com/", "schemas": { "Access": { - "description": "Represents an access event.", "id": "Access", "properties": { "callerIp": { - "description": "Caller's IP address, such as \"1.1.1.1\".", "type": "string" }, "callerIpGeo": { - "$ref": "Geolocation", - "description": "The caller IP's geolocation, which identifies where the call came from." + "$ref": "Geolocation" }, "methodName": { - "description": "The method that the service account called, e.g. \"SetIamPolicy\".", "type": "string" }, "principalEmail": { - "description": "Associated email, such as \"foo@google.com\". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id).", "type": "string" }, "principalSubject": { - "description": "A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name}[{subject}]`.", "type": "string" }, "serviceAccountDelegationInfo": { - "description": "The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events.", "items": { "$ref": "ServiceAccountDelegationInfo" }, "type": "array" }, "serviceAccountKeyName": { - "description": "The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: \"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\". ", "type": "string" }, "serviceName": { - "description": "This is the API service that the service account made a call to, e.g. \"iam.googleapis.com\"", "type": "string" }, "userAgent": { - "description": "The caller's user agent string associated with the finding.", "type": "string" }, "userAgentFamily": { - "description": "Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application.", "type": "string" }, "userName": { - "description": "A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username.", "type": "string" } }, "type": "object" }, "AccessReview": { - "description": "Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding.", "id": "AccessReview", "properties": { "group": { - "description": "The API group of the resource. \"*\" means all.", "type": "string" }, "name": { - "description": "The name of the resource being requested. Empty means all.", "type": "string" }, "ns": { - "description": "Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by \"\" (empty).", "type": "string" }, "resource": { - "description": "The optional resource type requested. \"*\" means all.", "type": "string" }, "subresource": { - "description": "The optional subresource type.", "type": "string" }, "verb": { - "description": "A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. \"*\" means all.", "type": "string" }, "version": { - "description": "The API version of the resource. \"*\" means all.", "type": "string" } }, "type": "object" }, "AdaptiveProtection": { - "description": "Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).", "id": "AdaptiveProtection", "properties": { "confidence": { - "description": "A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation.", "format": "double", "type": "number" } @@ -2108,48 +1990,39 @@ "type": "object" }, "AdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "AdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "AdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "AdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "AdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "AdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "AffectedResources": { - "description": "Details about resources affected by this finding.", "id": "AffectedResources", "properties": { "count": { - "description": "The count of resources affected by the finding.", "format": "int64", "type": "string" } @@ -2157,20 +2030,16 @@ "type": "object" }, "AgentDataAccessEvent": { - "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", "id": "AgentDataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -2178,26 +2047,23 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalSubject": { - "description": "The agent principal that accessed the data.", "type": "string" } }, "type": "object" }, "AiModel": { - "description": "Contains information about the AI model associated with the finding.", "id": "AiModel", "properties": { "deploymentPlatform": { - "description": "The platform on which the model is deployed.", "enum": [ "DEPLOYMENT_PLATFORM_UNSPECIFIED", "VERTEX_AI", @@ -2206,51 +2072,42 @@ "FINE_TUNED_MODEL" ], "enumDescriptions": [ - "Unspecified deployment platform.", - "Vertex AI.", - "Google Kubernetes Engine.", - "Google Compute Engine.", - "Fine tuned model." + "", + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The user defined display name of model. Ex. baseline-classification-model", "type": "string" }, "domain": { - "description": "The domain of the model, for example, “image-classification”.", "type": "string" }, "library": { - "description": "The name of the model library, for example, “transformers”.", "type": "string" }, "location": { - "description": "The region in which the model is used, for example, “us-central1”.", "type": "string" }, "name": { - "description": "The name of the AI model, for example, \"gemini:1.0.0\".", "type": "string" }, "publisher": { - "description": "The publisher of the model, for example, “google” or “nvidia”.", "type": "string" }, "usageCategory": { - "description": "The purpose of the model, for example, \"Inteference\" or \"Training\".", "type": "string" } }, "type": "object" }, "Allowed": { - "description": "Allowed IP rule.", "id": "Allowed", "properties": { "ipRules": { - "description": "Optional. Optional list of allowed IP rules.", "items": { "$ref": "IpRule" }, @@ -2260,59 +2117,49 @@ "type": "object" }, "Application": { - "description": "Represents an application associated with a finding.", "id": "Application", "properties": { "baseUri": { - "description": "The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`.", "type": "string" }, "fullUri": { - "description": "The full URI with payload that can be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`.", "type": "string" } }, "type": "object" }, "ArtifactGuardPolicies": { - "description": "Represents the result of evaluating artifact guard policies.", "id": "ArtifactGuardPolicies", "properties": { "failingPolicies": { - "description": "A list of failing policies.", "items": { "$ref": "ArtifactGuardPolicy" }, "type": "array" }, "resourceId": { - "description": "The ID of the resource that has policies configured for it.", "type": "string" } }, "type": "object" }, "ArtifactGuardPolicy": { - "description": "Represents an artifact guard policy.", "id": "ArtifactGuardPolicy", "properties": { "failureReason": { - "description": "The reason for the policy failure, for example, \"severity=HIGH AND max_vuln_count=2\".", "type": "string" }, "policyId": { - "description": "The ID of the failing policy, for example, \"organizations/3392779/locations/global/policies/prod-policy\".", "type": "string" }, "type": { - "description": "The type of the policy evaluation.", "enum": [ "ARTIFACT_GUARD_POLICY_TYPE_UNSPECIFIED", "VULNERABILITY" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Vulnerability type." + "", + "" ], "type": "string" } @@ -2320,32 +2167,26 @@ "type": "object" }, "Attack": { - "description": "Information about DDoS attack volume and classification.", "id": "Attack", "properties": { "classification": { - "description": "Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.", "type": "string" }, "volumeBps": { "deprecated": true, - "description": "Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead.", "format": "int32", "type": "integer" }, "volumeBpsLong": { - "description": "Total BPS (bytes per second) volume of attack.", "format": "int64", "type": "string" }, "volumePps": { "deprecated": true, - "description": "Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead.", "format": "int32", "type": "integer" }, "volumePpsLong": { - "description": "Total PPS (packets per second) volume of attack.", "format": "int64", "type": "string" } @@ -2353,49 +2194,41 @@ "type": "object" }, "AttackExposure": { - "description": "An attack exposure contains the results of an attack path simulation run.", "id": "AttackExposure", "properties": { "attackExposureResult": { - "description": "The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789`", "type": "string" }, "exposedHighValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedLowValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedMediumValueResourcesCount": { - "description": "The number of medium value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "latestCalculationTime": { - "description": "The most recent time the attack exposure was updated on this finding.", "format": "google-datetime", "type": "string" }, "score": { - "description": "A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate.", "format": "double", "type": "number" }, "state": { - "description": "What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not.", "enum": [ "STATE_UNSPECIFIED", "CALCULATED", "NOT_CALCULATED" ], "enumDescriptions": [ - "The state is not specified.", - "The attack exposure has been calculated.", - "The attack exposure has not been calculated." + "", + "", + "" ], "type": "string" } @@ -2403,34 +2236,27 @@ "type": "object" }, "AwsAccount": { - "description": "An AWS account that is a member of an organization.", "id": "AwsAccount", "properties": { "id": { - "description": "The unique identifier (ID) of the account, containing exactly 12 digits.", "type": "string" }, "name": { - "description": "The friendly name of this account.", "type": "string" } }, "type": "object" }, "AwsMetadata": { - "description": "AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services.", "id": "AwsMetadata", "properties": { "account": { - "$ref": "AwsAccount", - "description": "The AWS account associated with the resource." + "$ref": "AwsAccount" }, "organization": { - "$ref": "AwsOrganization", - "description": "The AWS organization associated with the resource." + "$ref": "AwsOrganization" }, "organizationalUnits": { - "description": "A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level.", "items": { "$ref": "AwsOrganizationalUnit" }, @@ -2440,191 +2266,154 @@ "type": "object" }, "AwsOrganization": { - "description": "An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies.", "id": "AwsOrganization", "properties": { "id": { - "description": "The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires \"o-\" followed by from 10 to 32 lowercase letters or digits.", "type": "string" } }, "type": "object" }, "AwsOrganizationalUnit": { - "description": "An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs.", "id": "AwsOrganizationalUnit", "properties": { "id": { - "description": "The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires \"ou-\" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second \"-\" dash and from 8 to 32 additional lowercase letters or digits. For example, \"ou-ab12-cd34ef56\".", "type": "string" }, "name": { - "description": "The friendly name of the OU.", "type": "string" } }, "type": "object" }, "AzureManagementGroup": { - "description": "Represents an Azure management group.", "id": "AzureManagementGroup", "properties": { "displayName": { - "description": "The display name of the Azure management group.", "type": "string" }, "id": { - "description": "The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`.", "type": "string" } }, "type": "object" }, "AzureMetadata": { - "description": "Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure.", "id": "AzureMetadata", "properties": { "managementGroups": { - "description": "A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level.", "items": { "$ref": "AzureManagementGroup" }, "type": "array" }, "resourceGroup": { - "$ref": "AzureResourceGroup", - "description": "The Azure resource group associated with the resource." + "$ref": "AzureResourceGroup" }, "subscription": { - "$ref": "AzureSubscription", - "description": "The Azure subscription associated with the resource." + "$ref": "AzureSubscription" }, "tenant": { - "$ref": "AzureTenant", - "description": "The Azure Entra tenant associated with the resource." + "$ref": "AzureTenant" } }, "type": "object" }, "AzureResourceGroup": { - "description": "Represents an Azure resource group.", "id": "AzureResourceGroup", "properties": { "id": { - "description": "The ID of the Azure resource group.", "type": "string" }, "name": { - "description": "The name of the Azure resource group. This is not a UUID.", "type": "string" } }, "type": "object" }, "AzureSubscription": { - "description": "Represents an Azure subscription.", "id": "AzureSubscription", "properties": { "displayName": { - "description": "The display name of the Azure subscription.", "type": "string" }, "id": { - "description": "The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`.", "type": "string" } }, "type": "object" }, "AzureTenant": { - "description": "Represents a Microsoft Entra tenant.", "id": "AzureTenant", "properties": { "displayName": { - "description": "The display name of the Azure tenant.", "type": "string" }, "id": { - "description": "The ID of the Microsoft Entra tenant, for example, \"a11aaa11-aa11-1aa1-11aa-1aaa11a\".", "type": "string" } }, "type": "object" }, "BackupDisasterRecovery": { - "description": "Information related to Google Cloud Backup and DR Service findings.", "id": "BackupDisasterRecovery", "properties": { "appliance": { - "description": "The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`.", "type": "string" }, "applications": { - "description": "The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.", "items": { "type": "string" }, "type": "array" }, "backupCreateTime": { - "description": "The timestamp at which the Backup and DR backup was created.", "format": "google-datetime", "type": "string" }, "backupTemplate": { - "description": "The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`.", "type": "string" }, "backupType": { - "description": "The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`.", "type": "string" }, "host": { - "description": "The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`.", "type": "string" }, "policies": { - "description": "The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`.", "items": { "type": "string" }, "type": "array" }, "policyOptions": { - "description": "The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`.", "items": { "type": "string" }, "type": "array" }, "profile": { - "description": "The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`.", "type": "string" }, "storagePool": { - "description": "The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`.", "type": "string" } }, "type": "object" }, "BigQueryDestination": { - "description": "The destination BigQuery dataset to export findings to.", "id": "BigQueryDestination", "properties": { "dataset": { - "description": "Required. The relative resource name of the destination dataset, in the form projects/{projectId}/datasets/{datasetId}.", "type": "string" } }, "type": "object" }, "Chokepoint": { - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).", "id": "Chokepoint", "properties": { "relatedFindings": { - "description": "List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings.", "items": { "type": "string" }, @@ -2634,65 +2423,53 @@ "type": "object" }, "CloudArmor": { - "description": "Fields related to Google Cloud Armor findings.", "id": "CloudArmor", "properties": { "adaptiveProtection": { - "$ref": "AdaptiveProtection", - "description": "Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview)." + "$ref": "AdaptiveProtection" }, "attack": { - "$ref": "Attack", - "description": "Information about DDoS attack volume and classification." + "$ref": "Attack" }, "duration": { - "description": "Duration of attack from the start until the current moment (updated every 5 minutes).", "format": "google-duration", "type": "string" }, "requests": { - "$ref": "Requests", - "description": "Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview)." + "$ref": "Requests" }, "securityPolicy": { - "$ref": "SecurityPolicy", - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding." + "$ref": "SecurityPolicy" }, "threatVector": { - "description": "Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, \"L3_4\" for Layer 3 and Layer 4 DDoS attacks, or \"L_7\" for Layer 7 DDoS attacks.", "type": "string" } }, "type": "object" }, "CloudControl": { - "description": "CloudControl associated with the finding.", "id": "CloudControl", "properties": { "cloudControlName": { - "description": "Name of the CloudControl associated with the finding.", "type": "string" }, "policyType": { - "description": "Policy type of the CloudControl", "type": "string" }, "type": { - "description": "Type of cloud control.", "enum": [ "CLOUD_CONTROL_TYPE_UNSPECIFIED", "BUILT_IN", "CUSTOM" ], "enumDescriptions": [ - "Unspecified.", - "Built in Cloud Control.", - "Custom Cloud Control." + "", + "", + "" ], "type": "string" }, "version": { - "description": "Version of the Cloud Control", "format": "int32", "type": "integer" } @@ -2700,31 +2477,27 @@ "type": "object" }, "CloudDlpDataProfile": { - "description": "The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding.", "id": "CloudDlpDataProfile", "properties": { "dataProfile": { - "description": "Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`.", "type": "string" }, "infoTypes": { - "description": "Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type.", "items": { "$ref": "InfoType" }, "type": "array" }, "parentType": { - "description": "The resource hierarchy level at which the data profile was generated.", "enum": [ "PARENT_TYPE_UNSPECIFIED", "ORGANIZATION", "PROJECT" ], "enumDescriptions": [ - "Unspecified parent type.", - "Organization-level configurations.", - "Project-level configurations." + "", + "", + "" ], "type": "string" } @@ -2732,47 +2505,37 @@ "type": "object" }, "CloudDlpInspection": { - "description": "Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding.", "id": "CloudDlpInspection", "properties": { "fullScan": { - "description": "Whether Cloud DLP scanned the complete resource or a sampled subset.", "type": "boolean" }, "infoType": { - "description": "The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.", "type": "string" }, "infoTypeCount": { - "description": "The number of times Cloud DLP found this infoType within this job and resource.", "format": "int64", "type": "string" }, "inspectJob": { - "description": "Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`.", "type": "string" } }, "type": "object" }, "CloudLoggingEntry": { - "description": "Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)", "id": "CloudLoggingEntry", "properties": { "insertId": { - "description": "A unique identifier for the log entry.", "type": "string" }, "logId": { - "description": "The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity`. Note that this field is not URL-encoded, unlike the `LOG_ID` field in `LogEntry`.", "type": "string" }, "resourceContainer": { - "description": "The organization, folder, or project of the monitored resource that produced this log entry.", "type": "string" }, "timestamp": { - "description": "The time the event described by the log entry occurred.", "format": "google-datetime", "type": "string" } @@ -2780,44 +2543,36 @@ "type": "object" }, "Compliance": { - "description": "Contains compliance information about a security standard indicating unmet recommendations.", "id": "Compliance", "properties": { "ids": { - "description": "Policies within the standard or benchmark, for example, A.12.4.1", "items": { "type": "string" }, "type": "array" }, "standard": { - "description": "Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP.", "type": "string" }, "version": { - "description": "Version of the standard or benchmark, for example, 1.1", "type": "string" } }, "type": "object" }, "ComplianceDetails": { - "description": "Compliance Details associated with the finding.", "id": "ComplianceDetails", "properties": { "cloudControl": { - "$ref": "CloudControl", - "description": "CloudControl associated with the finding" + "$ref": "CloudControl" }, "cloudControlDeploymentNames": { - "description": "Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier", "items": { "type": "string" }, "type": "array" }, "frameworks": { - "description": "Details of Frameworks associated with the finding", "items": { "$ref": "Framework" }, @@ -2827,11 +2582,9 @@ "type": "object" }, "Config": { - "description": "Configuration of a module.", "id": "Config", "properties": { "moduleEnablementState": { - "description": "The state of enablement for the module at its level of the resource hierarchy.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -2839,10 +2592,10 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, @@ -2851,27 +2604,22 @@ "description": "Properties of the object.", "type": "any" }, - "description": "The configuration value for the module. The absence of this field implies its inheritance from the parent.", "type": "object" } }, "type": "object" }, "Connection": { - "description": "Contains information about the IP connection associated with the finding.", "id": "Connection", "properties": { "destinationIp": { - "description": "Destination IP address. Not present for sockets that are listening and not connected.", "type": "string" }, "destinationPort": { - "description": "Destination port. Not present for sockets that are listening and not connected.", "format": "int32", "type": "integer" }, "protocol": { - "description": "IANA Internet Protocol Number such as TCP(6) and UDP(17).", "enum": [ "PROTOCOL_UNSPECIFIED", "ICMP", @@ -2881,21 +2629,19 @@ "ESP" ], "enumDescriptions": [ - "Unspecified protocol (not HOPOPT).", - "Internet Control Message Protocol.", - "Transmission Control Protocol.", - "User Datagram Protocol.", - "Generic Routing Encapsulation.", - "Encap Security Payload." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "sourceIp": { - "description": "Source IP address.", "type": "string" }, "sourcePort": { - "description": "Source port.", "format": "int32", "type": "integer" } @@ -2903,22 +2649,18 @@ "type": "object" }, "Contact": { - "description": "The email address of a contact.", "id": "Contact", "properties": { "email": { - "description": "An email address. For example, \"`person123@company.com`\".", "type": "string" } }, "type": "object" }, "ContactDetails": { - "description": "Details about specific contacts", "id": "ContactDetails", "properties": { "contacts": { - "description": "A list of contacts", "items": { "$ref": "Contact" }, @@ -2928,58 +2670,47 @@ "type": "object" }, "Container": { - "description": "Container associated with the finding.", "id": "Container", "properties": { "createTime": { - "description": "The time that the container was created.", "format": "google-datetime", "type": "string" }, "imageId": { - "description": "Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest.", "type": "string" }, "labels": { - "description": "Container labels, as provided by the container runtime.", "items": { "$ref": "Label" }, "type": "array" }, "name": { - "description": "Name of the container.", "type": "string" }, "uri": { - "description": "Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags.", "type": "string" } }, "type": "object" }, "ContainerThreatDetectionSettings": { - "description": "Resource capturing the settings for the Container Threat Detection service.", "id": "ContainerThreatDetectionSettings", "properties": { "modules": { "additionalProperties": { "$ref": "Config" }, - "description": "The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization}/containerThreatDetectionSettings * folders/{folder}/containerThreatDetectionSettings * projects/{project}/containerThreatDetectionSettings * projects/{project}/locations/{location}/clusters/{cluster}/containerThreatDetectionSettings", "type": "string" }, "serviceAccount": { - "description": "Output only. The service account used by Container Threat Detection for scanning. Service accounts are scoped at the project level meaning this field will be empty at any level above a project.", "readOnly": true, "type": "string" }, "serviceEnablementState": { - "description": "The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -2987,15 +2718,14 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The time the settings were last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -3004,35 +2734,28 @@ "type": "object" }, "Control": { - "description": "Compliance control associated with the finding.", "id": "Control", "properties": { "controlName": { - "description": "Name of the Control", "type": "string" }, "displayName": { - "description": "Display name of the control. For example, AU-02.", "type": "string" } }, "type": "object" }, "Cve": { - "description": "CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability.", "id": "Cve", "properties": { "cvssv3": { - "$ref": "Cvssv3", - "description": "Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document" + "$ref": "Cvssv3" }, "exploitReleaseDate": { - "description": "Date the first publicly available exploit or PoC was released.", "format": "google-datetime", "type": "string" }, "exploitationActivity": { - "description": "The exploitation activity of the vulnerability in the wild.", "enum": [ "EXPLOITATION_ACTIVITY_UNSPECIFIED", "WIDE", @@ -3042,26 +2765,23 @@ "NO_KNOWN" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation has been reported or confirmed to widely occur.", - "Limited reported or confirmed exploitation activities.", - "Exploit is publicly available.", - "No known exploitation activity, but has a high potential for exploitation.", - "No known exploitation activity." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "firstExploitationDate": { - "description": "Date of the earliest known exploitation.", "format": "google-datetime", "type": "string" }, "id": { - "description": "The unique identifier for the vulnerability. e.g. CVE-2021-34527", "type": "string" }, "impact": { - "description": "The potential impact of the vulnerability if it was to be exploited.", "enum": [ "RISK_RATING_UNSPECIFIED", "LOW", @@ -3070,56 +2790,49 @@ "CRITICAL" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation would have little to no security impact.", - "Exploitation would enable attackers to perform activities, or could allow attackers to have a direct impact, but would require additional steps.", - "Exploitation would enable attackers to have a notable direct impact without needing to overcome any major mitigating factors.", - "Exploitation would fundamentally undermine the security of affected systems, enable actors to perform significant attacks with minimal effort, with little to no mitigating factors to overcome." + "", + "", + "", + "", + "" ], "type": "string" }, "observedInTheWild": { - "description": "Whether or not the vulnerability has been observed in the wild.", "type": "boolean" }, "references": { - "description": "Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527", "items": { "$ref": "Reference" }, "type": "array" }, "upstreamFixAvailable": { - "description": "Whether upstream fix is available for the CVE.", "type": "boolean" }, "zeroDay": { - "description": "Whether or not the vulnerability was zero day when the finding was published.", "type": "boolean" } }, "type": "object" }, "Cvssv3": { - "description": "Common Vulnerability Scoring System version 3.", "id": "Cvssv3", "properties": { "attackComplexity": { - "description": "This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", "ATTACK_COMPLEXITY_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "Specialized access conditions or extenuating circumstances do not exist. An attacker can expect repeatable success when attacking the vulnerable component.", - "A successful attack depends on conditions beyond the attacker's control. That is, a successful attack cannot be accomplished at will, but requires the attacker to invest in some measurable amount of effort in preparation or execution against the vulnerable component before a successful attack can be expected." + "", + "", + "" ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -3128,16 +2841,15 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.", - "The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.", - "The vulnerable component is not bound to the network stack and the attacker's path is via read/write/execute capabilities.", - "The attack requires the attacker to physically touch or manipulate the vulnerable component." + "", + "", + "", + "", + "" ], "type": "string" }, "availabilityImpact": { - "description": "This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -3145,20 +2857,18 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "baseScore": { - "description": "The base score is a function of the base metric scores.", "format": "double", "type": "number" }, "confidentialityImpact": { - "description": "This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -3166,15 +2876,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "integrityImpact": { - "description": "This metric measures the impact to integrity of a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -3182,15 +2891,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "privilegesRequired": { - "description": "This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -3198,38 +2906,36 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files of the vulnerable system to carry out an attack.", - "The attacker requires privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. Alternatively, an attacker with Low privileges has the ability to access only non-sensitive resources.", - "The attacker requires privileges that provide significant (e.g., administrative) control over the vulnerable component allowing access to component-wide settings and files." + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Invalid value.", - "An exploited vulnerability can only affect resources managed by the same security authority.", - "An exploited vulnerability can affect resources beyond the security scope managed by the security authority of the vulnerable component." + "", + "", + "" ], "type": "string" }, "userInteraction": { - "description": "This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", "USER_INTERACTION_REQUIRED" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable system can be exploited without interaction from any user.", - "Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited." + "", + "", + "" ], "type": "string" } @@ -3237,15 +2943,12 @@ "type": "object" }, "Cwe": { - "description": "CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/).", "id": "Cwe", "properties": { "id": { - "description": "The CWE identifier, e.g. CWE-94", "type": "string" }, "references": { - "description": "Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html", "items": { "$ref": "Reference" }, @@ -3255,20 +2958,16 @@ "type": "object" }, "DataAccessEvent": { - "description": "Details about a data access attempt made by a principal not authorized under applicable data security policy.", "id": "DataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -3276,35 +2975,30 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other.", "type": "string" } }, "type": "object" }, "DataFlowEvent": { - "description": "Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy.", "id": "DataFlowEvent", "properties": { "eventId": { - "description": "Unique identifier for data flow event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data flow event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal for the data flow event.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -3312,40 +3006,34 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other.", "type": "string" }, "violatedLocation": { - "description": "Non-compliant location of the principal or the data destination.", "type": "string" } }, "type": "object" }, "DataRetentionDeletionEvent": { - "description": "Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments.", "id": "DataRetentionDeletionEvent", "properties": { "dataObjectCount": { - "description": "Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000.", "format": "int64", "type": "string" }, "eventDetectionTime": { - "description": "Timestamp indicating when the event was detected.", "format": "google-datetime", "type": "string" }, "eventType": { - "description": "Type of the DRD event.", "enum": [ "EVENT_TYPE_UNSPECIFIED", "EVENT_TYPE_MAX_TTL_EXCEEDED", @@ -3361,21 +3049,19 @@ false ], "enumDescriptions": [ - "Unspecified event type.", - "Deprecated: This field is pending removal. Use EVENT_TYPE_MAX_TTL_FROM_CREATION or EVENT_TYPE_MAX_TTL_FROM_LAST_MODIFICATION instead.", - "Max TTL from the asset's creation time.", - "Max TTL from the asset's last modification time.", - "Min TTL from the asset's creation time." + "", + "", + "", + "", + "" ], "type": "string" }, "maxRetentionAllowed": { - "description": "Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days.", "format": "google-duration", "type": "string" }, "minRetentionAllowed": { - "description": "Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION.", "format": "google-duration", "type": "string" } @@ -3383,64 +3069,51 @@ "type": "object" }, "Database": { - "description": "Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided.", "id": "Database", "properties": { "displayName": { - "description": "The human-readable name of the database that the user connected to.", "type": "string" }, "grantees": { - "description": "The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory.", "type": "string" }, "query": { - "description": "The SQL statement that is associated with the database access.", "type": "string" }, "userName": { - "description": "The username used to connect to the database. The username might not be an IAM principal and does not have a set format.", "type": "string" }, "version": { - "description": "The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).", "type": "string" } }, "type": "object" }, "Dataset": { - "description": "Vertex AI dataset associated with the finding.", "id": "Dataset", "properties": { "displayName": { - "description": "The user defined display name of dataset, e.g. plants-dataset", "type": "string" }, "name": { - "description": "Resource name of the dataset, e.g. projects/{project}/locations/{location}/datasets/2094040236064505856", "type": "string" }, "source": { - "description": "Data source, such as BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod", "type": "string" } }, "type": "object" }, "Denied": { - "description": "Denied IP rule.", "id": "Denied", "properties": { "ipRules": { - "description": "Optional. Optional list of denied IP rules.", "items": { "$ref": "IpRule" }, @@ -3450,36 +3123,38 @@ "type": "object" }, "Details": { - "description": "Details of a subscription.", "id": "Details", "properties": { "endTime": { - "description": "The time the subscription has or will end.", "format": "google-datetime", "type": "string" }, "startTime": { - "description": "The time the subscription has or will start.", "format": "google-datetime", "type": "string" }, "type": { - "description": "The type of subscription", "enum": [ "TYPE_UNSPECIFIED", "STANDARD", "TRIAL", "ALPHA", "DEMO", - "PAY_AS_YOU_GO" + "PAY_AS_YOU_GO", + "SUBSCRIPTION", + "SUB_FIXED", + "SUB_BASE_OVERAGE" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The standard subscription.", - "The trial subscription.", - "The alpha subscription.", - "The demo subscription for channel partners.", - "Pay-as-you-go subscription." + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -3487,15 +3162,12 @@ "type": "object" }, "Detection": { - "description": "Memory hash detection contributing to the binary family match.", "id": "Detection", "properties": { "binary": { - "description": "The name of the binary associated with the memory hash signature detection.", "type": "string" }, "percentPagesMatched": { - "description": "The percentage of memory page hashes in the signature that were matched.", "format": "double", "type": "number" } @@ -3503,35 +3175,29 @@ "type": "object" }, "DiscoveredWorkload": { - "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", "id": "DiscoveredWorkload", "properties": { "confidence": { - "description": "The confidence in detection of this workload.", "enum": [ "CONFIDENCE_UNSPECIFIED", "CONFIDENCE_HIGH" ], "enumDescriptions": [ - "Unspecified confidence level.", - "High confidence in detection of a workload." + "", + "" ], "type": "string" }, "detectedRelevantHardware": { - "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", "type": "boolean" }, "detectedRelevantKeywords": { - "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", "type": "boolean" }, "detectedRelevantPackages": { - "description": "A boolean flag set to true if installed packages strongly predict the workload type.", "type": "boolean" }, "workloadType": { - "description": "The type of workload.", "enum": [ "WORKLOAD_TYPE_UNSPECIFIED", "MCP_SERVER", @@ -3539,10 +3205,10 @@ "AGENT" ], "enumDescriptions": [ - "Unspecified workload type", - "A workload of type MCP Server", - "A workload of type AI Inference", - "A workload of type LLM Agent" + "", + "", + "", + "" ], "type": "string" } @@ -3550,79 +3216,64 @@ "type": "object" }, "Disk": { - "description": "Contains information about the disk associated with the finding.", "id": "Disk", "properties": { "name": { - "description": "The name of the disk, for example, \"https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}\".", "type": "string" } }, "type": "object" }, "DiskPath": { - "description": "Path of the file in terms of underlying disk/partition identifiers.", "id": "DiskPath", "properties": { "partitionUuid": { - "description": "UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)", "type": "string" }, "relativePath": { - "description": "Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh", "type": "string" } }, "type": "object" }, "DynamicMuteRecord": { - "description": "The record of a dynamic mute rule that matches the finding.", "id": "DynamicMuteRecord", "properties": { "matchTime": { - "description": "When the dynamic mute rule first matched the finding.", "format": "google-datetime", "type": "string" }, "muteConfig": { - "description": "The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`.", "type": "string" } }, "type": "object" }, "EnvironmentVariable": { - "description": "A name-value pair representing an environment variable used in an operating system process.", "id": "EnvironmentVariable", "properties": { "name": { - "description": "Environment variable name as a JSON encoded string.", "type": "string" }, "val": { - "description": "Environment variable value as a JSON encoded string.", "type": "string" } }, "type": "object" }, "EventThreatDetectionSettings": { - "description": "Resource capturing the settings for the Event Threat Detection service.", "id": "EventThreatDetectionSettings", "properties": { "modules": { "additionalProperties": { "$ref": "Config" }, - "description": "The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization}/eventThreatDetectionSettings * folders/{folder}/eventThreatDetectionSettings * projects/{project}/eventThreatDetectionSettings", "type": "string" }, "serviceEnablementState": { - "description": "The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -3630,15 +3281,14 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The time the settings were last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -3647,43 +3297,36 @@ "type": "object" }, "ExfilResource": { - "description": "Resource where data was exfiltrated from or exfiltrated to.", "id": "ExfilResource", "properties": { "components": { - "description": "Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name).", "type": "string" } }, "type": "object" }, "Exfiltration": { - "description": "Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to.", "id": "Exfiltration", "properties": { "sources": { - "description": "If there are multiple sources, then the data is considered \"joined\" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source.", "items": { "$ref": "ExfilResource" }, "type": "array" }, "targets": { - "description": "If there are multiple targets, each target would get a complete copy of the \"joined\" source data.", "items": { "$ref": "ExfilResource" }, "type": "array" }, "totalExfiltratedBytes": { - "description": "Total exfiltrated bytes processed for the entire job.", "format": "int64", "type": "string" } @@ -3691,15 +3334,12 @@ "type": "object" }, "ExportFindingsMetadata": { - "description": "The LRO metadata for a ExportFindings request.", "id": "ExportFindingsMetadata", "properties": { "bigQueryDestination": { - "$ref": "BigQueryDestination", - "description": "Required. The destination BigQuery dataset to export findings to." + "$ref": "BigQueryDestination" }, "exportStartTime": { - "description": "Optional. Timestamp at which export was started", "format": "google-datetime", "type": "string" } @@ -3707,176 +3347,139 @@ "type": "object" }, "ExportFindingsResponse": { - "description": "The response to a ExportFindings request. Contains the LRO information.", "id": "ExportFindingsResponse", "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" }, "ExternalExposure": { - "description": "Details about the externally exposed resource associated with the finding.", "id": "ExternalExposure", "properties": { "backendBucket": { - "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", "type": "string" }, "backendService": { - "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "exposedApplication": { - "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", "type": "string" }, "exposedEndpoint": { - "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" }, "exposedService": { - "description": "The name and version of the service, for example, \"Jupyter Notebook 6.14.0\".", "type": "string" }, "forwardingRule": { - "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, "hostnameUri": { - "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", "type": "string" }, "httpResponse": { - "description": "The http response returned by the web application.", "items": { "$ref": "HttpResponse" }, "type": "array" }, "instanceGroup": { - "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, "internalBackendService": { - "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "loadBalancerFirewallPolicy": { - "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" }, "networkEndpointGroup": { - "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, "networkIngressFirewallPolicy": { - "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", "type": "string" }, "privateIpAddress": { - "description": "Private IP address of the exposed endpoint.", "type": "string" }, "privatePort": { - "description": "Port number associated with private IP address.", "type": "string" }, "pscNetworkAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", "type": "string" }, "pscServiceAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", "type": "string" }, "publicIpAddress": { - "description": "Public IP address of the exposed endpoint.", "type": "string" }, "publicPort": { - "description": "Public port number of the exposed endpoint.", "type": "string" }, "serviceFirewallPolicy": { - "description": "The full resource name of the firewall policy of the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" } }, "type": "object" }, "File": { - "description": "File information about the related binary/library used by an executable, or the script used by a script interpreter", "id": "File", "properties": { "contents": { - "description": "Prefix of the file contents as a JSON-encoded string.", "type": "string" }, "diskPath": { - "$ref": "DiskPath", - "description": "Path of the file in terms of underlying disk/partition identifiers." + "$ref": "DiskPath" }, "fileLoadState": { - "description": "The load state of the file.", "enum": [ "FILE_LOAD_STATE_UNSPECIFIED", "LOADED_BY_PROCESS", "NOT_LOADED_BY_PROCESS" ], "enumDescriptions": [ - "The file state is unspecified.", - "The file is being used by an active process at the time of scanning.", - "The file is not being used by any active process at the time of scanning." + "", + "", + "" ], "type": "string" }, "hashedSize": { - "description": "The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file.", "format": "int64", "type": "string" }, "operations": { - "description": "Operation(s) performed on a file.", "items": { "$ref": "FileOperation" }, "type": "array" }, "partiallyHashed": { - "description": "True when the hash covers only a prefix of the file.", "type": "boolean" }, "path": { - "description": "Absolute path of the file as a JSON encoded string.", "type": "string" }, "sha256": { - "description": "SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file.", "type": "string" }, "size": { - "description": "Size of the file in bytes.", "format": "int64", "type": "string" } @@ -3884,11 +3487,9 @@ "type": "object" }, "FileOperation": { - "description": "Operation(s) performed on a file.", "id": "FileOperation", "properties": { "type": { - "description": "The type of the operation", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "OPEN", @@ -3898,12 +3499,12 @@ "EXECUTE" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents an open operation.", - "Represents a read operation.", - "Represents a rename operation.", - "Represents a write operation.", - "Represents an execute operation." + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -3911,81 +3512,63 @@ "type": "object" }, "Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.", "id": "Finding", "properties": { "access": { - "$ref": "Access", - "description": "Access details associated with the finding, such as more information on the caller, which method was accessed, and from where." + "$ref": "Access" }, "affectedResources": { - "$ref": "AffectedResources", - "description": "AffectedResources associated with the finding." + "$ref": "AffectedResources" }, "agentDataAccessEvents": { - "description": "Agent data access events associated with the finding.", "items": { "$ref": "AgentDataAccessEvent" }, "type": "array" }, "aiModel": { - "$ref": "AiModel", - "description": "The AI model associated with the finding." + "$ref": "AiModel" }, "application": { - "$ref": "Application", - "description": "Represents an application associated with the finding." + "$ref": "Application" }, "artifactGuardPolicies": { - "$ref": "ArtifactGuardPolicies", - "description": "ArtifactGuardPolicies associated with the finding." + "$ref": "ArtifactGuardPolicies" }, "attackExposure": { - "$ref": "AttackExposure", - "description": "The results of an attack path simulation relevant to this finding." + "$ref": "AttackExposure" }, "backupDisasterRecovery": { - "$ref": "BackupDisasterRecovery", - "description": "Fields related to Backup and DR findings." + "$ref": "BackupDisasterRecovery" }, "canonicalName": { - "description": "The canonical name of the finding. It's either \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\" or \"projects/{project_number}/sources/{source_id}/findings/{finding_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "chokepoint": { - "$ref": "Chokepoint", - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests." + "$ref": "Chokepoint" }, "cloudArmor": { - "$ref": "CloudArmor", - "description": "Fields related to Cloud Armor findings." + "$ref": "CloudArmor" }, "cloudDlpDataProfile": { - "$ref": "CloudDlpDataProfile", - "description": "Cloud DLP data profile that is associated with the finding." + "$ref": "CloudDlpDataProfile" }, "cloudDlpInspection": { - "$ref": "CloudDlpInspection", - "description": "Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding." + "$ref": "CloudDlpInspection" }, "complianceDetails": { - "$ref": "ComplianceDetails", - "description": "Details about the compliance implications of the finding." + "$ref": "ComplianceDetails" }, "compliances": { - "description": "Contains compliance information for security standards associated to the finding.", "items": { "$ref": "Compliance" }, "type": "array" }, "connections": { - "description": "Contains information about the IP connection associated with the finding.", "items": { "$ref": "Connection" }, @@ -3995,93 +3578,76 @@ "additionalProperties": { "$ref": "ContactDetails" }, - "description": "Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { \"security\": { \"contacts\": [ { \"email\": \"person1@company.com\" }, { \"email\": \"person2@company.com\" } ] } }", "readOnly": true, "type": "object" }, "containers": { - "description": "Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.", "items": { "$ref": "Container" }, "type": "array" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "dataAccessEvents": { - "description": "Data access events associated with the finding.", "items": { "$ref": "DataAccessEvent" }, "type": "array" }, "dataFlowEvents": { - "description": "Data flow events associated with the finding.", "items": { "$ref": "DataFlowEvent" }, "type": "array" }, "dataRetentionDeletionEvents": { - "description": "Data retention deletion events associated with the finding.", "items": { "$ref": "DataRetentionDeletionEvent" }, "type": "array" }, "database": { - "$ref": "Database", - "description": "Database associated with the finding." + "$ref": "Database" }, "description": { - "description": "Contains more details about the finding.", "type": "string" }, "discoveredWorkload": { - "$ref": "DiscoveredWorkload", - "description": "DiscoveredWorkload associated with the finding." + "$ref": "DiscoveredWorkload" }, "disk": { - "$ref": "Disk", - "description": "Disk associated with the finding." + "$ref": "Disk" }, "eventTime": { - "description": "The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "exfiltration": { - "$ref": "Exfiltration", - "description": "Represents exfiltrations associated with the finding." + "$ref": "Exfiltration" }, "externalExposure": { - "$ref": "ExternalExposure", - "description": "External exposure associated with the finding." + "$ref": "ExternalExposure" }, "externalSystems": { "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV1ExternalSystem" }, - "description": "Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.", "readOnly": true, "type": "object" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "files": { - "description": "File associated with the finding.", "items": { "$ref": "File" }, "type": "array" }, "findingClass": { - "description": "The class of the finding.", "enum": [ "FINDING_CLASS_UNSPECIFIED", "THREAT", @@ -4097,79 +3663,67 @@ "SECRET" ], "enumDescriptions": [ - "Unspecified finding class.", - "Describes unwanted or malicious activity.", - "Describes a potential weakness in software that increases risk to Confidentiality & Integrity & Availability.", - "Describes a potential weakness in cloud resource/asset configuration that increases risk.", - "Describes a security observation that is for informational purposes.", - "Describes an error that prevents some SCC functionality.", - "Describes a potential security risk due to a change in the security posture.", - "Describes a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", - "Describes a potential security risk to data assets that contain sensitive data.", - "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet.", - "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "groupMemberships": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.", "items": { "$ref": "GroupMembership" }, "type": "array" }, "iamBindings": { - "description": "Represents IAM bindings associated with the finding.", "items": { "$ref": "IamBinding" }, "type": "array" }, "indicator": { - "$ref": "Indicator", - "description": "Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise)." + "$ref": "Indicator" }, "ipRules": { - "$ref": "IpRules", - "description": "IP rules associated with the finding." + "$ref": "IpRules" }, "job": { - "$ref": "Job", - "description": "Job associated with the finding." + "$ref": "Job" }, "kernelRootkit": { - "$ref": "KernelRootkit", - "description": "Signature of the kernel rootkit." + "$ref": "KernelRootkit" }, "kubernetes": { - "$ref": "Kubernetes", - "description": "Kubernetes resources associated with the finding." + "$ref": "Kubernetes" }, "loadBalancers": { - "description": "The load balancers associated with the finding.", "items": { "$ref": "LoadBalancer" }, "type": "array" }, "logEntries": { - "description": "Log entries that are relevant to the finding.", "items": { "$ref": "LogEntry" }, "type": "array" }, "mitreAttack": { - "$ref": "MitreAttack", - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org" + "$ref": "MitreAttack" }, "moduleName": { - "description": "Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885", "type": "string" }, "mute": { - "description": "Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -4177,93 +3731,76 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" }, "muteInfo": { "$ref": "MuteInfo", - "description": "Output only. The mute information regarding this finding.", "readOnly": true }, "muteInitiator": { - "description": "Records additional information about the mute operation, for example, the [mute configuration](/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding.", "type": "string" }, "muteUpdateTime": { - "description": "Output only. The most recent time this finding was muted or unmuted.", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\", \"projects/{project_id}/sources/{source_id}/findings/{finding_id}\".", "type": "string" }, "networks": { - "description": "Represents the VPC networks that the resource is attached to.", "items": { "$ref": "Network" }, "type": "array" }, "nextSteps": { - "description": "Steps to address the finding.", "type": "string" }, "notebook": { - "$ref": "Notebook", - "description": "Notebook associated with the finding." + "$ref": "Notebook" }, "orgPolicies": { - "description": "Contains information about the org policies associated with the finding.", "items": { "$ref": "OrgPolicy" }, "type": "array" }, "parent": { - "description": "The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "parentDisplayName": { - "description": "Output only. The human readable display name of the finding source such as \"Event Threat Detection\" or \"Security Health Analytics\".", "readOnly": true, "type": "string" }, "policyViolationSummary": { - "$ref": "PolicyViolationSummary", - "description": "PolicyViolationSummary associated with the finding." + "$ref": "PolicyViolationSummary" }, "processes": { - "description": "Represents operating system processes associated with the Finding.", "items": { "$ref": "Process" }, "type": "array" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "secret": { - "$ref": "Secret", - "description": "Secret associated with the finding." + "$ref": "Secret" }, "securityMarks": { "$ref": "SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "securityPosture": { - "$ref": "SecurityPosture", - "description": "The security posture associated with the finding." + "$ref": "SecurityPosture" }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -4272,11 +3809,11 @@ "LOW" ], "enumDescriptions": [ - "This value is used for findings when a source doesn't write a severity value.", - "Vulnerability: A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. Threat: Indicates a threat that is able to access, modify, or delete data or execute unauthorized code within existing resources.", - "Vulnerability: A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities in order to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. Threat: Indicates a threat that is able to create new computational resources in an environment but not able to access data or execute code in existing resources.", - "Vulnerability: A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. Threat: Indicates a threat that is able to cause operational impact but may not access data or execute unauthorized code.", - "Vulnerability: A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. Threat: Indicates a threat that has obtained minimal access to an environment but is not able to access data, execute code, or create resources." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -4284,59 +3821,49 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" }, "toxicCombination": { - "$ref": "ToxicCombination", - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests." + "$ref": "ToxicCombination" }, "vertexAi": { - "$ref": "VertexAi", - "description": "VertexAi associated with the finding." + "$ref": "VertexAi" }, "vulnerability": { - "$ref": "Vulnerability", - "description": "Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "Vulnerability" } }, "type": "object" }, "Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "Framework": { - "description": "Compliance framework associated with the finding.", "id": "Framework", "properties": { "category": { - "description": "Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads", "items": { "enum": [ "FRAMEWORK_CATEGORY_UNSPECIFIED", @@ -4347,43 +3874,39 @@ "CUSTOM_FRAMEWORK" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Security Benchmarks framework", - "Assured Workloads framework", - "Data Security framework", - "Google Best Practices framework", - "A user-created framework" + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "controls": { - "description": "The controls associated with the framework.", "items": { "$ref": "Control" }, "type": "array" }, "displayName": { - "description": "Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework", "type": "string" }, "name": { - "description": "Name of the framework associated with the finding", "type": "string" }, "type": { - "description": "Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture)", "enum": [ "FRAMEWORK_TYPE_UNSPECIFIED", "FRAMEWORK_TYPE_BUILT_IN", "FRAMEWORK_TYPE_CUSTOM" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The framework is a built-in framework if it is created and managed by GCP.", - "The framework is a custom framework if it is created and managed by the user." + "", + "", + "" ], "type": "string" } @@ -4391,11 +3914,9 @@ "type": "object" }, "GcpMetadata": { - "description": "Google Cloud metadata associated with the resource. Only applicable if the finding's cloud provider is Google Cloud.", "id": "GcpMetadata", "properties": { "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "GoogleCloudSecuritycenterV2Folder" }, @@ -4403,77 +3924,61 @@ "type": "array" }, "organization": { - "description": "The name of the organization that the resource belongs to.", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" } }, "type": "object" }, "Geolocation": { - "description": "Represents a geographical location for a given access.", "id": "Geolocation", "properties": { "regionCode": { - "description": "A CLDR.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1BigQueryExport": { - "description": "Configures how to deliver Findings to BigQuery Instance.", "id": "GoogleCloudSecuritycenterV1BigQueryExport", "properties": { "createTime": { - "description": "Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "dataset": { - "description": "The dataset to write findings' updates to. Its format is \"projects/[project_id]/datasets/[bigquery_dataset_id]\". BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).", "type": "string" }, "description": { - "description": "The description of the export (max of 1024 characters).", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: \"organizations/{organization_id}/bigQueryExports/{export_id}\" Example format: \"folders/{folder_id}/bigQueryExports/{export_id}\" Example format: \"projects/{project_id}/bigQueryExports/{export_id}\" This field is provided in responses, and is ignored when provided in create requests.", "type": "string" }, "principal": { - "description": "Output only. The service account that needs permission to create table and upload data to the BigQuery dataset.", "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -4482,23 +3987,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV1Binding": { - "description": "Represents a Kubernetes RoleBinding or ClusterRoleBinding.", "id": "GoogleCloudSecuritycenterV1Binding", "properties": { "name": { - "description": "Name for the binding.", "type": "string" }, "ns": { - "description": "Namespace for the binding.", "type": "string" }, "role": { - "$ref": "Role", - "description": "The Role or ClusterRole referenced by the binding." + "$ref": "Role" }, "subjects": { - "description": "Represents one or more subjects that are bound to the role. Not always available for PATCH requests.", "items": { "$ref": "Subject" }, @@ -4508,37 +4008,29 @@ "type": "object" }, "GoogleCloudSecuritycenterV1BulkMuteFindingsResponse": { - "description": "The response to a BulkMute request. Contains the LRO information.", "id": "GoogleCloudSecuritycenterV1BulkMuteFindingsResponse", "properties": {}, "type": "object" }, "GoogleCloudSecuritycenterV1CustomConfig": { - "description": "Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify.", "id": "GoogleCloudSecuritycenterV1CustomConfig", "properties": { "customOutput": { - "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec", - "description": "Custom output properties." + "$ref": "GoogleCloudSecuritycenterV1CustomOutputSpec" }, "description": { - "description": "Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks.", "type": "string" }, "predicate": { - "$ref": "Expr", - "description": "The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated." + "$ref": "Expr" }, "recommendation": { - "description": "An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the `nextSteps` property of the finding JSON.", "type": "string" }, "resourceSelector": { - "$ref": "GoogleCloudSecuritycenterV1ResourceSelector", - "description": "The resource types that the custom module operates on. Each custom module can specify up to 5 resource types." + "$ref": "GoogleCloudSecuritycenterV1ResourceSelector" }, "severity": { - "description": "The severity to assign to findings generated by the module.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -4547,11 +4039,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified severity.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" } @@ -4559,11 +4051,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1CustomOutputSpec": { - "description": "A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under `sourceProperties`.", "id": "GoogleCloudSecuritycenterV1CustomOutputSpec", "properties": { "properties": { - "description": "A list of custom output properties to add to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV1Property" }, @@ -4573,11 +4063,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule": { - "description": "An EffectiveSecurityHealthAnalyticsCustomModule is the representation of a Security Health Analytics custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective enablement_state for the module in all child folders or projects is also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only.", "id": "GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule", "properties": { "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -4585,40 +4073,36 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "customConfig": { "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "Output only. The user-specified configuration for the module.", "readOnly": true }, "displayName": { - "description": "Output only. The display name for the custom module. The name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only.", "readOnly": true, "type": "string" }, "enablementState": { - "description": "Output only. The effective state of enablement for the module at the given level of the hierarchy.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", "DISABLED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given level.", - "The module is disabled at the given level." + "", + "", + "" ], "readOnly": true, "type": "string" }, "name": { - "description": "Output only. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule}\"", "readOnly": true, "type": "string" } @@ -4626,116 +4110,94 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ExternalSystem": { - "description": "Representation of third party SIEM/SOAR fields within SCC.", "id": "GoogleCloudSecuritycenterV1ExternalSystem", "properties": { "assignees": { - "description": "References primary/secondary etc assignees in the external system.", "items": { "type": "string" }, "type": "array" }, "caseCloseTime": { - "description": "The time when the case was closed, as reported by the external system.", "format": "google-datetime", "type": "string" }, "caseCreateTime": { - "description": "The time when the case was created, as reported by the external system.", "format": "google-datetime", "type": "string" }, "casePriority": { - "description": "The priority of the finding's corresponding case in the external system.", "type": "string" }, "caseSla": { - "description": "The SLA of the finding's corresponding case in the external system.", "format": "google-datetime", "type": "string" }, "caseUri": { - "description": "The link to the finding's corresponding case in the external system.", "type": "string" }, "externalSystemUpdateTime": { - "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", "type": "string" }, "externalUid": { - "description": "The identifier that's used to track the finding's corresponding case in the external system.", "type": "string" }, "name": { - "description": "Full resource name of the external system, for example: \"organizations/1234/sources/5678/findings/123456/externalSystems/jira\", \"folders/1234/sources/5678/findings/123456/externalSystems/jira\", \"projects/1234/sources/5678/findings/123456/externalSystems/jira\"", "type": "string" }, "status": { - "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" }, "ticketInfo": { - "$ref": "TicketInfo", - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." + "$ref": "TicketInfo" } }, "type": "object" }, "GoogleCloudSecuritycenterV1MuteConfig": { - "description": "A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings.", "id": "GoogleCloudSecuritycenterV1MuteConfig", "properties": { "createTime": { - "description": "Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "A description of the mute config.", "type": "string" }, "displayName": { "deprecated": true, - "description": "The human readable name to be displayed for the mute config.", "type": "string" }, "expiryTime": { - "description": "Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings.", "format": "google-datetime", "type": "string" }, "filter": { - "description": "Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:`", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "This field will be ignored if provided on config creation. Format `organizations/{organization}/muteConfigs/{mute_config}` `folders/{folder}/muteConfigs/{mute_config}` `projects/{project}/muteConfigs/{mute_config}` `organizations/{organization}/locations/global/muteConfigs/{mute_config}` `folders/{folder}/locations/global/muteConfigs/{mute_config}` `projects/{project}/locations/global/muteConfigs/{mute_config}`", "type": "string" }, "type": { - "description": "Optional. The type of the mute config, which determines what type of mute state the config affects. The static mute state takes precedence over the dynamic mute state. Immutable after creation. STATIC by default if not set during creation.", "enum": [ "MUTE_CONFIG_TYPE_UNSPECIFIED", "STATIC", "DYNAMIC" ], "enumDescriptions": [ - "Unused.", - "A static mute config, which sets the static mute state of future matching findings to muted. Once the static mute state has been set, finding or config modifications will not affect the state.", - "A dynamic mute config, which is applied to existing and future matching findings, setting their dynamic mute state to \"muted\". If the config is updated or deleted, or a matching finding is updated, such that the finding doesn't match the config, the config will be removed from the finding, and the finding's dynamic mute state may become \"unmuted\" (unless other configs still match)." + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -4744,69 +4206,54 @@ "type": "object" }, "GoogleCloudSecuritycenterV1NotificationMessage": { - "description": "Cloud SCC's Notification", "id": "GoogleCloudSecuritycenterV1NotificationMessage", "properties": { "finding": { - "$ref": "Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV1Resource", - "description": "The Cloud resource tied to this notification's Finding." + "$ref": "GoogleCloudSecuritycenterV1Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV1Property": { - "description": "An individual name-value pair that defines a custom source property.", "id": "GoogleCloudSecuritycenterV1Property", "properties": { "name": { - "description": "Name of the property for the custom output.", "type": "string" }, "valueExpression": { - "$ref": "Expr", - "description": "The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks." + "$ref": "Expr" } }, "type": "object" }, "GoogleCloudSecuritycenterV1Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV1Resource", "properties": { "adcApplication": { - "$ref": "AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "AdcApplication" }, "adcApplicationTemplate": { - "$ref": "AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplication" }, "awsMetadata": { - "$ref": "AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "AwsMetadata" }, "azureMetadata": { - "$ref": "AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the resource resides in.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -4814,19 +4261,17 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "Folder" }, @@ -4834,95 +4279,75 @@ "type": "array" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "organization": { - "description": "Indicates which organization or tenant in the cloud provider the finding applies to.", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project ID that the resource belongs to.", "type": "string" }, "resourcePath": { - "$ref": "ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/projects/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The parent service or product from which the resource is provided, for example, GKE or SNS.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplication": { - "description": "The App Hub Application associated with the finding's resource.", "id": "GoogleCloudSecuritycenterV1ResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo" }, @@ -4932,22 +4357,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -4956,11 +4377,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -4968,11 +4389,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -4981,11 +4400,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -4993,11 +4412,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceSelector": { - "description": "Resource for selecting resource type.", "id": "GoogleCloudSecuritycenterV1ResourceSelector", "properties": { "resourceTypes": { - "description": "The resource types to run the detector on.", "items": { "type": "string" }, @@ -5007,11 +4424,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1ResourceValueConfig": { - "description": "A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations.", "id": "GoogleCloudSecuritycenterV1ResourceValueConfig", "properties": { "cloudProvider": { - "description": "Cloud provider this configuration applies to", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -5019,40 +4434,34 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Timestamp this resource value configuration was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Description of the resource value configuration.", "type": "string" }, "name": { - "description": "Name for the resource value configuration", "type": "string" }, "resourceLabelsSelector": { "additionalProperties": { "type": "string" }, - "description": "List of resource labels to search for, evaluated with `AND`. For example, `\"resource_labels_selector\": {\"key\": \"value\", \"env\": \"prod\"}` will match resources with labels \"key\": \"value\" `AND` \"env\": \"prod\" https://cloud.google.com/resource-manager/docs/creating-managing-labels", "type": "object" }, "resourceType": { - "description": "Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, \"storage.googleapis.com/Bucket\" with resource_value \"HIGH\" will apply \"HIGH\" value only to \"storage.googleapis.com/Bucket\" resources.", "type": "string" }, "resourceValue": { - "description": "Required. Resource value level this expression represents", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -5061,31 +4470,27 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "Project or folder to scope this configuration to. For example, \"project/456\" would apply this configuration only to resources in \"project/456\" scope will be checked with `AND` of other resources.", "type": "string" }, "sensitiveDataProtectionMapping": { - "$ref": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping", - "description": "A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. \"bigquery.googleapis.com/Dataset\"." + "$ref": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping" }, "tagValues": { - "description": "Required. Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of \"tagValues/123\". Example: `[ \"tagValues/123\", \"tagValues/456\", \"tagValues/789\" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing", "items": { "type": "string" }, "type": "array" }, "updateTime": { - "description": "Output only. Timestamp this resource value configuration was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -5094,16 +4499,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -5111,10 +4513,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -5122,16 +4524,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule": { - "description": "Represents an instance of a Security Health Analytics custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by the child folders and projects.", "id": "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule", "properties": { "ancestorModule": { - "description": "Output only. If empty, indicates that the custom module was created in the organization, folder, or project in which you are viewing the custom module. Otherwise, `ancestor_module` specifies the organization or folder from which the custom module is inherited.", "readOnly": true, "type": "string" }, "cloudProvider": { - "description": "The cloud provider of the custom module.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -5139,23 +4538,20 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services (AWS).", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "customConfig": { - "$ref": "GoogleCloudSecuritycenterV1CustomConfig", - "description": "The user specified custom configuration for the module." + "$ref": "GoogleCloudSecuritycenterV1CustomConfig" }, "displayName": { - "description": "The display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only.", "type": "string" }, "enablementState": { - "description": "The enablement state of the custom module.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "ENABLED", @@ -5163,24 +4559,21 @@ "INHERITED" ], "enumDescriptions": [ - "Unspecified enablement state.", - "The module is enabled at the given CRM resource.", - "The module is disabled at the given CRM resource.", - "State is inherited from an ancestor module. The module will either be effectively ENABLED or DISABLED based on its closest non-inherited ancestor module in the CRM hierarchy." + "", + "", + "", + "" ], "type": "string" }, "lastEditor": { - "description": "Output only. The editor that last updated the custom module.", "readOnly": true, "type": "string" }, "name": { - "description": "Immutable. The resource name of the custom module. Its format is \"organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}\", or \"projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}\" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits.", "type": "string" }, "updateTime": { - "description": "Output only. The time at which the custom module was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -5189,11 +4582,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping": { - "description": "Resource value mapping for Sensitive Data Protection findings. If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration.", "id": "GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping", "properties": { "highSensitivityMapping": { - "description": "Resource value mapping for high-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -5202,16 +4593,15 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "mediumSensitivityMapping": { - "description": "Resource value mapping for medium-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -5220,11 +4610,11 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" } @@ -5232,16 +4622,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -5249,10 +4636,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -5260,50 +4647,39 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV1p1beta1Finding", "properties": { "canonicalName": { - "description": "The canonical name of the finding. It's either \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\", \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}\" or \"projects/{project_number}/sources/{source_id}/findings/{finding_id}\", depending on the closest CRM ancestor of the resource associated with the finding.", "type": "string" }, "category": { - "description": "The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "createTime": { - "description": "The time at which the finding was created in Security Command Center.", "format": "google-datetime", "type": "string" }, "eventTime": { - "description": "The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. Must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "name": { - "description": "The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}\"", "type": "string" }, "parent": { - "description": "The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: \"organizations/{organization_id}/sources/{source_id}\"", "type": "string" }, "resourceName": { - "description": "For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time.", "type": "string" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV1p1beta1SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -5312,11 +4688,11 @@ "LOW" ], "enumDescriptions": [ - "No severity specified. The default value.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -5324,20 +4700,18 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "type": "string" } @@ -5345,45 +4719,36 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "GoogleCloudSecuritycenterV1p1beta1Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1NotificationMessage": { - "description": "Security Command Center's Notification", "id": "GoogleCloudSecuritycenterV1p1beta1NotificationMessage", "properties": { "finding": { - "$ref": "GoogleCloudSecuritycenterV1p1beta1Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "GoogleCloudSecuritycenterV1p1beta1Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV1p1beta1Resource", - "description": "The Cloud resource tied to the notification." + "$ref": "GoogleCloudSecuritycenterV1p1beta1Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV1p1beta1Resource", "properties": { "folders": { - "description": "Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization.", "items": { "$ref": "GoogleCloudSecuritycenterV1p1beta1Folder" }, @@ -5391,39 +4756,31 @@ "type": "array" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "parent": { - "description": "The full resource name of resource's parent.", "type": "string" }, "parentDisplayName": { - "description": "The human readable name of resource's parent.", "type": "string" }, "project": { - "description": "The full resource name of project that the resource belongs to.", "type": "string" }, "projectDisplayName": { - "description": "The project id that the resource belongs to.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse": { - "description": "Response of asset discovery run", "id": "GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse", "properties": { "duration": { - "description": "The duration between asset discovery run start and end", "format": "google-duration", "type": "string" }, "state": { - "description": "The state of an asset discovery run.", "enum": [ "STATE_UNSPECIFIED", "COMPLETED", @@ -5431,10 +4788,10 @@ "TERMINATED" ], "enumDescriptions": [ - "Asset discovery run state was unspecified.", - "Asset discovery run completed successfully.", - "Asset discovery run was cancelled with tasks still pending, as another run for the same organization was started with a higher priority.", - "Asset discovery run was killed and terminated." + "", + "", + "", + "" ], "type": "string" } @@ -5442,122 +4799,96 @@ "type": "object" }, "GoogleCloudSecuritycenterV1p1beta1SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV1p1beta1SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"folders/{folder_id}/assets/{asset_id}/securityMarks\" \"projects/{project_number}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks\"", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Access": { - "description": "Represents an access event.", "id": "GoogleCloudSecuritycenterV2Access", "properties": { "callerIp": { - "description": "Caller's IP address, such as \"1.1.1.1\".", "type": "string" }, "callerIpGeo": { - "$ref": "GoogleCloudSecuritycenterV2Geolocation", - "description": "The caller IP's geolocation, which identifies where the call came from." + "$ref": "GoogleCloudSecuritycenterV2Geolocation" }, "methodName": { - "description": "The method that the service account called, e.g. \"SetIamPolicy\".", "type": "string" }, "principalEmail": { - "description": "Associated email, such as \"foo@google.com\". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id).", "type": "string" }, "principalSubject": { - "description": "A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name}/subject/{subject}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name}[{subject}]`.", "type": "string" }, "serviceAccountDelegationInfo": { - "description": "The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events.", "items": { "$ref": "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo" }, "type": "array" }, "serviceAccountKeyName": { - "description": "The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: \"//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}\". ", "type": "string" }, "serviceName": { - "description": "This is the API service that the service account made a call to, e.g. \"iam.googleapis.com\"", "type": "string" }, "userAgent": { - "description": "The caller's user agent string associated with the finding.", "type": "string" }, "userAgentFamily": { - "description": "Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application.", "type": "string" }, "userName": { - "description": "A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AccessReview": { - "description": "Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding.", "id": "GoogleCloudSecuritycenterV2AccessReview", "properties": { "group": { - "description": "The API group of the resource. \"*\" means all.", "type": "string" }, "name": { - "description": "The name of the resource being requested. Empty means all.", "type": "string" }, "ns": { - "description": "Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by \"\" (empty).", "type": "string" }, "resource": { - "description": "The optional resource type requested. \"*\" means all.", "type": "string" }, "subresource": { - "description": "The optional subresource type.", "type": "string" }, "verb": { - "description": "A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. \"*\" means all.", "type": "string" }, "version": { - "description": "The API version of the resource. \"*\" means all.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdaptiveProtection": { - "description": "Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection).", "id": "GoogleCloudSecuritycenterV2AdaptiveProtection", "properties": { "confidence": { - "description": "A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation.", "format": "double", "type": "number" } @@ -5565,48 +4896,39 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AffectedResources": { - "description": "Details about resources affected by this finding.", "id": "GoogleCloudSecuritycenterV2AffectedResources", "properties": { "count": { - "description": "The count of resources affected by the finding.", "format": "int64", "type": "string" } @@ -5614,20 +4936,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AgentDataAccessEvent": { - "description": "Details about a data access attempt made by an agent principal not authorized under applicable data security policy.", "id": "GoogleCloudSecuritycenterV2AgentDataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -5635,26 +4953,23 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalSubject": { - "description": "The agent principal that accessed the data.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AiModel": { - "description": "Contains information about the AI model associated with the finding.", "id": "GoogleCloudSecuritycenterV2AiModel", "properties": { "deploymentPlatform": { - "description": "The platform on which the model is deployed.", "enum": [ "DEPLOYMENT_PLATFORM_UNSPECIFIED", "VERTEX_AI", @@ -5663,51 +4978,42 @@ "FINE_TUNED_MODEL" ], "enumDescriptions": [ - "Unspecified deployment platform.", - "Vertex AI.", - "Google Kubernetes Engine.", - "Google Compute Engine.", - "Fine tuned model." + "", + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The user defined display name of model. Ex. baseline-classification-model", "type": "string" }, "domain": { - "description": "The domain of the model, for example, “image-classification”.", "type": "string" }, "library": { - "description": "The name of the model library, for example, “transformers”.", "type": "string" }, "location": { - "description": "The region in which the model is used, for example, “us-central1”.", "type": "string" }, "name": { - "description": "The name of the AI model, for example, \"gemini:1.0.0\".", "type": "string" }, "publisher": { - "description": "The publisher of the model, for example, “google” or “nvidia”.", "type": "string" }, "usageCategory": { - "description": "The purpose of the model, for example, \"Inteference\" or \"Training\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Allowed": { - "description": "Allowed IP rule.", "id": "GoogleCloudSecuritycenterV2Allowed", "properties": { "ipRules": { - "description": "Optional. Optional list of allowed IP rules.", "items": { "$ref": "GoogleCloudSecuritycenterV2IpRule" }, @@ -5717,59 +5023,49 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Application": { - "description": "Represents an application associated with a finding.", "id": "GoogleCloudSecuritycenterV2Application", "properties": { "baseUri": { - "description": "The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`.", "type": "string" }, "fullUri": { - "description": "The full URI with payload that could be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ArtifactGuardPolicies": { - "description": "Represents the result of evaluating artifact guard policies.", "id": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies", "properties": { "failingPolicies": { - "description": "A list of failing policies.", "items": { "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicy" }, "type": "array" }, "resourceId": { - "description": "The ID of the resource that has policies configured for it.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ArtifactGuardPolicy": { - "description": "Represents an artifact guard policy.", "id": "GoogleCloudSecuritycenterV2ArtifactGuardPolicy", "properties": { "failureReason": { - "description": "The reason for the policy failure, for example, \"severity=HIGH AND max_vuln_count=2\".", "type": "string" }, "policyId": { - "description": "The ID of the failing policy, for example, \"organizations/3392779/locations/global/policies/prod-policy\".", "type": "string" }, "type": { - "description": "The type of the policy evaluation.", "enum": [ "ARTIFACT_GUARD_POLICY_TYPE_UNSPECIFIED", "VULNERABILITY" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Vulnerability type." + "", + "" ], "type": "string" } @@ -5777,32 +5073,26 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Attack": { - "description": "Information about DDoS attack volume and classification.", "id": "GoogleCloudSecuritycenterV2Attack", "properties": { "classification": { - "description": "Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'.", "type": "string" }, "volumeBps": { "deprecated": true, - "description": "Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead.", "format": "int32", "type": "integer" }, "volumeBpsLong": { - "description": "Total BPS (bytes per second) volume of attack.", "format": "int64", "type": "string" }, "volumePps": { "deprecated": true, - "description": "Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead.", "format": "int32", "type": "integer" }, "volumePpsLong": { - "description": "Total PPS (packets per second) volume of attack.", "format": "int64", "type": "string" } @@ -5810,49 +5100,41 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AttackExposure": { - "description": "An attack exposure contains the results of an attack path simulation run.", "id": "GoogleCloudSecuritycenterV2AttackExposure", "properties": { "attackExposureResult": { - "description": "The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789`", "type": "string" }, "exposedHighValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedLowValueResourcesCount": { - "description": "The number of high value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "exposedMediumValueResourcesCount": { - "description": "The number of medium value resources that are exposed as a result of this finding.", "format": "int32", "type": "integer" }, "latestCalculationTime": { - "description": "The most recent time the attack exposure was updated on this finding.", "format": "google-datetime", "type": "string" }, "score": { - "description": "A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate.", "format": "double", "type": "number" }, "state": { - "description": "Output only. What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not.", "enum": [ "STATE_UNSPECIFIED", "CALCULATED", "NOT_CALCULATED" ], "enumDescriptions": [ - "The state is not specified.", - "The attack exposure has been calculated.", - "The attack exposure has not been calculated." + "", + "", + "" ], "readOnly": true, "type": "string" @@ -5861,34 +5143,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AwsAccount": { - "description": "An AWS account that is a member of an organization.", "id": "GoogleCloudSecuritycenterV2AwsAccount", "properties": { "id": { - "description": "The unique identifier (ID) of the account, containing exactly 12 digits.", "type": "string" }, "name": { - "description": "The friendly name of this account.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AwsMetadata": { - "description": "AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services.", "id": "GoogleCloudSecuritycenterV2AwsMetadata", "properties": { "account": { - "$ref": "GoogleCloudSecuritycenterV2AwsAccount", - "description": "The AWS account associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AwsAccount" }, "organization": { - "$ref": "GoogleCloudSecuritycenterV2AwsOrganization", - "description": "The AWS organization associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AwsOrganization" }, "organizationalUnits": { - "description": "A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2AwsOrganizationalUnit" }, @@ -5898,217 +5173,174 @@ "type": "object" }, "GoogleCloudSecuritycenterV2AwsOrganization": { - "description": "An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies.", "id": "GoogleCloudSecuritycenterV2AwsOrganization", "properties": { "id": { - "description": "The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires \"o-\" followed by from 10 to 32 lowercase letters or digits.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AwsOrganizationalUnit": { - "description": "An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs.", "id": "GoogleCloudSecuritycenterV2AwsOrganizationalUnit", "properties": { "id": { - "description": "The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires \"ou-\" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second \"-\" dash and from 8 to 32 additional lowercase letters or digits. For example, \"ou-ab12-cd34ef56\".", "type": "string" }, "name": { - "description": "The friendly name of the OU.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureManagementGroup": { - "description": "Represents an Azure management group.", "id": "GoogleCloudSecuritycenterV2AzureManagementGroup", "properties": { "displayName": { - "description": "The display name of the Azure management group.", "type": "string" }, "id": { - "description": "The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureMetadata": { - "description": "Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure.", "id": "GoogleCloudSecuritycenterV2AzureMetadata", "properties": { "managementGroups": { - "description": "A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2AzureManagementGroup" }, "type": "array" }, "resourceGroup": { - "$ref": "GoogleCloudSecuritycenterV2AzureResourceGroup", - "description": "The Azure resource group associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureResourceGroup" }, "subscription": { - "$ref": "GoogleCloudSecuritycenterV2AzureSubscription", - "description": "The Azure subscription associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureSubscription" }, "tenant": { - "$ref": "GoogleCloudSecuritycenterV2AzureTenant", - "description": "The Azure Entra tenant associated with the resource." + "$ref": "GoogleCloudSecuritycenterV2AzureTenant" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureResourceGroup": { - "description": "Represents an Azure resource group.", "id": "GoogleCloudSecuritycenterV2AzureResourceGroup", "properties": { "id": { - "description": "The ID of the Azure resource group.", "type": "string" }, "name": { - "description": "The name of the Azure resource group. This is not a UUID.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureSubscription": { - "description": "Represents an Azure subscription.", "id": "GoogleCloudSecuritycenterV2AzureSubscription", "properties": { "displayName": { - "description": "The display name of the Azure subscription.", "type": "string" }, "id": { - "description": "The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2AzureTenant": { - "description": "Represents a Microsoft Entra tenant.", "id": "GoogleCloudSecuritycenterV2AzureTenant", "properties": { "displayName": { - "description": "The display name of the Azure tenant.", "type": "string" }, "id": { - "description": "The ID of the Microsoft Entra tenant, for example, \"a11aaa11-aa11-1aa1-11aa-1aaa11a\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2BackupDisasterRecovery": { - "description": "Information related to Google Cloud Backup and DR Service findings.", "id": "GoogleCloudSecuritycenterV2BackupDisasterRecovery", "properties": { "appliance": { - "description": "The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`.", "type": "string" }, "applications": { - "description": "The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`.", "items": { "type": "string" }, "type": "array" }, "backupCreateTime": { - "description": "The timestamp at which the Backup and DR backup was created.", "format": "google-datetime", "type": "string" }, "backupTemplate": { - "description": "The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`.", "type": "string" }, "backupType": { - "description": "The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`.", "type": "string" }, "host": { - "description": "The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`.", "type": "string" }, "policies": { - "description": "The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`.", "items": { "type": "string" }, "type": "array" }, "policyOptions": { - "description": "The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`.", "items": { "type": "string" }, "type": "array" }, "profile": { - "description": "The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`.", "type": "string" }, "storagePool": { - "description": "The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2BigQueryExport": { - "description": "Configures how to deliver Findings to BigQuery Instance.", "id": "GoogleCloudSecuritycenterV2BigQueryExport", "properties": { "createTime": { - "description": "Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The resource name of the Cloud KMS `CryptoKey` used to protect this configuration's data, if configured during Security Command Center activation.", "readOnly": true, "type": "string" }, "dataset": { - "description": "The dataset to write findings' updates to. Its format is \"projects/[project_id]/datasets/[bigquery_dataset_id]\". BigQuery dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_).", "type": "string" }, "description": { - "description": "The description of the export (max of 1024 characters).", "type": "string" }, "filter": { - "description": "Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `>`, `<`, `>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes.", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. The following list shows some examples: + `organizations/{organization_id}/locations/{location_id}/bigQueryExports/{export_id}` + `folders/{folder_id}/locations/{location_id}/bigQueryExports/{export_id}` + `projects/{project_id}/locations/{location_id}/bigQueryExports/{export_id}` This field is provided in responses, and is ignored when provided in create requests.", "type": "string" }, "principal": { - "description": "Output only. The service account that needs permission to create table and upload data to the BigQuery dataset.", "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -6117,23 +5349,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Binding": { - "description": "Represents a Kubernetes RoleBinding or ClusterRoleBinding.", "id": "GoogleCloudSecuritycenterV2Binding", "properties": { "name": { - "description": "Name for the binding.", "type": "string" }, "ns": { - "description": "Namespace for the binding.", "type": "string" }, "role": { - "$ref": "GoogleCloudSecuritycenterV2Role", - "description": "The Role or ClusterRole referenced by the binding." + "$ref": "GoogleCloudSecuritycenterV2Role" }, "subjects": { - "description": "Represents one or more subjects that are bound to the role. Not always available for PATCH requests.", "items": { "$ref": "GoogleCloudSecuritycenterV2Subject" }, @@ -6143,17 +5370,14 @@ "type": "object" }, "GoogleCloudSecuritycenterV2BulkMuteFindingsResponse": { - "description": "The response to a BulkMute request. Contains the LRO information.", "id": "GoogleCloudSecuritycenterV2BulkMuteFindingsResponse", "properties": {}, "type": "object" }, "GoogleCloudSecuritycenterV2Chokepoint": { - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).", "id": "GoogleCloudSecuritycenterV2Chokepoint", "properties": { "relatedFindings": { - "description": "List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings.", "items": { "type": "string" }, @@ -6163,65 +5387,53 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudArmor": { - "description": "Fields related to Google Cloud Armor findings.", "id": "GoogleCloudSecuritycenterV2CloudArmor", "properties": { "adaptiveProtection": { - "$ref": "GoogleCloudSecuritycenterV2AdaptiveProtection", - "description": "Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview)." + "$ref": "GoogleCloudSecuritycenterV2AdaptiveProtection" }, "attack": { - "$ref": "GoogleCloudSecuritycenterV2Attack", - "description": "Information about DDoS attack volume and classification." + "$ref": "GoogleCloudSecuritycenterV2Attack" }, "duration": { - "description": "Duration of attack from the start until the current moment (updated every 5 minutes).", "format": "google-duration", "type": "string" }, "requests": { - "$ref": "GoogleCloudSecuritycenterV2Requests", - "description": "Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview)." + "$ref": "GoogleCloudSecuritycenterV2Requests" }, "securityPolicy": { - "$ref": "GoogleCloudSecuritycenterV2SecurityPolicy", - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityPolicy" }, "threatVector": { - "description": "Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, \"L3_4\" for Layer 3 and Layer 4 DDoS attacks, or \"L_7\" for Layer 7 DDoS attacks.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2CloudControl": { - "description": "CloudControl associated with the finding.", "id": "GoogleCloudSecuritycenterV2CloudControl", "properties": { "cloudControlName": { - "description": "Name of the CloudControl associated with the finding.", "type": "string" }, "policyType": { - "description": "Policy type of the CloudControl", "type": "string" }, "type": { - "description": "Type of cloud control.", "enum": [ "CLOUD_CONTROL_TYPE_UNSPECIFIED", "BUILT_IN", "CUSTOM" ], "enumDescriptions": [ - "Unspecified.", - "Built in Cloud Control.", - "Custom Cloud Control." + "", + "", + "" ], "type": "string" }, "version": { - "description": "Version of the Cloud Control", "format": "int32", "type": "integer" } @@ -6229,31 +5441,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudDlpDataProfile": { - "description": "The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding.", "id": "GoogleCloudSecuritycenterV2CloudDlpDataProfile", "properties": { "dataProfile": { - "description": "Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`.", "type": "string" }, "infoTypes": { - "description": "Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type.", "items": { "$ref": "GoogleCloudSecuritycenterV2InfoType" }, "type": "array" }, "parentType": { - "description": "The resource hierarchy level at which the data profile was generated.", "enum": [ "PARENT_TYPE_UNSPECIFIED", "ORGANIZATION", "PROJECT" ], "enumDescriptions": [ - "Unspecified parent type.", - "Organization-level configurations.", - "Project-level configurations." + "", + "", + "" ], "type": "string" } @@ -6261,47 +5469,37 @@ "type": "object" }, "GoogleCloudSecuritycenterV2CloudDlpInspection": { - "description": "Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding.", "id": "GoogleCloudSecuritycenterV2CloudDlpInspection", "properties": { "fullScan": { - "description": "Whether Cloud DLP scanned the complete resource or a sampled subset.", "type": "boolean" }, "infoType": { - "description": "The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`.", "type": "string" }, "infoTypeCount": { - "description": "The number of times Cloud DLP found this infoType within this job and resource.", "format": "int64", "type": "string" }, "inspectJob": { - "description": "Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2CloudLoggingEntry": { - "description": "Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry)", "id": "GoogleCloudSecuritycenterV2CloudLoggingEntry", "properties": { "insertId": { - "description": "A unique identifier for the log entry.", "type": "string" }, "logId": { - "description": "The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity` Note that this field is not URL-encoded, unlike in `LogEntry`.", "type": "string" }, "resourceContainer": { - "description": "The organization, folder, or project of the monitored resource that produced this log entry.", "type": "string" }, "timestamp": { - "description": "The time the event described by the log entry occurred.", "format": "google-datetime", "type": "string" } @@ -6309,44 +5507,36 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Compliance": { - "description": "Contains compliance information about a security standard indicating unmet recommendations.", "id": "GoogleCloudSecuritycenterV2Compliance", "properties": { "ids": { - "description": "Policies within the standard or benchmark, for example, A.12.4.1", "items": { "type": "string" }, "type": "array" }, "standard": { - "description": "Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP.", "type": "string" }, "version": { - "description": "Version of the standard or benchmark, for example, 1.1", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ComplianceDetails": { - "description": "Compliance Details associated with the finding.", "id": "GoogleCloudSecuritycenterV2ComplianceDetails", "properties": { "cloudControl": { - "$ref": "GoogleCloudSecuritycenterV2CloudControl", - "description": "CloudControl associated with the finding" + "$ref": "GoogleCloudSecuritycenterV2CloudControl" }, "cloudControlDeploymentNames": { - "description": "Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier", "items": { "type": "string" }, "type": "array" }, "frameworks": { - "description": "Details of Frameworks associated with the finding", "items": { "$ref": "GoogleCloudSecuritycenterV2Framework" }, @@ -6356,20 +5546,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Connection": { - "description": "Contains information about the IP connection associated with the finding.", "id": "GoogleCloudSecuritycenterV2Connection", "properties": { "destinationIp": { - "description": "Destination IP address. Not present for sockets that are listening and not connected.", "type": "string" }, "destinationPort": { - "description": "Destination port. Not present for sockets that are listening and not connected.", "format": "int32", "type": "integer" }, "protocol": { - "description": "IANA Internet Protocol Number such as TCP(6) and UDP(17).", "enum": [ "PROTOCOL_UNSPECIFIED", "ICMP", @@ -6379,21 +5565,19 @@ "ESP" ], "enumDescriptions": [ - "Unspecified protocol (not HOPOPT).", - "Internet Control Message Protocol.", - "Transmission Control Protocol.", - "User Datagram Protocol.", - "Generic Routing Encapsulation.", - "Encap Security Payload." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "sourceIp": { - "description": "Source IP address.", "type": "string" }, "sourcePort": { - "description": "Source port.", "format": "int32", "type": "integer" } @@ -6401,22 +5585,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Contact": { - "description": "The email address of a contact.", "id": "GoogleCloudSecuritycenterV2Contact", "properties": { "email": { - "description": "An email address. For example, \"`person123@company.com`\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ContactDetails": { - "description": "Details about specific contacts", "id": "GoogleCloudSecuritycenterV2ContactDetails", "properties": { "contacts": { - "description": "A list of contacts", "items": { "$ref": "GoogleCloudSecuritycenterV2Contact" }, @@ -6426,66 +5606,53 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Container": { - "description": "Container associated with the finding.", "id": "GoogleCloudSecuritycenterV2Container", "properties": { "createTime": { - "description": "The time that the container was created.", "format": "google-datetime", "type": "string" }, "imageId": { - "description": "Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest.", "type": "string" }, "labels": { - "description": "Container labels, as provided by the container runtime.", "items": { "$ref": "GoogleCloudSecuritycenterV2Label" }, "type": "array" }, "name": { - "description": "Name of the container.", "type": "string" }, "uri": { - "description": "Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Control": { - "description": "Compliance control associated with the finding.", "id": "GoogleCloudSecuritycenterV2Control", "properties": { "controlName": { - "description": "Name of the Control", "type": "string" }, "displayName": { - "description": "Display name of the control. For example, AU-02.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Cve": { - "description": "CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability.", "id": "GoogleCloudSecuritycenterV2Cve", "properties": { "cvssv3": { - "$ref": "GoogleCloudSecuritycenterV2Cvssv3", - "description": "Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document" + "$ref": "GoogleCloudSecuritycenterV2Cvssv3" }, "exploitReleaseDate": { - "description": "Date the first publicly available exploit or PoC was released.", "format": "google-datetime", "type": "string" }, "exploitationActivity": { - "description": "The exploitation activity of the vulnerability in the wild.", "enum": [ "EXPLOITATION_ACTIVITY_UNSPECIFIED", "WIDE", @@ -6495,26 +5662,23 @@ "NO_KNOWN" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation has been reported or confirmed to widely occur.", - "Limited reported or confirmed exploitation activities.", - "Exploit is publicly available.", - "No known exploitation activity, but has a high potential for exploitation.", - "No known exploitation activity." + "", + "", + "", + "", + "", + "" ], "type": "string" }, "firstExploitationDate": { - "description": "Date of the earliest known exploitation.", "format": "google-datetime", "type": "string" }, "id": { - "description": "The unique identifier for the vulnerability. e.g. CVE-2021-34527", "type": "string" }, "impact": { - "description": "The potential impact of the vulnerability if it was to be exploited.", "enum": [ "RISK_RATING_UNSPECIFIED", "LOW", @@ -6523,56 +5687,49 @@ "CRITICAL" ], "enumDescriptions": [ - "Invalid or empty value.", - "Exploitation would have little to no security impact.", - "Exploitation would enable attackers to perform activities, or could allow attackers to have a direct impact, but would require additional steps.", - "Exploitation would enable attackers to have a notable direct impact without needing to overcome any major mitigating factors.", - "Exploitation would fundamentally undermine the security of affected systems, enable actors to perform significant attacks with minimal effort, with little to no mitigating factors to overcome." + "", + "", + "", + "", + "" ], "type": "string" }, "observedInTheWild": { - "description": "Whether or not the vulnerability has been observed in the wild.", "type": "boolean" }, "references": { - "description": "Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527", "items": { "$ref": "GoogleCloudSecuritycenterV2Reference" }, "type": "array" }, "upstreamFixAvailable": { - "description": "Whether upstream fix is available for the CVE.", "type": "boolean" }, "zeroDay": { - "description": "Whether or not the vulnerability was zero day when the finding was published.", "type": "boolean" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Cvssv3": { - "description": "Common Vulnerability Scoring System version 3.", "id": "GoogleCloudSecuritycenterV2Cvssv3", "properties": { "attackComplexity": { - "description": "This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.", "enum": [ "ATTACK_COMPLEXITY_UNSPECIFIED", "ATTACK_COMPLEXITY_LOW", "ATTACK_COMPLEXITY_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "Specialized access conditions or extenuating circumstances do not exist. An attacker can expect repeatable success when attacking the vulnerable component.", - "A successful attack depends on conditions beyond the attacker's control. That is, a successful attack cannot be accomplished at will, but requires the attacker to invest in some measurable amount of effort in preparation or execution against the vulnerable component before a successful attack can be expected." + "", + "", + "" ], "type": "string" }, "attackVector": { - "description": "Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible.", "enum": [ "ATTACK_VECTOR_UNSPECIFIED", "ATTACK_VECTOR_NETWORK", @@ -6581,16 +5738,15 @@ "ATTACK_VECTOR_PHYSICAL" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.", - "The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.", - "The vulnerable component is not bound to the network stack and the attacker's path is via read/write/execute capabilities.", - "The attack requires the attacker to physically touch or manipulate the vulnerable component." + "", + "", + "", + "", + "" ], "type": "string" }, "availabilityImpact": { - "description": "This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -6598,20 +5754,18 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "baseScore": { - "description": "The base score is a function of the base metric scores.", "format": "double", "type": "number" }, "confidentialityImpact": { - "description": "This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -6619,15 +5773,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "integrityImpact": { - "description": "This metric measures the impact to integrity of a successfully exploited vulnerability.", "enum": [ "IMPACT_UNSPECIFIED", "IMPACT_HIGH", @@ -6635,15 +5788,14 @@ "IMPACT_NONE" ], "enumDescriptions": [ - "Invalid value.", - "High impact.", - "Low impact.", - "No impact." + "", + "", + "", + "" ], "type": "string" }, "privilegesRequired": { - "description": "This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.", "enum": [ "PRIVILEGES_REQUIRED_UNSPECIFIED", "PRIVILEGES_REQUIRED_NONE", @@ -6651,38 +5803,36 @@ "PRIVILEGES_REQUIRED_HIGH" ], "enumDescriptions": [ - "Invalid value.", - "The attacker is unauthorized prior to attack, and therefore does not require any access to settings or files of the vulnerable system to carry out an attack.", - "The attacker requires privileges that provide basic user capabilities that could normally affect only settings and files owned by a user. Alternatively, an attacker with Low privileges has the ability to access only non-sensitive resources.", - "The attacker requires privileges that provide significant (e.g., administrative) control over the vulnerable component allowing access to component-wide settings and files." + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.", "enum": [ "SCOPE_UNSPECIFIED", "SCOPE_UNCHANGED", "SCOPE_CHANGED" ], "enumDescriptions": [ - "Invalid value.", - "An exploited vulnerability can only affect resources managed by the same security authority.", - "An exploited vulnerability can affect resources beyond the security scope managed by the security authority of the vulnerable component." + "", + "", + "" ], "type": "string" }, "userInteraction": { - "description": "This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.", "enum": [ "USER_INTERACTION_UNSPECIFIED", "USER_INTERACTION_NONE", "USER_INTERACTION_REQUIRED" ], "enumDescriptions": [ - "Invalid value.", - "The vulnerable system can be exploited without interaction from any user.", - "Successful exploitation of this vulnerability requires a user to take some action before the vulnerability can be exploited." + "", + "", + "" ], "type": "string" } @@ -6690,15 +5840,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Cwe": { - "description": "CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/).", "id": "GoogleCloudSecuritycenterV2Cwe", "properties": { "id": { - "description": "The CWE identifier, e.g. CWE-94", "type": "string" }, "references": { - "description": "Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html", "items": { "$ref": "GoogleCloudSecuritycenterV2Reference" }, @@ -6708,20 +5855,16 @@ "type": "object" }, "GoogleCloudSecuritycenterV2DataAccessEvent": { - "description": "Details about a data access attempt made by a principal not authorized under applicable data security policy.", "id": "GoogleCloudSecuritycenterV2DataAccessEvent", "properties": { "eventId": { - "description": "Unique identifier for data access event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data access event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal to access the data.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -6729,35 +5872,30 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DataFlowEvent": { - "description": "Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy.", "id": "GoogleCloudSecuritycenterV2DataFlowEvent", "properties": { "eventId": { - "description": "Unique identifier for data flow event.", "type": "string" }, "eventTime": { - "description": "Timestamp of data flow event.", "format": "google-datetime", "type": "string" }, "operation": { - "description": "The operation performed by the principal for the data flow event.", "enum": [ "OPERATION_UNSPECIFIED", "READ", @@ -6765,40 +5903,34 @@ "COPY" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents a read operation.", - "Represents a move operation.", - "Represents a copy operation." + "", + "", + "", + "" ], "type": "string" }, "principalEmail": { - "description": "The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other.", "type": "string" }, "violatedLocation": { - "description": "Non-compliant location of the principal or the data destination.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent": { - "description": "Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments.", "id": "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent", "properties": { "dataObjectCount": { - "description": "Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000.", "format": "int64", "type": "string" }, "eventDetectionTime": { - "description": "Timestamp indicating when the event was detected.", "format": "google-datetime", "type": "string" }, "eventType": { - "description": "Type of the DRD event.", "enum": [ "EVENT_TYPE_UNSPECIFIED", "EVENT_TYPE_MAX_TTL_EXCEEDED", @@ -6814,21 +5946,19 @@ false ], "enumDescriptions": [ - "Unspecified event type.", - "Deprecated: This field is pending removal. Use EVENT_TYPE_MAX_TTL_FROM_CREATION or EVENT_TYPE_MAX_TTL_FROM_LAST_MODIFICATION instead.", - "Max TTL from the asset's creation time.", - "Max TTL from the asset's last modification time.", - "Min TTL from the asset's creation time." + "", + "", + "", + "", + "" ], "type": "string" }, "maxRetentionAllowed": { - "description": "Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days.", "format": "google-duration", "type": "string" }, "minRetentionAllowed": { - "description": "Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION.", "format": "google-duration", "type": "string" } @@ -6836,64 +5966,51 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Database": { - "description": "Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided.", "id": "GoogleCloudSecuritycenterV2Database", "properties": { "displayName": { - "description": "The human-readable name of the database that the user connected to.", "type": "string" }, "grantees": { - "description": "The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory.", "type": "string" }, "query": { - "description": "The SQL statement that is associated with the database access.", "type": "string" }, "userName": { - "description": "The username used to connect to the database. The username might not be an IAM principal and does not have a set format.", "type": "string" }, "version": { - "description": "The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion).", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Dataset": { - "description": "Vertex AI dataset associated with the finding.", "id": "GoogleCloudSecuritycenterV2Dataset", "properties": { "displayName": { - "description": "The user defined display name of dataset, e.g. plants-dataset", "type": "string" }, "name": { - "description": "Resource name of the dataset, e.g. projects/{project}/locations/{location}/datasets/2094040236064505856", "type": "string" }, "source": { - "description": "Data source, such as a BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Denied": { - "description": "Denied IP rule.", "id": "GoogleCloudSecuritycenterV2Denied", "properties": { "ipRules": { - "description": "Optional. Optional list of denied IP rules.", "items": { "$ref": "GoogleCloudSecuritycenterV2IpRule" }, @@ -6903,15 +6020,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Detection": { - "description": "Memory hash detection contributing to the binary family match.", "id": "GoogleCloudSecuritycenterV2Detection", "properties": { "binary": { - "description": "The name of the binary associated with the memory hash signature detection.", "type": "string" }, "percentPagesMatched": { - "description": "The percentage of memory page hashes in the signature that were matched.", "format": "double", "type": "number" } @@ -6919,35 +6033,29 @@ "type": "object" }, "GoogleCloudSecuritycenterV2DiscoveredWorkload": { - "description": "Represents discovered, customer managed workload that is not registered with the respective GCP service.", "id": "GoogleCloudSecuritycenterV2DiscoveredWorkload", "properties": { "confidence": { - "description": "The confidence in detection of this workload.", "enum": [ "CONFIDENCE_UNSPECIFIED", "CONFIDENCE_HIGH" ], "enumDescriptions": [ - "Unspecified confidence level.", - "High confidence in detection of a workload." + "", + "" ], "type": "string" }, "detectedRelevantHardware": { - "description": "A boolean flag set to true if associated hardware strongly predicts the workload type.", "type": "boolean" }, "detectedRelevantKeywords": { - "description": "A boolean flag set to true if associated keywords strongly predict the workload type.", "type": "boolean" }, "detectedRelevantPackages": { - "description": "A boolean flag set to true if installed packages strongly predict the workload type.", "type": "boolean" }, "workloadType": { - "description": "The type of workload.", "enum": [ "WORKLOAD_TYPE_UNSPECIFIED", "MCP_SERVER", @@ -6955,10 +6063,10 @@ "AGENT" ], "enumDescriptions": [ - "Unspecified workload type", - "A workload of type MCP Server", - "A workload of type AI Inference", - "A workload of type LLM Agent" + "", + "", + "", + "" ], "type": "string" } @@ -6966,100 +6074,82 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Disk": { - "description": "Contains information about the disk associated with the finding.", "id": "GoogleCloudSecuritycenterV2Disk", "properties": { "name": { - "description": "The name of the disk, for example, \"https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DiskPath": { - "description": "Path of the file in terms of underlying disk/partition identifiers.", "id": "GoogleCloudSecuritycenterV2DiskPath", "properties": { "partitionUuid": { - "description": "UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid)", "type": "string" }, "relativePath": { - "description": "Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2DynamicMuteRecord": { - "description": "The record of a dynamic mute rule that matches the finding.", "id": "GoogleCloudSecuritycenterV2DynamicMuteRecord", "properties": { "matchTime": { - "description": "When the dynamic mute rule first matched the finding.", "format": "google-datetime", "type": "string" }, "muteConfig": { - "description": "The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2EnvironmentVariable": { - "description": "A name-value pair representing an environment variable used in an operating system process.", "id": "GoogleCloudSecuritycenterV2EnvironmentVariable", "properties": { "name": { - "description": "Environment variable name as a JSON encoded string.", "type": "string" }, "val": { - "description": "Environment variable value as a JSON encoded string.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ExfilResource": { - "description": "Resource where data was exfiltrated from or exfiltrated to.", "id": "GoogleCloudSecuritycenterV2ExfilResource", "properties": { "components": { - "description": "Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket.", "items": { "type": "string" }, "type": "array" }, "name": { - "description": "The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name).", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Exfiltration": { - "description": "Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to.", "id": "GoogleCloudSecuritycenterV2Exfiltration", "properties": { "sources": { - "description": "If there are multiple sources, then the data is considered \"joined\" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source.", "items": { "$ref": "GoogleCloudSecuritycenterV2ExfilResource" }, "type": "array" }, "targets": { - "description": "If there are multiple targets, each target would get a complete copy of the \"joined\" source data.", "items": { "$ref": "GoogleCloudSecuritycenterV2ExfilResource" }, "type": "array" }, "totalExfiltratedBytes": { - "description": "Total exfiltrated bytes processed for the entire job.", "format": "int64", "type": "string" } @@ -7067,205 +6157,162 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ExternalExposure": { - "description": "Details about the externally exposed resource associated with the finding.", "id": "GoogleCloudSecuritycenterV2ExternalExposure", "properties": { "backendBucket": { - "description": "The full resource name of the load balancer backend bucket, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendBuckets/{name}\"", "type": "string" }, "backendService": { - "description": "The full resource name of load balancer backend service, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "exposedApplication": { - "description": "The name and version of the exposed web application, for example, \"Jenkins 2.184\".", "type": "string" }, "exposedEndpoint": { - "description": "The resource which is running the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/zones/{zone}/instances/{instance}.”", "type": "string" }, "exposedService": { - "description": "The name and version of the service, for example, \"Jupyter Notebook 6.14.0\".", "type": "string" }, "forwardingRule": { - "description": "The full resource name of the forwarding rule, for example, \"//compute.googleapis.com/projects/{project-id}/global/forwardingRules/{forwarding-rule-name}\".", "type": "string" }, "hostnameUri": { - "description": "Hostname of the exposed application, for example, \"https://test-app.a.run.app/\"", "type": "string" }, "httpResponse": { - "description": "The http response returned by the web application.", "items": { "$ref": "GoogleCloudSecuritycenterV2HttpResponse" }, "type": "array" }, "instanceGroup": { - "description": "The full resource name of the instance group, for example, \"//compute.googleapis.com/projects/{project-id}/global/instanceGroups/{name}\".", "type": "string" }, "internalBackendService": { - "description": "The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, \"//compute.googleapis.com/projects/{project-id}/global/backendServices/{name}\".", "type": "string" }, "loadBalancerFirewallPolicy": { - "description": "The full resource name of the load balancer firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" }, "networkEndpointGroup": { - "description": "The full resource name of the network endpoint group, for example, \"//compute.googleapis.com/projects/{project-id}/global/networkEndpointGroups/{name}\".", "type": "string" }, "networkIngressFirewallPolicy": { - "description": "The full resource name of the network ingress firewall policy, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{name}\".", "type": "string" }, "privateIpAddress": { - "description": "Private IP address of the exposed endpoint.", "type": "string" }, "privatePort": { - "description": "Port number associated with private IP address.", "type": "string" }, "pscNetworkAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/networkAttachments/{name}\"", "type": "string" }, "pscServiceAttachment": { - "description": "The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, \"//compute.googleapis.com/projects/{project-id}/regions/{region}/serviceAttachments/{name}\"", "type": "string" }, "publicIpAddress": { - "description": "Public IP address of the exposed endpoint.", "type": "string" }, "publicPort": { - "description": "Public port number of the exposed endpoint.", "type": "string" }, "serviceFirewallPolicy": { - "description": "The full resource name of the firewall policy of the exposed service, for example, \"//compute.googleapis.com/projects/{project-id}/global/firewallPolicies/{policy-name}\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ExternalSystem": { - "description": "Representation of third party SIEM/SOAR fields within SCC.", "id": "GoogleCloudSecuritycenterV2ExternalSystem", "properties": { "assignees": { - "description": "References primary/secondary etc assignees in the external system.", "items": { "type": "string" }, "type": "array" }, "caseCloseTime": { - "description": "The time when the case was closed, as reported by the external system.", "format": "google-datetime", "type": "string" }, "caseCreateTime": { - "description": "The time when the case was created, as reported by the external system.", "format": "google-datetime", "type": "string" }, "casePriority": { - "description": "The priority of the finding's corresponding case in the external system.", "type": "string" }, "caseSla": { - "description": "The SLA of the finding's corresponding case in the external system.", "format": "google-datetime", "type": "string" }, "caseUri": { - "description": "The link to the finding's corresponding case in the external system.", "type": "string" }, "externalSystemUpdateTime": { - "description": "The time when the case was last updated, as reported by the external system.", "format": "google-datetime", "type": "string" }, "externalUid": { - "description": "The identifier that's used to track the finding's corresponding case in the external system.", "type": "string" }, "name": { - "description": "Full resource name of the external system. The following list shows some examples: + `organizations/1234/sources/5678/findings/123456/externalSystems/jira` + `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira`", "type": "string" }, "status": { - "description": "The most recent status of the finding's corresponding case, as reported by the external system.", "type": "string" }, "ticketInfo": { - "$ref": "GoogleCloudSecuritycenterV2TicketInfo", - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding." + "$ref": "GoogleCloudSecuritycenterV2TicketInfo" } }, "type": "object" }, "GoogleCloudSecuritycenterV2File": { - "description": "File information about the related binary/library used by an executable, or the script used by a script interpreter", "id": "GoogleCloudSecuritycenterV2File", "properties": { "contents": { - "description": "Prefix of the file contents as a JSON-encoded string.", "type": "string" }, "diskPath": { - "$ref": "GoogleCloudSecuritycenterV2DiskPath", - "description": "Path of the file in terms of underlying disk/partition identifiers." + "$ref": "GoogleCloudSecuritycenterV2DiskPath" }, "fileLoadState": { - "description": "The load state of the file.", "enum": [ "FILE_LOAD_STATE_UNSPECIFIED", "LOADED_BY_PROCESS", "NOT_LOADED_BY_PROCESS" ], "enumDescriptions": [ - "The file state is unspecified.", - "The file is being used by an active process at the time of scanning.", - "The file is not being used by any active process at the time of scanning." + "", + "", + "" ], "type": "string" }, "hashedSize": { - "description": "The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file.", "format": "int64", "type": "string" }, "operations": { - "description": "Operation(s) performed on a file.", "items": { "$ref": "GoogleCloudSecuritycenterV2FileOperation" }, "type": "array" }, "partiallyHashed": { - "description": "True when the hash covers only a prefix of the file.", "type": "boolean" }, "path": { - "description": "Absolute path of the file as a JSON encoded string.", "type": "string" }, "sha256": { - "description": "SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file.", "type": "string" }, "size": { - "description": "Size of the file in bytes.", "format": "int64", "type": "string" } @@ -7273,11 +6320,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2FileOperation": { - "description": "Operation(s) performed on a file.", "id": "GoogleCloudSecuritycenterV2FileOperation", "properties": { "type": { - "description": "The type of the operation", "enum": [ "OPERATION_TYPE_UNSPECIFIED", "OPEN", @@ -7287,12 +6332,12 @@ "EXECUTE" ], "enumDescriptions": [ - "The operation is unspecified.", - "Represents an open operation.", - "Represents a read operation.", - "Represents a rename operation.", - "Represents a write operation.", - "Represents an execute operation." + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -7300,82 +6345,64 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Finding": { - "description": "Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding.", "id": "GoogleCloudSecuritycenterV2Finding", "properties": { "access": { - "$ref": "GoogleCloudSecuritycenterV2Access", - "description": "Access details associated with the finding, such as more information on the caller, which method was accessed, and from where." + "$ref": "GoogleCloudSecuritycenterV2Access" }, "affectedResources": { - "$ref": "GoogleCloudSecuritycenterV2AffectedResources", - "description": "AffectedResources associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AffectedResources" }, "agentDataAccessEvents": { - "description": "Agent data access events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2AgentDataAccessEvent" }, "type": "array" }, "aiModel": { - "$ref": "GoogleCloudSecuritycenterV2AiModel", - "description": "The AI model associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AiModel" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2Application", - "description": "Represents an application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Application" }, "artifactGuardPolicies": { - "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies", - "description": "ArtifactGuardPolicies associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2ArtifactGuardPolicies" }, "attackExposure": { - "$ref": "GoogleCloudSecuritycenterV2AttackExposure", - "description": "The results of an attack path simulation relevant to this finding." + "$ref": "GoogleCloudSecuritycenterV2AttackExposure" }, "backupDisasterRecovery": { - "$ref": "GoogleCloudSecuritycenterV2BackupDisasterRecovery", - "description": "Fields related to Backup and DR findings." + "$ref": "GoogleCloudSecuritycenterV2BackupDisasterRecovery" }, "canonicalName": { - "description": "Output only. The canonical name of the finding. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` The prefix is the closest CRM ancestor of the resource associated with the finding.", "readOnly": true, "type": "string" }, "category": { - "description": "Immutable. The additional taxonomy group within findings from a given source. Example: \"XSS_FLASH_INJECTION\"", "type": "string" }, "chokepoint": { - "$ref": "GoogleCloudSecuritycenterV2Chokepoint", - "description": "Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests." + "$ref": "GoogleCloudSecuritycenterV2Chokepoint" }, "cloudArmor": { - "$ref": "GoogleCloudSecuritycenterV2CloudArmor", - "description": "Fields related to Cloud Armor findings." + "$ref": "GoogleCloudSecuritycenterV2CloudArmor" }, "cloudDlpDataProfile": { - "$ref": "GoogleCloudSecuritycenterV2CloudDlpDataProfile", - "description": "Cloud DLP data profile that is associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2CloudDlpDataProfile" }, "cloudDlpInspection": { - "$ref": "GoogleCloudSecuritycenterV2CloudDlpInspection", - "description": "Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2CloudDlpInspection" }, "complianceDetails": { - "$ref": "GoogleCloudSecuritycenterV2ComplianceDetails", - "description": "Details about the compliance implications of the finding." + "$ref": "GoogleCloudSecuritycenterV2ComplianceDetails" }, "compliances": { - "description": "Contains compliance information for security standards associated to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Compliance" }, "type": "array" }, "connections": { - "description": "Contains information about the IP connection associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Connection" }, @@ -7385,99 +6412,81 @@ "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV2ContactDetails" }, - "description": "Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { \"security\": { \"contacts\": [ { \"email\": \"person1@company.com\" }, { \"email\": \"person2@company.com\" } ] } }", "readOnly": true, "type": "object" }, "containers": { - "description": "Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "createTime": { - "description": "Output only. The time at which the finding was created in Security Command Center.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The name of the Cloud KMS key used to encrypt this finding, if any.", "readOnly": true, "type": "string" }, "dataAccessEvents": { - "description": "Data access events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataAccessEvent" }, "type": "array" }, "dataFlowEvents": { - "description": "Data flow events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataFlowEvent" }, "type": "array" }, "dataRetentionDeletionEvents": { - "description": "Data retention deletion events associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DataRetentionDeletionEvent" }, "type": "array" }, "database": { - "$ref": "GoogleCloudSecuritycenterV2Database", - "description": "Database associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Database" }, "description": { - "description": "Contains more details about the finding.", "type": "string" }, "discoveredWorkload": { - "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload", - "description": "DiscoveredWorkload associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2DiscoveredWorkload" }, "disk": { - "$ref": "GoogleCloudSecuritycenterV2Disk", - "description": "Disk associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Disk" }, "eventTime": { - "description": "The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp.", "format": "google-datetime", "type": "string" }, "exfiltration": { - "$ref": "GoogleCloudSecuritycenterV2Exfiltration", - "description": "Represents exfiltrations associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Exfiltration" }, "externalExposure": { - "$ref": "GoogleCloudSecuritycenterV2ExternalExposure", - "description": "External exposure associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2ExternalExposure" }, "externalSystems": { "additionalProperties": { "$ref": "GoogleCloudSecuritycenterV2ExternalSystem" }, - "description": "Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields.", "readOnly": true, "type": "object" }, "externalUri": { - "description": "The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL.", "type": "string" }, "files": { - "description": "File associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2File" }, "type": "array" }, "findingClass": { - "description": "The class of the finding.", "enum": [ "FINDING_CLASS_UNSPECIFIED", "THREAT", @@ -7493,79 +6502,67 @@ "SECRET" ], "enumDescriptions": [ - "Unspecified finding class.", - "Describes unwanted or malicious activity.", - "Describes a potential weakness in software that increases risk to Confidentiality & Integrity & Availability.", - "Describes a potential weakness in cloud resource/asset configuration that increases risk.", - "Describes a security observation that is for informational purposes.", - "Describes an error that prevents some SCC functionality.", - "Describes a potential security risk due to a change in the security posture.", - "Describes a combination of security issues that represent a more severe security problem when taken together.", - "Describes a potential security risk to data assets that contain sensitive data.", - "Describes a resource or resource group where high risk attack paths converge, based on attack path simulations (APS).", - "Describes a potential security risk due to the resource being exposed to the internet.", - "Describes a potential security risk due to plaintext credentials, keys, or tokens being exposed in an asset or workload." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "groupMemberships": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests.", "items": { "$ref": "GoogleCloudSecuritycenterV2GroupMembership" }, "type": "array" }, "iamBindings": { - "description": "Represents IAM bindings associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2IamBinding" }, "type": "array" }, "indicator": { - "$ref": "GoogleCloudSecuritycenterV2Indicator", - "description": "Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise)." + "$ref": "GoogleCloudSecuritycenterV2Indicator" }, "ipRules": { - "$ref": "GoogleCloudSecuritycenterV2IpRules", - "description": "IP rules associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IpRules" }, "job": { - "$ref": "GoogleCloudSecuritycenterV2Job", - "description": "Job associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Job" }, "kernelRootkit": { - "$ref": "GoogleCloudSecuritycenterV2KernelRootkit", - "description": "Signature of the kernel rootkit." + "$ref": "GoogleCloudSecuritycenterV2KernelRootkit" }, "kubernetes": { - "$ref": "GoogleCloudSecuritycenterV2Kubernetes", - "description": "Kubernetes resources associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Kubernetes" }, "loadBalancers": { - "description": "The load balancers associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2LoadBalancer" }, "type": "array" }, "logEntries": { - "description": "Log entries that are relevant to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2LogEntry" }, "type": "array" }, "mitreAttack": { - "$ref": "GoogleCloudSecuritycenterV2MitreAttack", - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org" + "$ref": "GoogleCloudSecuritycenterV2MitreAttack" }, "moduleName": { - "description": "Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885", "type": "string" }, "mute": { - "description": "Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -7573,93 +6570,76 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" }, "muteInfo": { "$ref": "GoogleCloudSecuritycenterV2MuteInfo", - "description": "Output only. The mute information regarding this finding.", "readOnly": true }, "muteInitiator": { - "description": "Records additional information about the mute operation, for example, the [mute configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding.", "type": "string" }, "muteUpdateTime": { - "description": "Output only. The most recent time this finding was muted or unmuted.", "format": "google-datetime", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}` + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}` + `folders/{folder_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/findings/{finding_id}` + `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`", "type": "string" }, "networks": { - "description": "Represents the VPC networks that the resource is attached to.", "items": { "$ref": "GoogleCloudSecuritycenterV2Network" }, "type": "array" }, "nextSteps": { - "description": "Steps to address the finding.", "type": "string" }, "notebook": { - "$ref": "GoogleCloudSecuritycenterV2Notebook", - "description": "Notebook associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Notebook" }, "orgPolicies": { - "description": "Contains information about the org policies associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2OrgPolicy" }, "type": "array" }, "parent": { - "description": "The relative resource name of the source and location the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. The following list shows some examples: + `organizations/{organization_id}/sources/{source_id}` + `folders/{folders_id}/sources/{source_id}` + `projects/{projects_id}/sources/{source_id}` + `organizations/{organization_id}/sources/{source_id}/locations/{location_id}` + `folders/{folders_id}/sources/{source_id}/locations/{location_id}` + `projects/{projects_id}/sources/{source_id}/locations/{location_id}`", "type": "string" }, "parentDisplayName": { - "description": "Output only. The human readable display name of the finding source such as \"Event Threat Detection\" or \"Security Health Analytics\".", "readOnly": true, "type": "string" }, "policyViolationSummary": { - "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary", - "description": "PolicyViolationSummary associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2PolicyViolationSummary" }, "processes": { - "description": "Represents operating system processes associated with the Finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Process" }, "type": "array" }, "resourceName": { - "description": "Immutable. For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string.", "type": "string" }, "secret": { - "$ref": "GoogleCloudSecuritycenterV2Secret", - "description": "Secret associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2Secret" }, "securityMarks": { "$ref": "GoogleCloudSecuritycenterV2SecurityMarks", - "description": "Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding.", "readOnly": true }, "securityPosture": { - "$ref": "GoogleCloudSecuritycenterV2SecurityPosture", - "description": "The security posture associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityPosture" }, "severity": { - "description": "The severity of the finding. This field is managed by the source that writes the finding.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -7668,11 +6648,11 @@ "LOW" ], "enumDescriptions": [ - "This value is used for findings when a source doesn't write a severity value.", - "Vulnerability: A critical vulnerability is easily discoverable by an external actor, exploitable, and results in the direct ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. Examples include publicly accessible unprotected user data and public SSH access with weak or no passwords. Threat: Indicates a threat that is able to access, modify, or delete data or execute unauthorized code within existing resources.", - "Vulnerability: A high risk vulnerability can be easily discovered and exploited in combination with other vulnerabilities in order to gain direct access and the ability to execute arbitrary code, exfiltrate data, and otherwise gain additional access and privileges to cloud resources and workloads. An example is a database with weak or no passwords that is only accessible internally. This database could easily be compromised by an actor that had access to the internal network. Threat: Indicates a threat that is able to create new computational resources in an environment but not able to access data or execute code in existing resources.", - "Vulnerability: A medium risk vulnerability could be used by an actor to gain access to resources or privileges that enable them to eventually (through multiple steps or a complex exploit) gain access and the ability to execute arbitrary code or exfiltrate data. An example is a service account with access to more projects than it should have. If an actor gains access to the service account, they could potentially use that access to manipulate a project the service account was not intended to. Threat: Indicates a threat that is able to cause operational impact but may not access data or execute unauthorized code.", - "Vulnerability: A low risk vulnerability hampers a security organization's ability to detect vulnerabilities or active threats in their deployment, or prevents the root cause investigation of security issues. An example is monitoring and logs being disabled for resource configurations and access. Threat: Indicates a threat that has obtained minimal access to an environment but is not able to access data, execute code, or create resources." + "", + "", + "", + "", + "" ], "type": "string" }, @@ -7680,60 +6660,50 @@ "additionalProperties": { "type": "any" }, - "description": "Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only.", "type": "object" }, "state": { - "description": "Output only. The state of the finding.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "The finding requires attention and has not been addressed yet.", - "The finding has been fixed, triaged as a non-issue or otherwise addressed and is no longer active." + "", + "", + "" ], "readOnly": true, "type": "string" }, "toxicCombination": { - "$ref": "GoogleCloudSecuritycenterV2ToxicCombination", - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests." + "$ref": "GoogleCloudSecuritycenterV2ToxicCombination" }, "vertexAi": { - "$ref": "GoogleCloudSecuritycenterV2VertexAi", - "description": "VertexAi associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2VertexAi" }, "vulnerability": { - "$ref": "GoogleCloudSecuritycenterV2Vulnerability", - "description": "Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "GoogleCloudSecuritycenterV2Vulnerability" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Folder": { - "description": "Message that contains the resource name and display name of a folder resource.", "id": "GoogleCloudSecuritycenterV2Folder", "properties": { "resourceFolder": { - "description": "Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourceFolderDisplayName": { - "description": "The user defined display name for this folder.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Framework": { - "description": "Compliance framework associated with the finding.", "id": "GoogleCloudSecuritycenterV2Framework", "properties": { "category": { - "description": "Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads", "items": { "enum": [ "FRAMEWORK_CATEGORY_UNSPECIFIED", @@ -7744,43 +6714,39 @@ "CUSTOM_FRAMEWORK" ], "enumDescriptions": [ - "Default value. This value is unused.", - "Security Benchmarks framework", - "Assured Workloads framework", - "Data Security framework", - "Google Best Practices framework", - "A user-created framework" + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "controls": { - "description": "The controls associated with the framework.", "items": { "$ref": "GoogleCloudSecuritycenterV2Control" }, "type": "array" }, "displayName": { - "description": "Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework", "type": "string" }, "name": { - "description": "Name of the framework associated with the finding", "type": "string" }, "type": { - "description": "Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture)", "enum": [ "FRAMEWORK_TYPE_UNSPECIFIED", "FRAMEWORK_TYPE_BUILT_IN", "FRAMEWORK_TYPE_CUSTOM" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The framework is a built-in framework if it is created and managed by GCP.", - "The framework is a custom framework if it is created and managed by the user." + "", + "", + "" ], "type": "string" } @@ -7788,35 +6754,30 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Geolocation": { - "description": "Represents a geographical location for a given access.", "id": "GoogleCloudSecuritycenterV2Geolocation", "properties": { "regionCode": { - "description": "A CLDR.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2GroupMembership": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way.", "id": "GoogleCloudSecuritycenterV2GroupMembership", "properties": { "groupId": { - "description": "ID of the group.", "type": "string" }, "groupType": { - "description": "Type of group.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "GROUP_TYPE_TOXIC_COMBINATION", "GROUP_TYPE_CHOKEPOINT" ], "enumDescriptions": [ - "Default value.", - "Group represents a toxic combination.", - "Group represents a chokepoint." + "", + "", + "" ], "type": "string" } @@ -7824,76 +6785,64 @@ "type": "object" }, "GoogleCloudSecuritycenterV2HttpResponse": { - "description": "The http response returned by the web application.", "id": "GoogleCloudSecuritycenterV2HttpResponse", "properties": { "path": { - "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", "type": "string" }, "statusCode": { - "description": "The http response code returned by the web application, for example, 200.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IamBinding": { - "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "GoogleCloudSecuritycenterV2IamBinding", "properties": { "action": { - "description": "The action that was performed on a Binding.", "enum": [ "ACTION_UNSPECIFIED", "ADD", "REMOVE" ], "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." + "", + "", + "" ], "type": "string" }, "member": { - "description": "A single identity requesting access for a Cloud Platform resource, for example, \"foo@google.com\".", "type": "string" }, "role": { - "description": "Role that is assigned to \"members\". For example, \"roles/viewer\", \"roles/editor\", or \"roles/owner\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Indicator": { - "description": "Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).", "id": "GoogleCloudSecuritycenterV2Indicator", "properties": { "domains": { - "description": "List of domains associated to the Finding.", "items": { "type": "string" }, "type": "array" }, "ipAddresses": { - "description": "The list of IP addresses that are associated with the finding.", "items": { "type": "string" }, "type": "array" }, "signatures": { - "description": "The list of matched signatures indicating that the given process is present in the environment.", "items": { "$ref": "GoogleCloudSecuritycenterV2ProcessSignature" }, "type": "array" }, "uris": { - "description": "The list of URIs associated to the Findings.", "items": { "type": "string" }, @@ -7903,84 +6852,70 @@ "type": "object" }, "GoogleCloudSecuritycenterV2InfoType": { - "description": "Type of information detected by the API.", "id": "GoogleCloudSecuritycenterV2InfoType", "properties": { "name": { - "description": "Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64}`.", "type": "string" }, "sensitivityScore": { - "$ref": "GoogleCloudSecuritycenterV2SensitivityScore", - "description": "Optional custom sensitivity for this InfoType. This only applies to data profiling." + "$ref": "GoogleCloudSecuritycenterV2SensitivityScore" }, "version": { - "description": "Optional version name for this InfoType.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IpRule": { - "description": "IP rule information.", "id": "GoogleCloudSecuritycenterV2IpRule", "properties": { "portRanges": { - "description": "Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number.", "items": { "$ref": "GoogleCloudSecuritycenterV2PortRange" }, "type": "array" }, "protocol": { - "description": "The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IpRules": { - "description": "IP rules associated with the finding.", "id": "GoogleCloudSecuritycenterV2IpRules", "properties": { "allowed": { - "$ref": "GoogleCloudSecuritycenterV2Allowed", - "description": "Tuple with allowed rules." + "$ref": "GoogleCloudSecuritycenterV2Allowed" }, "denied": { - "$ref": "GoogleCloudSecuritycenterV2Denied", - "description": "Tuple with denied rules." + "$ref": "GoogleCloudSecuritycenterV2Denied" }, "destinationIpRanges": { - "description": "If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, "type": "array" }, "direction": { - "description": "The direction that the rule is applicable to, one of ingress or egress.", "enum": [ "DIRECTION_UNSPECIFIED", "INGRESS", "EGRESS" ], "enumDescriptions": [ - "Unspecified direction value.", - "Ingress direction value.", - "Egress direction value." + "", + "", + "" ], "type": "string" }, "exposedServices": { - "description": "Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.", "items": { "type": "string" }, "type": "array" }, "sourceIpRanges": { - "description": "If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, @@ -7990,37 +6925,30 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Issue": { - "description": "Security Command Center Issue.", "id": "GoogleCloudSecuritycenterV2Issue", "properties": { "createTime": { - "description": "Output only. The time the issue was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "The description of the issue in Markdown format.", "type": "string" }, "detection": { - "description": "The finding category or rule name that generated the issue.", "type": "string" }, "domains": { - "description": "The domains of the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueDomain" }, "type": "array" }, "exposureScore": { - "description": "The exposure score of the issue.", "format": "double", "type": "number" }, "issueType": { - "description": "The type of the issue.", "enum": [ "ISSUE_TYPE_UNSPECIFIED", "CHOKEPOINT", @@ -8028,60 +6956,51 @@ "INSIGHT" ], "enumDescriptions": [ - "Unspecified issue type.", - "Chokepoint issue type.", - "Toxic combination issue type.", - "Insight issue type." + "", + "", + "", + "" ], "type": "string" }, "lastObservationTime": { - "description": "The time the issue was last observed.", "format": "google-datetime", "type": "string" }, "mute": { - "$ref": "GoogleCloudSecuritycenterV2IssueMute", - "description": "The mute information of the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueMute" }, "name": { - "description": "Identifier. The name of the issue. Format: organizations/{organization}/locations/{location}/issues/{issue}", "type": "string" }, "primaryResource": { - "$ref": "GoogleCloudSecuritycenterV2IssueResource", - "description": "The primary resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResource" }, "relatedFindings": { - "description": "The findings related to the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueFinding" }, "type": "array" }, "remediations": { - "description": "Approaches to remediate the issue in Markdown format.", "items": { "type": "string" }, "type": "array" }, "secondaryResources": { - "description": "Additional resources associated with the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResource" }, "type": "array" }, "securityContexts": { - "description": "The security context of the issue.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContext" }, "type": "array" }, "severity": { - "description": "The severity of the issue.", "enum": [ "SEVERITY_UNSPECIFIED", "CRITICAL", @@ -8090,31 +7009,29 @@ "LOW" ], "enumDescriptions": [ - "Unspecified severity.", - "Critical severity.", - "High severity.", - "Medium severity.", - "Low severity." + "", + "", + "", + "", + "" ], "type": "string" }, "state": { - "description": "Output only. The state of the issue.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "INACTIVE" ], "enumDescriptions": [ - "Unspecified state.", - "Active state.", - "Inactive state." + "", + "", + "" ], "readOnly": true, "type": "string" }, "updateTime": { - "description": "Output only. The time the issue was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -8123,11 +7040,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueDomain": { - "description": "The domains of an issue.", "id": "GoogleCloudSecuritycenterV2IssueDomain", "properties": { "domainCategory": { - "description": "The domain category of the issue.", "enum": [ "DOMAIN_CATEGORY_UNSPECIFIED", "AI", @@ -8139,14 +7054,14 @@ "THREAT" ], "enumDescriptions": [ - "Unspecified domain category.", - "Issues in the AI domain.", - "Issues in the code domain.", - "Issues in the container domain.", - "Issues in the data domain.", - "Issues in the identity and access domain.", - "Issues in the vulnerability domain.", - "Issues in the threat domain." + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -8154,75 +7069,62 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueFinding": { - "description": "Finding related to an issue.", "id": "GoogleCloudSecuritycenterV2IssueFinding", "properties": { "cve": { - "$ref": "GoogleCloudSecuritycenterV2IssueFindingCve", - "description": "The CVE of the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueFindingCve" }, "name": { - "description": "The name of the finding.", "type": "string" }, "securityBulletin": { - "$ref": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin", - "description": "The security bulletin of the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueFindingCve": { - "description": "The CVE of the finding.", "id": "GoogleCloudSecuritycenterV2IssueFindingCve", "properties": { "name": { - "description": "The CVE name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin": { - "description": "The security bulletin of the finding.", "id": "GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin", "properties": { "name": { - "description": "The security bulletin name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueMute": { - "description": "The mute information of the issue.", "id": "GoogleCloudSecuritycenterV2IssueMute", "properties": { "muteInitiator": { - "description": "The email address of the user who last changed the mute state of the issue.", "type": "string" }, "muteReason": { - "description": "The user-provided reason for muting the issue.", "type": "string" }, "muteState": { - "description": "Output only. The mute state of the issue.", "enum": [ "MUTE_STATE_UNSPECIFIED", "NOT_MUTED", "MUTED" ], "enumDescriptions": [ - "Unspecified mute state.", - "Not muted.", - "Muted." + "", + "", + "" ], "readOnly": true, "type": "string" }, "muteUpdateTime": { - "description": "The time the issue was muted.", "format": "google-datetime", "type": "string" } @@ -8230,35 +7132,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResource": { - "description": "A resource associated with the an issue.", "id": "GoogleCloudSecuritycenterV2IssueResource", "properties": { "adcApplication": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication" }, "adcApplicationTemplate": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplication", - "description": "The AppHub application associated with the resource, if any. Only populated for the primary resource." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplication" }, "awsMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata", - "description": "The AWS metadata of the resource associated with the issue. Only populated for AWS resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata" }, "azureMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata", - "description": "The Azure metadata of the resource associated with the issue. Only populated for Azure resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata" }, "cloudProvider": { - "description": "The cloud provider of the resource associated with the issue.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD", @@ -8266,112 +7160,92 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "Unspecified cloud provider.", - "Google Cloud.", - "Amazon Web Services.", - "Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The resource-type specific display name of the resource associated with the issue.", "type": "string" }, "googleCloudMetadata": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata", - "description": "The Google Cloud metadata of the resource associated with the issue. Only populated for Google Cloud resources." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata" }, "name": { - "description": "The full resource name of the resource associated with the issue.", "type": "string" }, "type": { - "description": "The type of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcApplication": { - "description": "Represents an ADC application associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", - "description": "Consumer provided attributes for the AppHub application." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes" }, "name": { - "description": "The resource name of an ADC Application. Format: projects/{project}/locations/{location}/spaces/{space}/applications/{application}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision": { - "description": "Represents an ADC template associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Application Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision": { - "description": "Represents an ADC shared template associated with the finding.", "id": "GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision", "properties": { "name": { - "description": "The resource name of an ADC Shared Template Revision. Format: projects/{project}/locations/{location}/spaces/{space}/applicationTemplates/{application_template}/revisions/{revision}", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplication": { - "description": "The AppHub application associated with the resource, if any.", "id": "GoogleCloudSecuritycenterV2IssueResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo" }, @@ -8381,22 +7255,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -8405,11 +7275,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -8417,11 +7287,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -8430,11 +7298,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -8442,93 +7310,75 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata": { - "description": "The AWS metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadata", "properties": { "account": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount", - "description": "The AWS account of the resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount": { - "description": "The AWS account of the resource associated with the issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount", "properties": { "id": { - "description": "The AWS account ID of the resource associated with the issue.", "type": "string" }, "name": { - "description": "The AWS account name of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata": { - "description": "The Azure metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadata", "properties": { "subscription": { - "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription", - "description": "The Azure subscription of the resource associated with the issue." + "$ref": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription": { - "description": "The Azure subscription of the resource associated with the issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription", "properties": { "displayName": { - "description": "The Azure subscription display name of the resource associated with the issue.", "type": "string" }, "id": { - "description": "The Azure subscription ID of the resource associated with the issue.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata": { - "description": "Google Cloud metadata of a resource associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata", "properties": { "projectId": { - "description": "The project ID that the resource associated with the issue belongs to.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContext": { - "description": "Security context associated with an issue.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContext", "properties": { "aggregatedCount": { - "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount", - "description": "The aggregated count of the security context." + "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount" }, "context": { - "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextContext", - "description": "The context of the security context." + "$ref": "GoogleCloudSecuritycenterV2IssueSecurityContextContext" } }, "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount": { - "description": "Aggregated count of a security context.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount", "properties": { "key": { - "description": "Aggregation key.", "type": "string" }, "value": { - "description": "Aggregation value.", "format": "int32", "type": "integer" } @@ -8536,15 +7386,12 @@ "type": "object" }, "GoogleCloudSecuritycenterV2IssueSecurityContextContext": { - "description": "Context of a security context.", "id": "GoogleCloudSecuritycenterV2IssueSecurityContextContext", "properties": { "type": { - "description": "Context type.", "type": "string" }, "values": { - "description": "Context values.", "items": { "type": "string" }, @@ -8554,24 +7401,19 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Job": { - "description": "Describes a job", "id": "GoogleCloudSecuritycenterV2Job", "properties": { "errorCode": { - "description": "Optional. If the job did not complete successfully, this field describes why.", "format": "int32", "type": "integer" }, "location": { - "description": "Optional. Gives the location where the job ran, such as `US` or `europe-west1`", "type": "string" }, "name": { - "description": "The fully-qualified name for a job. e.g. `projects//jobs/`", "type": "string" }, "state": { - "description": "Output only. State of the job, such as `RUNNING` or `PENDING`.", "enum": [ "JOB_STATE_UNSPECIFIED", "PENDING", @@ -8580,11 +7422,11 @@ "FAILED" ], "enumDescriptions": [ - "Unspecified represents an unknown state and should not be used.", - "Job is scheduled and pending for run", - "Job in progress", - "Job has completed with success", - "Job has completed but with failure" + "", + "", + "", + "", + "" ], "readOnly": true, "type": "string" @@ -8593,96 +7435,78 @@ "type": "object" }, "GoogleCloudSecuritycenterV2KernelRootkit": { - "description": "Kernel mode rootkit signatures.", "id": "GoogleCloudSecuritycenterV2KernelRootkit", "properties": { "name": { - "description": "Rootkit name, when available.", "type": "string" }, "unexpectedCodeModification": { - "description": "True if unexpected modifications of kernel code memory are present.", "type": "boolean" }, "unexpectedFtraceHandler": { - "description": "True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedInterruptHandler": { - "description": "True if interrupt handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKernelCodePages": { - "description": "True if kernel code pages that are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKprobeHandler": { - "description": "True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedProcessesInRunqueue": { - "description": "True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list.", "type": "boolean" }, "unexpectedReadOnlyDataModification": { - "description": "True if unexpected modifications of kernel read-only data memory are present.", "type": "boolean" }, "unexpectedSystemCallHandler": { - "description": "True if system call handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Kubernetes": { - "description": "Kubernetes-related attributes.", "id": "GoogleCloudSecuritycenterV2Kubernetes", "properties": { "accessReviews": { - "description": "Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2AccessReview" }, "type": "array" }, "bindings": { - "description": "Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV2Binding" }, "type": "array" }, "nodePools": { - "description": "GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available.", "items": { "$ref": "GoogleCloudSecuritycenterV2NodePool" }, "type": "array" }, "nodes": { - "description": "Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information.", "items": { "$ref": "GoogleCloudSecuritycenterV2Node" }, "type": "array" }, "objects": { - "description": "Kubernetes objects related to the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Object" }, "type": "array" }, "pods": { - "description": "Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod.", "items": { "$ref": "GoogleCloudSecuritycenterV2Pod" }, "type": "array" }, "roles": { - "description": "Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV2Role" }, @@ -8692,52 +7516,42 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Label": { - "description": "Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).", "id": "GoogleCloudSecuritycenterV2Label", "properties": { "name": { - "description": "Name of the label.", "type": "string" }, "value": { - "description": "Value that corresponds to the label's name.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2LoadBalancer": { - "description": "Contains information related to the load balancer associated with the finding.", "id": "GoogleCloudSecuritycenterV2LoadBalancer", "properties": { "name": { - "description": "The name of the load balancer associated with the finding.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2LogEntry": { - "description": "An individual entry in a log.", "id": "GoogleCloudSecuritycenterV2LogEntry", "properties": { "cloudLoggingEntry": { - "$ref": "GoogleCloudSecuritycenterV2CloudLoggingEntry", - "description": "An individual entry in a log stored in Cloud Logging." + "$ref": "GoogleCloudSecuritycenterV2CloudLoggingEntry" } }, "type": "object" }, "GoogleCloudSecuritycenterV2MemoryHashSignature": { - "description": "A signature corresponding to memory page hashes.", "id": "GoogleCloudSecuritycenterV2MemoryHashSignature", "properties": { "binaryFamily": { - "description": "The binary family.", "type": "string" }, "detections": { - "description": "The list of memory hash detections contributing to the binary family match.", "items": { "$ref": "GoogleCloudSecuritycenterV2Detection" }, @@ -8747,11 +7561,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2MitreAttack": { - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org", "id": "GoogleCloudSecuritycenterV2MitreAttack", "properties": { "additionalTactics": { - "description": "Additional MITRE ATT&CK tactics related to this finding, if any.", "items": { "enum": [ "TACTIC_UNSPECIFIED", @@ -8771,28 +7583,27 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "additionalTechniques": { - "description": "Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -8936,152 +7747,151 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "primaryTactic": { - "description": "The MITRE ATT&CK tactic most closely represented by this finding, if any.", "enum": [ "TACTIC_UNSPECIFIED", "RECONNAISSANCE", @@ -9100,26 +7910,25 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "primaryTechniques": { - "description": "The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -9263,210 +8072,199 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "version": { - "description": "The MITRE ATT&CK version referenced by the above fields. E.g. \"8\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2MuteConfig": { - "description": "A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings.", "id": "GoogleCloudSecuritycenterV2MuteConfig", "properties": { "createTime": { - "description": "Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation.", "format": "google-datetime", "readOnly": true, "type": "string" }, "cryptoKeyName": { - "description": "Output only. The resource name of the Cloud KMS `CryptoKey` used to encrypt this configuration data, if CMEK was enabled during Security Command Center activation.", "readOnly": true, "type": "string" }, "description": { - "description": "A description of the mute config.", "type": "string" }, "expiryTime": { - "description": "Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings.", "format": "google-datetime", "type": "string" }, "filter": { - "description": "Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:`", "type": "string" }, "mostRecentEditor": { - "description": "Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update.", "readOnly": true, "type": "string" }, "name": { - "description": "Identifier. This field will be ignored if provided on config creation. The following list shows some examples of the format: + `organizations/{organization}/muteConfigs/{mute_config}` + `organizations/{organization}locations/{location}//muteConfigs/{mute_config}` + `folders/{folder}/muteConfigs/{mute_config}` + `folders/{folder}/locations/{location}/muteConfigs/{mute_config}` + `projects/{project}/muteConfigs/{mute_config}` + `projects/{project}/locations/{location}/muteConfigs/{mute_config}`", "type": "string" }, "type": { - "description": "Required. The type of the mute config, which determines what type of mute state the config affects. Immutable after creation.", "enum": [ "MUTE_CONFIG_TYPE_UNSPECIFIED", "STATIC", "DYNAMIC" ], "enumDescriptions": [ - "Unused.", - "A static mute config, which sets the static mute state of future matching findings to muted. Once the static mute state has been set, finding or config modifications will not affect the state.", - "A dynamic mute config, which is applied to existing and future matching findings, setting their dynamic mute state to \"muted\". If the config is updated or deleted, or a matching finding is updated, such that the finding doesn't match the config, the config will be removed from the finding, and the finding's dynamic mute state may become \"unmuted\" (unless other configs still match)." + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -9475,55 +8273,45 @@ "type": "object" }, "GoogleCloudSecuritycenterV2MuteInfo": { - "description": "Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules.", "id": "GoogleCloudSecuritycenterV2MuteInfo", "properties": { "dynamicMuteRecords": { - "description": "The list of dynamic mute rules that currently match the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2DynamicMuteRecord" }, "type": "array" }, "staticMute": { - "$ref": "GoogleCloudSecuritycenterV2StaticMute", - "description": "If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute." + "$ref": "GoogleCloudSecuritycenterV2StaticMute" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Network": { - "description": "Contains information about a VPC network associated with the finding.", "id": "GoogleCloudSecuritycenterV2Network", "properties": { "name": { - "description": "The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Node": { - "description": "Kubernetes nodes associated with the finding.", "id": "GoogleCloudSecuritycenterV2Node", "properties": { "name": { - "description": "[Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2NodePool": { - "description": "Provides GKE node pool information.", "id": "GoogleCloudSecuritycenterV2NodePool", "properties": { "name": { - "description": "Kubernetes node pool name.", "type": "string" }, "nodes": { - "description": "Nodes associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Node" }, @@ -9533,196 +8321,157 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Notebook": { - "description": "Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding.", "id": "GoogleCloudSecuritycenterV2Notebook", "properties": { "lastAuthor": { - "description": "The user ID of the latest author to modify the notebook.", "type": "string" }, "name": { - "description": "The name of the notebook.", "type": "string" }, "notebookUpdateTime": { - "description": "The most recent time the notebook was updated.", "format": "google-datetime", "type": "string" }, "service": { - "description": "The source notebook service, for example, \"Colab Enterprise\".", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2NotificationMessage": { - "description": "Cloud SCC's Notification", "id": "GoogleCloudSecuritycenterV2NotificationMessage", "properties": { "finding": { - "$ref": "GoogleCloudSecuritycenterV2Finding", - "description": "If it's a Finding based notification config, this field will be populated." + "$ref": "GoogleCloudSecuritycenterV2Finding" }, "notificationConfigName": { - "description": "Name of the notification config that generated current notification.", "type": "string" }, "resource": { - "$ref": "GoogleCloudSecuritycenterV2Resource", - "description": "The Cloud resource tied to this notification's Finding." + "$ref": "GoogleCloudSecuritycenterV2Resource" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Object": { - "description": "Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.", "id": "GoogleCloudSecuritycenterV2Object", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "group": { - "description": "Kubernetes object group, such as \"policy.k8s.io/v1\".", "type": "string" }, "kind": { - "description": "Kubernetes object kind, such as \"Namespace\".", "type": "string" }, "name": { - "description": "Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.", "type": "string" }, "ns": { - "description": "Kubernetes object namespace. Must be a valid DNS label. Named \"ns\" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2OrgPolicy": { - "description": "Contains information about the org policies associated with the finding.", "id": "GoogleCloudSecuritycenterV2OrgPolicy", "properties": { "name": { - "description": "Identifier. The resource name of the org policy. Example: \"organizations/{organization_id}/policies/{constraint_name}\"", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Package": { - "description": "Package is a generic definition of a package.", "id": "GoogleCloudSecuritycenterV2Package", "properties": { "cpeUri": { - "description": "The CPE URI where the vulnerability was detected.", "type": "string" }, "packageName": { - "description": "The name of the package where the vulnerability was detected.", "type": "string" }, "packageType": { - "description": "Type of package, for example, os, maven, or go.", "type": "string" }, "packageVersion": { - "description": "The version of the package.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Pipeline": { - "description": "Vertex AI training pipeline associated with the finding.", "id": "GoogleCloudSecuritycenterV2Pipeline", "properties": { "displayName": { - "description": "The user-defined display name of pipeline, e.g. plants-classification", "type": "string" }, "name": { - "description": "Resource name of the pipeline, e.g. projects/{project}/locations/{location}/trainingPipelines/5253428229225578496", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Pod": { - "description": "A Kubernetes Pod.", "id": "GoogleCloudSecuritycenterV2Pod", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "GoogleCloudSecuritycenterV2Container" }, "type": "array" }, "labels": { - "description": "Pod labels. For Kubernetes containers, these are applied to the container.", "items": { "$ref": "GoogleCloudSecuritycenterV2Label" }, "type": "array" }, "name": { - "description": "Kubernetes Pod name.", "type": "string" }, "ns": { - "description": "Kubernetes Pod namespace.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2PolicyDriftDetails": { - "description": "The policy field that violates the deployed posture and its expected and detected values.", "id": "GoogleCloudSecuritycenterV2PolicyDriftDetails", "properties": { "detectedValue": { - "description": "The detected value that violates the deployed posture, for example, `false` or `allowed_values={\"projects/22831892\"}`.", "type": "string" }, "expectedValue": { - "description": "The value of this field that was configured in a posture, for example, `true` or `allowed_values={\"projects/29831892\"}`.", "type": "string" }, "field": { - "description": "The name of the updated field, for example constraint.implementation.policy_rules[0].enforce", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2PolicyViolationSummary": { - "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", "id": "GoogleCloudSecuritycenterV2PolicyViolationSummary", "properties": { "conformantResourcesCount": { - "description": "Total number of child resources that conform to the policy.", "format": "int64", "type": "string" }, "evaluationErrorsCount": { - "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", "format": "int64", "type": "string" }, "outOfScopeResourcesCount": { - "description": "Total count of child resources which were not in scope for evaluation.", "format": "int64", "type": "string" }, "policyViolationsCount": { - "description": "Count of child resources in violation of the policy.", "format": "int64", "type": "string" } @@ -9730,16 +8479,13 @@ "type": "object" }, "GoogleCloudSecuritycenterV2PortRange": { - "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "GoogleCloudSecuritycenterV2PortRange", "properties": { "max": { - "description": "Maximum port value.", "format": "int64", "type": "string" }, "min": { - "description": "Minimum port value.", "format": "int64", "type": "string" } @@ -9747,62 +8493,50 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Process": { - "description": "Represents an operating system process.", "id": "GoogleCloudSecuritycenterV2Process", "properties": { "args": { - "description": "Process arguments as JSON encoded strings.", "items": { "type": "string" }, "type": "array" }, "argumentsTruncated": { - "description": "True if `args` is incomplete.", "type": "boolean" }, "binary": { - "$ref": "GoogleCloudSecuritycenterV2File", - "description": "File information for the process executable." + "$ref": "GoogleCloudSecuritycenterV2File" }, "envVariables": { - "description": "Process environment variables.", "items": { "$ref": "GoogleCloudSecuritycenterV2EnvironmentVariable" }, "type": "array" }, "envVariablesTruncated": { - "description": "True if `env_variables` is incomplete.", "type": "boolean" }, "libraries": { - "description": "File information for libraries loaded by the process.", "items": { "$ref": "GoogleCloudSecuritycenterV2File" }, "type": "array" }, "name": { - "description": "The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.", "type": "string" }, "parentPid": { - "description": "The parent process ID.", "format": "int64", "type": "string" }, "pid": { - "description": "The process ID.", "format": "int64", "type": "string" }, "script": { - "$ref": "GoogleCloudSecuritycenterV2File", - "description": "When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter." + "$ref": "GoogleCloudSecuritycenterV2File" }, "userId": { - "description": "The ID of the user that executed the process. E.g. If this is the root user this will always be 0.", "format": "int64", "type": "string" } @@ -9810,70 +8544,58 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ProcessSignature": { - "description": "Indicates what signature matched this process.", "id": "GoogleCloudSecuritycenterV2ProcessSignature", "properties": { "memoryHashSignature": { - "$ref": "GoogleCloudSecuritycenterV2MemoryHashSignature", - "description": "Signature indicating that a binary family was matched." + "$ref": "GoogleCloudSecuritycenterV2MemoryHashSignature" }, "signatureType": { - "description": "Describes the type of resource associated with the signature.", "enum": [ "SIGNATURE_TYPE_UNSPECIFIED", "SIGNATURE_TYPE_PROCESS", "SIGNATURE_TYPE_FILE" ], "enumDescriptions": [ - "The default signature type.", - "Used for signatures concerning processes.", - "Used for signatures concerning disks." + "", + "", + "" ], "type": "string" }, "yaraRuleSignature": { - "$ref": "GoogleCloudSecuritycenterV2YaraRuleSignature", - "description": "Signature indicating that a YARA rule was matched." + "$ref": "GoogleCloudSecuritycenterV2YaraRuleSignature" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Reference": { - "description": "Additional Links", "id": "GoogleCloudSecuritycenterV2Reference", "properties": { "source": { - "description": "Source of the reference e.g. NVD", "type": "string" }, "uri": { - "description": "Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Requests": { - "description": "Information about the requests relevant to the finding.", "id": "GoogleCloudSecuritycenterV2Requests", "properties": { "longTermAllowed": { - "description": "Allowed RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "longTermDenied": { - "description": "Denied RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "ratio": { - "description": "For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term.", "format": "double", "type": "number" }, "shortTermAllowed": { - "description": "Allowed RPS (requests per second) in the short term.", "format": "int32", "type": "integer" } @@ -9881,35 +8603,27 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Resource": { - "description": "Information related to the Google Cloud resource.", "id": "GoogleCloudSecuritycenterV2Resource", "properties": { "adcApplication": { - "$ref": "GoogleCloudSecuritycenterV2AdcApplication", - "description": "The ADC application associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcApplication" }, "adcApplicationTemplate": { - "$ref": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision", - "description": "The ADC template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision" }, "adcSharedTemplate": { - "$ref": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision", - "description": "The ADC shared template associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AdcSharedTemplateRevision" }, "application": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplication", - "description": "The App Hub application this resource belongs to." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplication" }, "awsMetadata": { - "$ref": "GoogleCloudSecuritycenterV2AwsMetadata", - "description": "The AWS metadata associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AwsMetadata" }, "azureMetadata": { - "$ref": "GoogleCloudSecuritycenterV2AzureMetadata", - "description": "The Azure metadata associated with the finding." + "$ref": "GoogleCloudSecuritycenterV2AzureMetadata" }, "cloudProvider": { - "description": "Indicates which cloud provider the finding is from.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -9917,91 +8631,74 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "displayName": { - "description": "The human readable name of the resource.", "type": "string" }, "gcpMetadata": { - "$ref": "GcpMetadata", - "description": "The Google Cloud metadata associated with the finding." + "$ref": "GcpMetadata" }, "location": { - "description": "The region or location of the service (if applicable).", "type": "string" }, "name": { - "description": "The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name", "type": "string" }, "resourcePath": { - "$ref": "GoogleCloudSecuritycenterV2ResourcePath", - "description": "Provides the path to the resource within the resource hierarchy." + "$ref": "GoogleCloudSecuritycenterV2ResourcePath" }, "resourcePathString": { - "description": "A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id}/folders/{folder_id}/folders/{folder_id}/projects/{project_id}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id}/ou/{organizational_unit_id}/ou/{organizational_unit_id}/account/{account_id}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id}/mg/{management_group_id}/subscription/{subscription_id}/rg/{resource_group_name}` where there can be any number of management groups.", "type": "string" }, "service": { - "description": "The service or resource provider associated with the resource.", "type": "string" }, "type": { - "description": "The full resource type of the resource.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplication": { - "description": "The App Hub Application associated with the finding's resource.", "id": "GoogleCloudSecuritycenterV2ResourceApplication", "properties": { "attributes": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", - "description": "Consumer provided attributes for the application" + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes" }, "name": { - "description": "The resource name of an Application. Format: `projects/{host-project-id}/locations/{location}/applications/{application-id}`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributes": { - "description": "Consumer provided attributes for the application", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributes", "properties": { "businessOwners": { - "description": "Business team that ensures user needs are met and value is delivered", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, "type": "array" }, "criticality": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality", - "description": "User-defined criticality information." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality" }, "developerOwners": { - "description": "Developer team that owns development and coding.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, "type": "array" }, "environment": { - "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment", - "description": "User-defined environment information." + "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment" }, "operatorOwners": { - "description": "Operator team that ensures runtime and operations.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo" }, @@ -10011,22 +8708,18 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo": { - "description": "Contact information of stakeholders.", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo", "properties": { "email": { - "description": "Email address of the contacts.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality": { - "description": "Criticality of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality", "properties": { "type": { - "description": "Criticality Type.", "enum": [ "CRITICALITY_TYPE_UNSPECIFIED", "MISSION_CRITICAL", @@ -10035,11 +8728,11 @@ "LOW" ], "enumDescriptions": [ - "Unspecified type.", - "Mission critical service, application or workload.", - "High impact.", - "Medium impact.", - "Low impact." + "", + "", + "", + "", + "" ], "type": "string" } @@ -10047,11 +8740,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment": { - "description": "Environment of the Application, Service, or Workload", "id": "GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment", "properties": { "type": { - "description": "Environment Type.", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "PRODUCTION", @@ -10060,11 +8751,11 @@ "DEVELOPMENT" ], "enumDescriptions": [ - "Unspecified type.", - "Production environment.", - "Staging environment.", - "Test environment.", - "Development environment." + "", + "", + "", + "", + "" ], "type": "string" } @@ -10072,11 +8763,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourcePath": { - "description": "Represents the path of resources leading up to the resource this finding is about.", "id": "GoogleCloudSecuritycenterV2ResourcePath", "properties": { "nodes": { - "description": "The list of nodes that make the up resource path, ordered from lowest level to highest level.", "items": { "$ref": "GoogleCloudSecuritycenterV2ResourcePathNode" }, @@ -10086,19 +8775,15 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourcePathNode": { - "description": "A node within the resource path. Each node represents a resource within the resource hierarchy.", "id": "GoogleCloudSecuritycenterV2ResourcePathNode", "properties": { "displayName": { - "description": "The display name of the resource this node represents.", "type": "string" }, "id": { - "description": "The ID of the resource this node represents.", "type": "string" }, "nodeType": { - "description": "The type of resource this node represents.", "enum": [ "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED", "GCP_ORGANIZATION", @@ -10112,16 +8797,16 @@ "AZURE_RESOURCE_GROUP" ], "enumDescriptions": [ - "Node type is unspecified.", - "The node represents a Google Cloud organization.", - "The node represents a Google Cloud folder.", - "The node represents a Google Cloud project.", - "The node represents an AWS organization.", - "The node represents an AWS organizational unit.", - "The node represents an AWS account.", - "The node represents an Azure management group.", - "The node represents an Azure subscription.", - "The node represents an Azure resource group." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -10129,11 +8814,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ResourceValueConfig": { - "description": "A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations.", "id": "GoogleCloudSecuritycenterV2ResourceValueConfig", "properties": { "cloudProvider": { - "description": "Cloud provider this configuration applies to", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -10141,40 +8824,34 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "createTime": { - "description": "Output only. Timestamp this resource value configuration was created.", "format": "google-datetime", "readOnly": true, "type": "string" }, "description": { - "description": "Description of the resource value configuration.", "type": "string" }, "name": { - "description": "Identifier. Name for the resource value configuration", "type": "string" }, "resourceLabelsSelector": { "additionalProperties": { "type": "string" }, - "description": "List of resource labels to search for, evaluated with `AND`. For example, \"resource_labels_selector\": {\"key\": \"value\", \"env\": \"prod\"} will match resources with labels \"key\": \"value\" `AND` \"env\": \"prod\" https://cloud.google.com/resource-manager/docs/creating-managing-labels", "type": "object" }, "resourceType": { - "description": "Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, \"storage.googleapis.com/Bucket\" with resource_value \"HIGH\" will apply \"HIGH\" value only to \"storage.googleapis.com/Bucket\" resources.", "type": "string" }, "resourceValue": { - "description": "Resource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -10183,31 +8860,27 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "scope": { - "description": "Project or folder to scope this configuration to. For example, \"project/456\" would apply this configuration only to resources in \"project/456\" scope and will be checked with `AND` of other resources.", "type": "string" }, "sensitiveDataProtectionMapping": { - "$ref": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping", - "description": "A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. \"bigquery.googleapis.com/Dataset\"." + "$ref": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping" }, "tagValues": { - "description": "Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of \"tagValues/123\". Example: `[ \"tagValues/123\", \"tagValues/456\", \"tagValues/789\" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing", "items": { "type": "string" }, "type": "array" }, "updateTime": { - "description": "Output only. Timestamp this resource value configuration was last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -10216,90 +8889,74 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Role": { - "description": "Kubernetes Role or ClusterRole.", "id": "GoogleCloudSecuritycenterV2Role", "properties": { "kind": { - "description": "Role type.", "enum": [ "KIND_UNSPECIFIED", "ROLE", "CLUSTER_ROLE" ], "enumDescriptions": [ - "Role type is not specified.", - "Kubernetes Role.", - "Kubernetes ClusterRole." + "", + "", + "" ], "type": "string" }, "name": { - "description": "Role name.", "type": "string" }, "ns": { - "description": "Role namespace.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2Secret": { - "description": "Details about a secret or credential associated with the finding.", "id": "GoogleCloudSecuritycenterV2Secret", "properties": { "environmentVariable": { - "$ref": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable", - "description": "The environment variable containing the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable" }, "filePath": { - "$ref": "GoogleCloudSecuritycenterV2SecretFilePath", - "description": "The file containing the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretFilePath" }, "status": { - "$ref": "GoogleCloudSecuritycenterV2SecretStatus", - "description": "The status of the secret." + "$ref": "GoogleCloudSecuritycenterV2SecretStatus" }, "type": { - "description": "The type of secret, for example, GCP_API_KEY.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretEnvironmentVariable": { - "description": "Environment variable containing the secret.", "id": "GoogleCloudSecuritycenterV2SecretEnvironmentVariable", "properties": { "key": { - "description": "Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretFilePath": { - "description": "File path containing the secret.", "id": "GoogleCloudSecuritycenterV2SecretFilePath", "properties": { "path": { - "description": "Path to the file.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecretStatus": { - "description": "The status of the secret.", "id": "GoogleCloudSecuritycenterV2SecretStatus", "properties": { "lastUpdatedTime": { - "description": "Time that the secret was found.", "format": "google-datetime", "type": "string" }, "validity": { - "description": "The validity of the secret.", "enum": [ "SECRET_VALIDITY_UNSPECIFIED", "SECRET_VALIDITY_UNSUPPORTED", @@ -10308,11 +8965,11 @@ "SECRET_VALIDITY_VALID" ], "enumDescriptions": [ - "Default value; no validation was attempted.", - "There is no mechanism to validate the secret.", - "Validation is supported but the validation failed.", - "The secret is confirmed to be invalid.", - "The secret is confirmed to be valid." + "", + "", + "", + "", + "" ], "type": "string" } @@ -10320,114 +8977,91 @@ "type": "object" }, "GoogleCloudSecuritycenterV2SecurityBulletin": { - "description": "SecurityBulletin are notifications of vulnerabilities of Google products.", "id": "GoogleCloudSecuritycenterV2SecurityBulletin", "properties": { "bulletinId": { - "description": "ID of the bulletin corresponding to the vulnerability.", "type": "string" }, "submissionTime": { - "description": "Submission time of this Security Bulletin.", "format": "google-datetime", "type": "string" }, "suggestedUpgradeVersion": { - "description": "This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "GoogleCloudSecuritycenterV2SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. The following list shows some examples: + `organizations/{organization_id}/assets/{asset_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks` + `folders/{folder_id}/assets/{asset_id}/securityMarks` + `folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `folders/{folder_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks` + `projects/{project_number}/assets/{asset_id}/securityMarks` + `projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks` + `projects/{project_number}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name The following list shows some examples: + `organizations/{organization_id}/assets/{asset_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks` + `organizations/{organization_id}/sources/{source_id}/locations/{location}/findings/{finding_id}/securityMarks`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityPolicy": { - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding.", "id": "GoogleCloudSecuritycenterV2SecurityPolicy", "properties": { "name": { - "description": "The name of the Google Cloud Armor security policy, for example, \"my-security-policy\".", "type": "string" }, "preview": { - "description": "Whether or not the associated rule or policy is in preview mode.", "type": "boolean" }, "type": { - "description": "The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SecurityPosture": { - "description": "Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud.", "id": "GoogleCloudSecuritycenterV2SecurityPosture", "properties": { "changedPolicy": { - "description": "The name of the updated policy, for example, `projects/{project_id}/policies/{constraint_name}`.", "type": "string" }, "name": { - "description": "Name of the posture, for example, `CIS-Posture`.", "type": "string" }, "policy": { - "description": "The ID of the updated policy, for example, `compute-policy-1`.", "type": "string" }, "policyDriftDetails": { - "description": "The details about a change in an updated policy that violates the deployed posture.", "items": { "$ref": "GoogleCloudSecuritycenterV2PolicyDriftDetails" }, "type": "array" }, "policySet": { - "description": "The name of the updated policy set, for example, `cis-policyset`.", "type": "string" }, "postureDeployment": { - "description": "The name of the posture deployment, for example, `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.", "type": "string" }, "postureDeploymentResource": { - "description": "The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number}`.", "type": "string" }, "revisionId": { - "description": "The version of the posture, for example, `c7cfa2a8`.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping": { - "description": "Resource value mapping for Sensitive Data Protection findings If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration.", "id": "GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping", "properties": { "highSensitivityMapping": { - "description": "Resource value mapping for high-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -10436,16 +9070,15 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" }, "mediumSensitivityMapping": { - "description": "Resource value mapping for medium-sensitivity Sensitive Data Protection findings", "enum": [ "RESOURCE_VALUE_UNSPECIFIED", "HIGH", @@ -10454,11 +9087,11 @@ "NONE" ], "enumDescriptions": [ - "Unspecific value", - "High resource value", - "Medium resource value", - "Low resource value", - "No resource value, e.g. ignore these resources" + "", + "", + "", + "", + "" ], "type": "string" } @@ -10466,11 +9099,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2SensitivityScore": { - "description": "Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive.", "id": "GoogleCloudSecuritycenterV2SensitivityScore", "properties": { "score": { - "description": "The sensitivity score applied to the resource.", "enum": [ "SENSITIVITY_SCORE_LEVEL_UNSPECIFIED", "SENSITIVITY_LOW", @@ -10479,11 +9110,11 @@ "SENSITIVITY_HIGH" ], "enumDescriptions": [ - "Unused.", - "No sensitive information detected. The resource isn't publicly accessible.", - "Unable to determine sensitivity.", - "Medium risk. Contains personally identifiable information (PII), potentially sensitive data, or fields with free-text data that are at a higher risk of having intermittent sensitive data. Consider limiting access.", - "High risk. Sensitive personally identifiable information (SPII) can be present. Exfiltration of data can lead to user data loss. Re-identification of users might be possible. Consider limiting usage and or removing SPII." + "", + "", + "", + "", + "" ], "type": "string" } @@ -10491,31 +9122,25 @@ "type": "object" }, "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo": { - "description": "Identity delegation history of an authenticated service account.", "id": "GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo", "properties": { "principalEmail": { - "description": "The email address of a Google account.", "type": "string" }, "principalSubject": { - "description": "A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name}[{subject}]`", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2StaticMute": { - "description": "Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly.", "id": "GoogleCloudSecuritycenterV2StaticMute", "properties": { "applyTime": { - "description": "When the static mute was applied.", "format": "google-datetime", "type": "string" }, "state": { - "description": "The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -10523,10 +9148,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -10534,11 +9159,9 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Subject": { - "description": "Represents a Kubernetes subject.", "id": "GoogleCloudSecuritycenterV2Subject", "properties": { "kind": { - "description": "Authentication type for the subject.", "enum": [ "AUTH_TYPE_UNSPECIFIED", "USER", @@ -10546,67 +9169,55 @@ "GROUP" ], "enumDescriptions": [ - "Authentication is not specified.", - "User with valid certificate.", - "Users managed by Kubernetes API with credentials stored as secrets.", - "Collection of users." + "", + "", + "", + "" ], "type": "string" }, "name": { - "description": "Name for the subject.", "type": "string" }, "ns": { - "description": "Namespace for the subject.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2TicketInfo": { - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", "id": "GoogleCloudSecuritycenterV2TicketInfo", "properties": { "assignee": { - "description": "The assignee of the ticket in the ticket system.", "type": "string" }, "description": { - "description": "The description of the ticket in the ticket system.", "type": "string" }, "id": { - "description": "The identifier of the ticket in the ticket system.", "type": "string" }, "status": { - "description": "The latest status of the ticket, as reported by the ticket system.", "type": "string" }, "updateTime": { - "description": "The time when the ticket was last updated, as reported by the ticket system.", "format": "google-datetime", "type": "string" }, "uri": { - "description": "The link to the ticket in the ticket system.", "type": "string" } }, "type": "object" }, "GoogleCloudSecuritycenterV2ToxicCombination": { - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "id": "GoogleCloudSecuritycenterV2ToxicCombination", "properties": { "attackExposureScore": { - "description": "The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack.", "format": "double", "type": "number" }, "relatedFindings": { - "description": "List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`.", "items": { "type": "string" }, @@ -10616,18 +9227,15 @@ "type": "object" }, "GoogleCloudSecuritycenterV2VertexAi": { - "description": "Vertex AI-related information associated with the finding.", "id": "GoogleCloudSecuritycenterV2VertexAi", "properties": { "datasets": { - "description": "Datasets associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Dataset" }, "type": "array" }, "pipelines": { - "description": "Pipelines associated with the finding.", "items": { "$ref": "GoogleCloudSecuritycenterV2Pipeline" }, @@ -10637,74 +9245,61 @@ "type": "object" }, "GoogleCloudSecuritycenterV2Vulnerability": { - "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "GoogleCloudSecuritycenterV2Vulnerability", "properties": { "cve": { - "$ref": "GoogleCloudSecuritycenterV2Cve", - "description": "CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "GoogleCloudSecuritycenterV2Cve" }, "cwes": { - "description": "Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability.", "items": { "$ref": "GoogleCloudSecuritycenterV2Cwe" }, "type": "array" }, "fixedPackage": { - "$ref": "GoogleCloudSecuritycenterV2Package", - "description": "The fixed package is relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2Package" }, "offendingPackage": { - "$ref": "GoogleCloudSecuritycenterV2Package", - "description": "The offending package is relevant to the finding." + "$ref": "GoogleCloudSecuritycenterV2Package" }, "providerRiskScore": { - "description": "Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is.", "format": "int64", "type": "string" }, "reachable": { - "description": "Represents whether the vulnerability is reachable (detected via static analysis)", "type": "boolean" }, "securityBulletin": { - "$ref": "GoogleCloudSecuritycenterV2SecurityBulletin", - "description": "The security bulletin is relevant to this finding." + "$ref": "GoogleCloudSecuritycenterV2SecurityBulletin" } }, "type": "object" }, "GoogleCloudSecuritycenterV2YaraRuleSignature": { - "description": "A signature corresponding to a YARA rule.", "id": "GoogleCloudSecuritycenterV2YaraRuleSignature", "properties": { "yaraRule": { - "description": "The name of the YARA rule.", "type": "string" } }, "type": "object" }, "GroupMembership": { - "description": "Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way.", "id": "GroupMembership", "properties": { "groupId": { - "description": "ID of the group.", "type": "string" }, "groupType": { - "description": "Type of group.", "enum": [ "GROUP_TYPE_UNSPECIFIED", "GROUP_TYPE_TOXIC_COMBINATION", "GROUP_TYPE_CHOKEPOINT" ], "enumDescriptions": [ - "Default value.", - "Group represents a toxic combination.", - "Group represents a chokepoint." + "", + "", + "" ], "type": "string" } @@ -10712,76 +9307,64 @@ "type": "object" }, "HttpResponse": { - "description": "The http response returned by the web application.", "id": "HttpResponse", "properties": { "path": { - "description": "The http path for which response code was returned by web application, for example, \"https://test-app.a.run.app/test\".", "type": "string" }, "statusCode": { - "description": "The http response code returned by the web application, for example, 200.", "type": "string" } }, "type": "object" }, "IamBinding": { - "description": "Represents a particular IAM binding, which captures a member's role addition, removal, or state.", "id": "IamBinding", "properties": { "action": { - "description": "The action that was performed on a Binding.", "enum": [ "ACTION_UNSPECIFIED", "ADD", "REMOVE" ], "enumDescriptions": [ - "Unspecified.", - "Addition of a Binding.", - "Removal of a Binding." + "", + "", + "" ], "type": "string" }, "member": { - "description": "A single identity requesting access for a Cloud Platform resource, for example, \"foo@google.com\".", "type": "string" }, "role": { - "description": "Role that is assigned to \"members\". For example, \"roles/viewer\", \"roles/editor\", or \"roles/owner\".", "type": "string" } }, "type": "object" }, "Indicator": { - "description": "Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise).", "id": "Indicator", "properties": { "domains": { - "description": "List of domains associated to the Finding.", "items": { "type": "string" }, "type": "array" }, "ipAddresses": { - "description": "The list of IP addresses that are associated with the finding.", "items": { "type": "string" }, "type": "array" }, "signatures": { - "description": "The list of matched signatures indicating that the given process is present in the environment.", "items": { "$ref": "ProcessSignature" }, "type": "array" }, "uris": { - "description": "The list of URIs associated to the Findings.", "items": { "type": "string" }, @@ -10791,84 +9374,70 @@ "type": "object" }, "InfoType": { - "description": "Type of information detected by the API.", "id": "InfoType", "properties": { "name": { - "description": "Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64}`.", "type": "string" }, "sensitivityScore": { - "$ref": "SensitivityScore", - "description": "Optional custom sensitivity for this InfoType. This only applies to data profiling." + "$ref": "SensitivityScore" }, "version": { - "description": "Optional version name for this InfoType.", "type": "string" } }, "type": "object" }, "IpRule": { - "description": "IP rule information.", "id": "IpRule", "properties": { "portRanges": { - "description": "Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number.", "items": { "$ref": "PortRange" }, "type": "array" }, "protocol": { - "description": "The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value.", "type": "string" } }, "type": "object" }, "IpRules": { - "description": "IP rules associated with the finding.", "id": "IpRules", "properties": { "allowed": { - "$ref": "Allowed", - "description": "Tuple with allowed rules." + "$ref": "Allowed" }, "denied": { - "$ref": "Denied", - "description": "Tuple with denied rules." + "$ref": "Denied" }, "destinationIpRanges": { - "description": "If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, "type": "array" }, "direction": { - "description": "The direction that the rule is applicable to, one of ingress or egress.", "enum": [ "DIRECTION_UNSPECIFIED", "INGRESS", "EGRESS" ], "enumDescriptions": [ - "Unspecified direction value.", - "Ingress direction value.", - "Egress direction value." + "", + "", + "" ], "type": "string" }, "exposedServices": { - "description": "Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml.", "items": { "type": "string" }, "type": "array" }, "sourceIpRanges": { - "description": "If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4.", "items": { "type": "string" }, @@ -10878,24 +9447,19 @@ "type": "object" }, "Job": { - "description": "Describes a job", "id": "Job", "properties": { "errorCode": { - "description": "Optional. If the job did not complete successfully, this field describes why.", "format": "int32", "type": "integer" }, "location": { - "description": "Optional. Gives the location where the job ran, such as `US` or `europe-west1`", "type": "string" }, "name": { - "description": "The fully-qualified name for a job. e.g. `projects//jobs/`", "type": "string" }, "state": { - "description": "Output only. State of the job, such as `RUNNING` or `PENDING`.", "enum": [ "JOB_STATE_UNSPECIFIED", "PENDING", @@ -10904,11 +9468,11 @@ "FAILED" ], "enumDescriptions": [ - "Unspecified represents an unknown state and should not be used.", - "Job is scheduled and pending for run", - "Job in progress", - "Job has completed with success", - "Job has completed but with failure" + "", + "", + "", + "", + "" ], "readOnly": true, "type": "string" @@ -10917,96 +9481,78 @@ "type": "object" }, "KernelRootkit": { - "description": "Kernel mode rootkit signatures.", "id": "KernelRootkit", "properties": { "name": { - "description": "Rootkit name, when available.", "type": "string" }, "unexpectedCodeModification": { - "description": "True if unexpected modifications of kernel code memory are present.", "type": "boolean" }, "unexpectedFtraceHandler": { - "description": "True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedInterruptHandler": { - "description": "True if interrupt handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKernelCodePages": { - "description": "True if kernel code pages that are not in the expected kernel or module code regions are present.", "type": "boolean" }, "unexpectedKprobeHandler": { - "description": "True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range.", "type": "boolean" }, "unexpectedProcessesInRunqueue": { - "description": "True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list.", "type": "boolean" }, "unexpectedReadOnlyDataModification": { - "description": "True if unexpected modifications of kernel read-only data memory are present.", "type": "boolean" }, "unexpectedSystemCallHandler": { - "description": "True if system call handlers that are are not in the expected kernel or module code regions are present.", "type": "boolean" } }, "type": "object" }, "Kubernetes": { - "description": "Kubernetes-related attributes.", "id": "Kubernetes", "properties": { "accessReviews": { - "description": "Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding.", "items": { "$ref": "AccessReview" }, "type": "array" }, "bindings": { - "description": "Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "GoogleCloudSecuritycenterV1Binding" }, "type": "array" }, "nodePools": { - "description": "GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available.", "items": { "$ref": "NodePool" }, "type": "array" }, "nodes": { - "description": "Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information.", "items": { "$ref": "Node" }, "type": "array" }, "objects": { - "description": "Kubernetes objects related to the finding.", "items": { "$ref": "Object" }, "type": "array" }, "pods": { - "description": "Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod.", "items": { "$ref": "Pod" }, "type": "array" }, "roles": { - "description": "Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control).", "items": { "$ref": "Role" }, @@ -11016,52 +9562,42 @@ "type": "object" }, "Label": { - "description": "Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering).", "id": "Label", "properties": { "name": { - "description": "Name of the label.", "type": "string" }, "value": { - "description": "Value that corresponds to the label's name.", "type": "string" } }, "type": "object" }, "LoadBalancer": { - "description": "Contains information related to the load balancer associated with the finding.", "id": "LoadBalancer", "properties": { "name": { - "description": "The name of the load balancer associated with the finding.", "type": "string" } }, "type": "object" }, "LogEntry": { - "description": "An individual entry in a log.", "id": "LogEntry", "properties": { "cloudLoggingEntry": { - "$ref": "CloudLoggingEntry", - "description": "An individual entry in a log stored in Cloud Logging." + "$ref": "CloudLoggingEntry" } }, "type": "object" }, "MemoryHashSignature": { - "description": "A signature corresponding to memory page hashes.", "id": "MemoryHashSignature", "properties": { "binaryFamily": { - "description": "The binary family.", "type": "string" }, "detections": { - "description": "The list of memory hash detections contributing to the binary family match.", "items": { "$ref": "Detection" }, @@ -11071,11 +9607,9 @@ "type": "object" }, "MitreAttack": { - "description": "MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org", "id": "MitreAttack", "properties": { "additionalTactics": { - "description": "Additional MITRE ATT&CK tactics related to this finding, if any.", "items": { "enum": [ "TACTIC_UNSPECIFIED", @@ -11095,28 +9629,27 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "additionalTechniques": { - "description": "Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -11260,152 +9793,151 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "primaryTactic": { - "description": "The MITRE ATT&CK tactic most closely represented by this finding, if any.", "enum": [ "TACTIC_UNSPECIFIED", "RECONNAISSANCE", @@ -11424,26 +9956,25 @@ "IMPACT" ], "enumDescriptions": [ - "Unspecified value.", - "TA0043", - "TA0042", - "TA0001", - "TA0002", - "TA0003", - "TA0004", - "TA0005", - "TA0006", - "TA0007", - "TA0008", - "TA0009", - "TA0011", - "TA0010", - "TA0040" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "primaryTechniques": { - "description": "The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).", "items": { "enum": [ "TECHNIQUE_UNSPECIFIED", @@ -11587,207 +10118,196 @@ "FINANCIAL_THEFT" ], "enumDescriptions": [ - "Unspecified value.", - "T1001", - "T1001.002", - "T1003", - "T1003.007", - "T1003.008", - "T1005", - "T1020", - "T1027", - "T1027.003", - "T1027.004", - "T1027.010", - "T1029", - "T1033", - "T1036", - "T1036.005", - "T1037", - "T1037.005", - "T1046", - "T1053", - "T1053.003", - "T1053.007", - "T1055", - "T1056", - "T1056.001", - "T1057", - "T1059", - "T1059.004", - "T1059.006", - "T1068", - "T1069", - "T1069.003", - "T1070", - "T1070.002", - "T1070.003", - "T1070.004", - "T1070.006", - "T1070.008", - "T1071", - "T1071.004", - "T1072", - "T1078", - "T1078.001", - "T1078.003", - "T1078.004", - "T1083", - "T1087.001", - "T1090", - "T1090.002", - "T1090.003", - "T1098", - "T1098.001", - "T1098.003", - "T1098.004", - "T1098.006", - "T1104", - "T1105", - "T1106", - "T1110", - "T1119", - "T1129", - "T1132", - "T1132.001", - "T1134", - "T1134.001", - "T1136", - "T1136.001", - "T1140", - "T1190", - "T1195", - "T1195.001", - "T1203", - "T1204", - "T1212", - "T1222.002", - "T1484", - "T1485", - "T1486", - "T1489", - "T1490", - "T1495", - "T1496", - "T1498", - "T1526", - "T1528", - "T1531", - "T1537", - "T1539", - "T1543", - "T1546", - "T1547", - "T1547.006", - "T1547.009", - "T1548", - "T1548.001", - "T1548.003", - "T1552", - "T1552.001", - "T1552.003", - "T1552.004", - "T1553", - "T1553.004", - "T1554", - "T1555", - "T1556", - "T1556.003", - "T1556.006", - "T1562", - "T1562.001", - "T1562.006", - "T1562.012", - "T1564", - "T1564.001", - "T1564.002", - "T1567", - "T1567.002", - "T1568", - "T1570", - "T1574", - "T1574.006", - "T1578", - "T1578.001", - "T1580", - "T1587", - "T1587.001", - "T1588", - "T1588.001", - "T1588.006", - "T1595", - "T1595.001", - "T1608", - "T1608.001", - "T1609", - "T1610", - "T1611", - "T1613", - "T1620", - "T1649", - "T1657" + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" }, "type": "array" }, "version": { - "description": "The MITRE ATT&CK version referenced by the above fields. E.g. \"8\".", "type": "string" } }, "type": "object" }, "MuteInfo": { - "description": "Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules.", "id": "MuteInfo", "properties": { "dynamicMuteRecords": { - "description": "The list of dynamic mute rules that currently match the finding.", "items": { "$ref": "DynamicMuteRecord" }, "type": "array" }, "staticMute": { - "$ref": "StaticMute", - "description": "If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute." + "$ref": "StaticMute" } }, "type": "object" }, "Network": { - "description": "Contains information about a VPC network associated with the finding.", "id": "Network", "properties": { "name": { - "description": "The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`.", "type": "string" } }, "type": "object" }, "Node": { - "description": "Kubernetes nodes associated with the finding.", "id": "Node", "properties": { "name": { - "description": "[Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node.", "type": "string" } }, "type": "object" }, "NodePool": { - "description": "Provides GKE node pool information.", "id": "NodePool", "properties": { "name": { - "description": "Kubernetes node pool name.", "type": "string" }, "nodes": { - "description": "Nodes associated with the finding.", "items": { "$ref": "Node" }, @@ -11797,177 +10317,142 @@ "type": "object" }, "Notebook": { - "description": "Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding.", "id": "Notebook", "properties": { "lastAuthor": { - "description": "The user ID of the latest author to modify the notebook.", "type": "string" }, "name": { - "description": "The name of the notebook.", "type": "string" }, "notebookUpdateTime": { - "description": "The most recent time the notebook was updated.", "format": "google-datetime", "type": "string" }, "service": { - "description": "The source notebook service, for example, \"Colab Enterprise\".", "type": "string" } }, "type": "object" }, "Object": { - "description": "Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview.", "id": "Object", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "Container" }, "type": "array" }, "group": { - "description": "Kubernetes object group, such as \"policy.k8s.io/v1\".", "type": "string" }, "kind": { - "description": "Kubernetes object kind, such as \"Namespace\".", "type": "string" }, "name": { - "description": "Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/.", "type": "string" }, "ns": { - "description": "Kubernetes object namespace. Must be a valid DNS label. Named \"ns\" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/.", "type": "string" } }, "type": "object" }, "OrgPolicy": { - "description": "Contains information about the org policies associated with the finding.", "id": "OrgPolicy", "properties": { "name": { - "description": "The resource name of the org policy. Example: \"organizations/{organization_id}/policies/{constraint_name}\"", "type": "string" } }, "type": "object" }, "Package": { - "description": "Package is a generic definition of a package.", "id": "Package", "properties": { "cpeUri": { - "description": "The CPE URI where the vulnerability was detected.", "type": "string" }, "packageName": { - "description": "The name of the package where the vulnerability was detected.", "type": "string" }, "packageType": { - "description": "Type of package, for example, os, maven, or go.", "type": "string" }, "packageVersion": { - "description": "The version of the package.", "type": "string" } }, "type": "object" }, "Pipeline": { - "description": "Vertex AI training pipeline associated with the finding.", "id": "Pipeline", "properties": { "displayName": { - "description": "The user defined display name of pipeline, e.g. plants-classification", "type": "string" }, "name": { - "description": "Resource name of the pipeline, e.g. projects/{project}/locations/{location}/trainingPipelines/5253428229225578496", "type": "string" } }, "type": "object" }, "Pod": { - "description": "A Kubernetes Pod.", "id": "Pod", "properties": { "containers": { - "description": "Pod containers associated with this finding, if any.", "items": { "$ref": "Container" }, "type": "array" }, "labels": { - "description": "Pod labels. For Kubernetes containers, these are applied to the container.", "items": { "$ref": "Label" }, "type": "array" }, "name": { - "description": "Kubernetes Pod name.", "type": "string" }, "ns": { - "description": "Kubernetes Pod namespace.", "type": "string" } }, "type": "object" }, "PolicyDriftDetails": { - "description": "The policy field that violates the deployed posture and its expected and detected values.", "id": "PolicyDriftDetails", "properties": { "detectedValue": { - "description": "The detected value that violates the deployed posture, for example, `false` or `allowed_values={\"projects/22831892\"}`.", "type": "string" }, "expectedValue": { - "description": "The value of this field that was configured in a posture, for example, `true` or `allowed_values={\"projects/29831892\"}`.", "type": "string" }, "field": { - "description": "The name of the updated field, for example constraint.implementation.policy_rules[0].enforce", "type": "string" } }, "type": "object" }, "PolicyViolationSummary": { - "description": "Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control.", "id": "PolicyViolationSummary", "properties": { "conformantResourcesCount": { - "description": "Total number of child resources that conform to the policy.", "format": "int64", "type": "string" }, "evaluationErrorsCount": { - "description": "Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively \"unknown\".", "format": "int64", "type": "string" }, "outOfScopeResourcesCount": { - "description": "Total count of child resources which were not in scope for evaluation.", "format": "int64", "type": "string" }, "policyViolationsCount": { - "description": "Count of child resources in violation of the policy.", "format": "int64", "type": "string" } @@ -11975,16 +10460,13 @@ "type": "object" }, "PortRange": { - "description": "A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port.", "id": "PortRange", "properties": { "max": { - "description": "Maximum port value.", "format": "int64", "type": "string" }, "min": { - "description": "Minimum port value.", "format": "int64", "type": "string" } @@ -11992,62 +10474,50 @@ "type": "object" }, "Process": { - "description": "Represents an operating system process.", "id": "Process", "properties": { "args": { - "description": "Process arguments as JSON encoded strings.", "items": { "type": "string" }, "type": "array" }, "argumentsTruncated": { - "description": "True if `args` is incomplete.", "type": "boolean" }, "binary": { - "$ref": "File", - "description": "File information for the process executable." + "$ref": "File" }, "envVariables": { - "description": "Process environment variables.", "items": { "$ref": "EnvironmentVariable" }, "type": "array" }, "envVariablesTruncated": { - "description": "True if `env_variables` is incomplete.", "type": "boolean" }, "libraries": { - "description": "File information for libraries loaded by the process.", "items": { "$ref": "File" }, "type": "array" }, "name": { - "description": "The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.", "type": "string" }, "parentPid": { - "description": "The parent process ID.", "format": "int64", "type": "string" }, "pid": { - "description": "The process ID.", "format": "int64", "type": "string" }, "script": { - "$ref": "File", - "description": "When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter." + "$ref": "File" }, "userId": { - "description": "The ID of the user that executed the process. E.g. If this is the root user this will always be 0.", "format": "int64", "type": "string" } @@ -12055,51 +10525,43 @@ "type": "object" }, "ProcessSignature": { - "description": "Indicates what signature matched this process.", "id": "ProcessSignature", "properties": { "memoryHashSignature": { - "$ref": "MemoryHashSignature", - "description": "Signature indicating that a binary family was matched." + "$ref": "MemoryHashSignature" }, "signatureType": { - "description": "Describes the type of resource associated with the signature.", "enum": [ "SIGNATURE_TYPE_UNSPECIFIED", "SIGNATURE_TYPE_PROCESS", "SIGNATURE_TYPE_FILE" ], "enumDescriptions": [ - "The default signature type.", - "Used for signatures concerning processes.", - "Used for signatures concerning disks." + "", + "", + "" ], "type": "string" }, "yaraRuleSignature": { - "$ref": "YaraRuleSignature", - "description": "Signature indicating that a YARA rule was matched." + "$ref": "YaraRuleSignature" } }, "type": "object" }, "RapidVulnerabilityDetectionSettings": { - "description": "Resource capturing the settings for the Rapid Vulnerability Detection service.", "id": "RapidVulnerabilityDetectionSettings", "properties": { "modules": { "additionalProperties": { "$ref": "Config" }, - "description": "The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's.", "type": "object" }, "name": { - "description": "The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization}/rapidVulnerabilityDetectionSettings * folders/{folder}/rapidVulnerabilityDetectionSettings * projects/{project}/rapidVulnerabilityDetectionSettings", "type": "string" }, "serviceEnablementState": { - "description": "The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -12107,15 +10569,14 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The time the settings were last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -12124,41 +10585,33 @@ "type": "object" }, "Reference": { - "description": "Additional Links", "id": "Reference", "properties": { "source": { - "description": "Source of the reference e.g. NVD", "type": "string" }, "uri": { - "description": "Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.", "type": "string" } }, "type": "object" }, "Requests": { - "description": "Information about the requests relevant to the finding.", "id": "Requests", "properties": { "longTermAllowed": { - "description": "Allowed RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "longTermDenied": { - "description": "Denied RPS (requests per second) over the long term.", "format": "int32", "type": "integer" }, "ratio": { - "description": "For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term.", "format": "double", "type": "number" }, "shortTermAllowed": { - "description": "Allowed RPS (requests per second) in the short term.", "format": "int32", "type": "integer" } @@ -12166,11 +10619,9 @@ "type": "object" }, "ResourcePath": { - "description": "Represents the path of resources leading up to the resource this finding is about.", "id": "ResourcePath", "properties": { "nodes": { - "description": "The list of nodes that make the up resource path, ordered from lowest level to highest level.", "items": { "$ref": "ResourcePathNode" }, @@ -12180,19 +10631,15 @@ "type": "object" }, "ResourcePathNode": { - "description": "A node within the resource path. Each node represents a resource within the resource hierarchy.", "id": "ResourcePathNode", "properties": { "displayName": { - "description": "The display name of the resource this node represents.", "type": "string" }, "id": { - "description": "The ID of the resource this node represents.", "type": "string" }, "nodeType": { - "description": "The type of resource this node represents.", "enum": [ "RESOURCE_PATH_NODE_TYPE_UNSPECIFIED", "GCP_ORGANIZATION", @@ -12206,16 +10653,16 @@ "AZURE_RESOURCE_GROUP" ], "enumDescriptions": [ - "Node type is unspecified.", - "The node represents a Google Cloud organization.", - "The node represents a Google Cloud folder.", - "The node represents a Google Cloud project.", - "The node represents an AWS organization.", - "The node represents an AWS organizational unit.", - "The node represents an AWS account.", - "The node represents an Azure management group.", - "The node represents an Azure subscription.", - "The node represents an Azure resource group." + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" ], "type": "string" } @@ -12223,90 +10670,74 @@ "type": "object" }, "Role": { - "description": "Kubernetes Role or ClusterRole.", "id": "Role", "properties": { "kind": { - "description": "Role type.", "enum": [ "KIND_UNSPECIFIED", "ROLE", "CLUSTER_ROLE" ], "enumDescriptions": [ - "Role type is not specified.", - "Kubernetes Role.", - "Kubernetes ClusterRole." + "", + "", + "" ], "type": "string" }, "name": { - "description": "Role name.", "type": "string" }, "ns": { - "description": "Role namespace.", "type": "string" } }, "type": "object" }, "Secret": { - "description": "Details about a secret or credential associated with the finding.", "id": "Secret", "properties": { "environmentVariable": { - "$ref": "SecretEnvironmentVariable", - "description": "The environment variable containing the secret." + "$ref": "SecretEnvironmentVariable" }, "filePath": { - "$ref": "SecretFilePath", - "description": "The file containing the secret." + "$ref": "SecretFilePath" }, "status": { - "$ref": "SecretStatus", - "description": "The status of the secret." + "$ref": "SecretStatus" }, "type": { - "description": "The type of secret, for example, GCP_API_KEY.", "type": "string" } }, "type": "object" }, "SecretEnvironmentVariable": { - "description": "Environment variable containing the secret.", "id": "SecretEnvironmentVariable", "properties": { "key": { - "description": "Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content.", "type": "string" } }, "type": "object" }, "SecretFilePath": { - "description": "File path containing the secret.", "id": "SecretFilePath", "properties": { "path": { - "description": "Path to the file.", "type": "string" } }, "type": "object" }, "SecretStatus": { - "description": "The status of the secret.", "id": "SecretStatus", "properties": { "lastUpdatedTime": { - "description": "Time that the secret was found.", "format": "google-datetime", "type": "string" }, "validity": { - "description": "The validity of the secret.", "enum": [ "SECRET_VALIDITY_UNSPECIFIED", "SECRET_VALIDITY_UNSUPPORTED", @@ -12315,11 +10746,11 @@ "SECRET_VALIDITY_VALID" ], "enumDescriptions": [ - "Default value; no validation was attempted.", - "There is no mechanism to validate the secret.", - "Validation is supported but the validation failed.", - "The secret is confirmed to be invalid.", - "The secret is confirmed to be valid." + "", + "", + "", + "", + "" ], "type": "string" } @@ -12327,49 +10758,39 @@ "type": "object" }, "SecurityBulletin": { - "description": "SecurityBulletin are notifications of vulnerabilities of Google products.", "id": "SecurityBulletin", "properties": { "bulletinId": { - "description": "ID of the bulletin corresponding to the vulnerability.", "type": "string" }, "submissionTime": { - "description": "Submission time of this Security Bulletin.", "format": "google-datetime", "type": "string" }, "suggestedUpgradeVersion": { - "description": "This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0", "type": "string" } }, "type": "object" }, "SecurityCenterSettings": { - "description": "Resource capturing the settings for Security Center.", "id": "SecurityCenterSettings", "properties": { "cryptoKeyName": { - "description": "The KMS key name used for CMEK encryption. Format: projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{key_name}", "type": "string" }, "logSinkProject": { - "description": "The resource name of the project to send logs to. This project must be part of the organization this resource resides in. The format is `projects/{project_id}`. An empty value disables logging. This value is only referenced by services that support log sink. Please refer to the documentation for an updated list of compatible services. This may only be specified for organization level onboarding.", "type": "string" }, "name": { - "description": "The resource name of the SecurityCenterSettings. Format: organizations/{organization}/securityCenterSettings Format: folders/{folder}/securityCenterSettings Format: projects/{project}/securityCenterSettings", "type": "string" }, "onboardingTime": { - "description": "Output only. Timestamp of when the customer organization was onboarded to SCC.", "format": "google-datetime", "readOnly": true, "type": "string" }, "orgServiceAccount": { - "description": "Output only. The organization level service account to be used for security center components.", "readOnly": true, "type": "string" } @@ -12377,27 +10798,22 @@ "type": "object" }, "SecurityHealthAnalyticsSettings": { - "description": "Resource capturing the settings for the Security Health Analytics service.", "id": "SecurityHealthAnalyticsSettings", "properties": { "modules": { "additionalProperties": { "$ref": "Config" }, - "description": "The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization}/securityHealthAnalyticsSettings * folders/{folder}/securityHealthAnalyticsSettings * projects/{project}/securityHealthAnalyticsSettings", "type": "string" }, "serviceAccount": { - "description": "Output only. The service account used by Security Health Analytics detectors.", "readOnly": true, "type": "string" }, "serviceEnablementState": { - "description": "The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -12405,15 +10821,14 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The time the settings were last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -12422,94 +10837,75 @@ "type": "object" }, "SecurityMarks": { - "description": "User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization.", "id": "SecurityMarks", "properties": { "canonicalName": { - "description": "The canonical name of the marks. Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"folders/{folder_id}/assets/{asset_id}/securityMarks\" \"projects/{project_number}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks\" \"projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks\"", "type": "string" }, "marks": { "additionalProperties": { "type": "string" }, - "description": "Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive)", "type": "object" }, "name": { - "description": "The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: \"organizations/{organization_id}/assets/{asset_id}/securityMarks\" \"organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks\".", "type": "string" } }, "type": "object" }, "SecurityPolicy": { - "description": "Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding.", "id": "SecurityPolicy", "properties": { "name": { - "description": "The name of the Google Cloud Armor security policy, for example, \"my-security-policy\".", "type": "string" }, "preview": { - "description": "Whether or not the associated rule or policy is in preview mode.", "type": "boolean" }, "type": { - "description": "The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'.", "type": "string" } }, "type": "object" }, "SecurityPosture": { - "description": "Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud.", "id": "SecurityPosture", "properties": { "changedPolicy": { - "description": "The name of the updated policy, for example, `projects/{project_id}/policies/{constraint_name}`.", "type": "string" }, "name": { - "description": "Name of the posture, for example, `CIS-Posture`.", "type": "string" }, "policy": { - "description": "The ID of the updated policy, for example, `compute-policy-1`.", "type": "string" }, "policyDriftDetails": { - "description": "The details about a change in an updated policy that violates the deployed posture.", "items": { "$ref": "PolicyDriftDetails" }, "type": "array" }, "policySet": { - "description": "The name of the updated policyset, for example, `cis-policyset`.", "type": "string" }, "postureDeployment": { - "description": "The name of the posture deployment, for example, `organizations/{org_id}/posturedeployments/{posture_deployment_id}`.", "type": "string" }, "postureDeploymentResource": { - "description": "The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number}`.", "type": "string" }, "revisionId": { - "description": "The version of the posture, for example, `c7cfa2a8`.", "type": "string" } }, "type": "object" }, "SensitivityScore": { - "description": "Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive.", "id": "SensitivityScore", "properties": { "score": { - "description": "The sensitivity score applied to the resource.", "enum": [ "SENSITIVITY_SCORE_LEVEL_UNSPECIFIED", "SENSITIVITY_LOW", @@ -12518,11 +10914,11 @@ "SENSITIVITY_HIGH" ], "enumDescriptions": [ - "Unused.", - "No sensitive information detected. The resource isn't publicly accessible.", - "Unable to determine sensitivity.", - "Medium risk. Contains personally identifiable information (PII), potentially sensitive data, or fields with free-text data that are at a higher risk of having intermittent sensitive data. Consider limiting access.", - "High risk. Sensitive personally identifiable information (SPII) can be present. Exfiltration of data can lead to user data loss. Re-identification of users might be possible. Consider limiting usage and or removing SPII." + "", + "", + "", + "", + "" ], "type": "string" } @@ -12530,31 +10926,25 @@ "type": "object" }, "ServiceAccountDelegationInfo": { - "description": "Identity delegation history of an authenticated service account.", "id": "ServiceAccountDelegationInfo", "properties": { "principalEmail": { - "description": "The email address of a Google account.", "type": "string" }, "principalSubject": { - "description": "A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name}/subjects/{subject}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name}[{subject}]`", "type": "string" } }, "type": "object" }, "StaticMute": { - "description": "Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly.", "id": "StaticMute", "properties": { "applyTime": { - "description": "When the static mute was applied.", "format": "google-datetime", "type": "string" }, "state": { - "description": "The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value.", "enum": [ "MUTE_UNSPECIFIED", "MUTED", @@ -12562,10 +10952,10 @@ "UNDEFINED" ], "enumDescriptions": [ - "Unspecified.", - "Finding has been muted.", - "Finding has been unmuted.", - "Finding has never been muted/unmuted." + "", + "", + "", + "" ], "type": "string" } @@ -12573,11 +10963,9 @@ "type": "object" }, "Subject": { - "description": "Represents a Kubernetes subject.", "id": "Subject", "properties": { "kind": { - "description": "Authentication type for the subject.", "enum": [ "AUTH_TYPE_UNSPECIFIED", "USER", @@ -12585,38 +10973,32 @@ "GROUP" ], "enumDescriptions": [ - "Authentication is not specified.", - "User with valid certificate.", - "Users managed by Kubernetes API with credentials stored as secrets.", - "Collection of users." + "", + "", + "", + "" ], "type": "string" }, "name": { - "description": "Name for the subject.", "type": "string" }, "ns": { - "description": "Namespace for the subject.", "type": "string" } }, "type": "object" }, "Subscription": { - "description": "Resource capturing the state of an organization's subscription.", "id": "Subscription", "properties": { "details": { - "$ref": "Details", - "description": "The details of the most recent active subscription. If there has never been a subscription this will be empty." + "$ref": "Details" }, "name": { - "description": "The resource name of the subscription. Format: organizations/{organization}/subscription", "type": "string" }, "tier": { - "description": "The tier of SCC features this organization currently has access to.", "enum": [ "TIER_UNSPECIFIED", "STANDARD", @@ -12625,11 +11007,11 @@ "ENTERPRISE_MC" ], "enumDescriptions": [ - "Default value. This value is unused.", - "The standard tier.", - "The premium tier.", - "The enterprise tier.", - "The enterprise MC tier." + "", + "", + "", + "", + "" ], "type": "string" } @@ -12637,48 +11019,38 @@ "type": "object" }, "TicketInfo": { - "description": "Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding.", "id": "TicketInfo", "properties": { "assignee": { - "description": "The assignee of the ticket in the ticket system.", "type": "string" }, "description": { - "description": "The description of the ticket in the ticket system.", "type": "string" }, "id": { - "description": "The identifier of the ticket in the ticket system.", "type": "string" }, "status": { - "description": "The latest status of the ticket, as reported by the ticket system.", "type": "string" }, "updateTime": { - "description": "The time when the ticket was last updated, as reported by the ticket system.", "format": "google-datetime", "type": "string" }, "uri": { - "description": "The link to the ticket in the ticket system.", "type": "string" } }, "type": "object" }, "ToxicCombination": { - "description": "Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination.", "id": "ToxicCombination", "properties": { "attackExposureScore": { - "description": "The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack.", "format": "double", "type": "number" }, "relatedFindings": { - "description": "List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`.", "items": { "type": "string" }, @@ -12688,18 +11060,15 @@ "type": "object" }, "VertexAi": { - "description": "Vertex AI-related information associated with the finding.", "id": "VertexAi", "properties": { "datasets": { - "description": "Datasets associated with the finding.", "items": { "$ref": "Dataset" }, "type": "array" }, "pipelines": { - "description": "Pipelines associated with the finding.", "items": { "$ref": "Pipeline" }, @@ -12709,27 +11078,22 @@ "type": "object" }, "VirtualMachineThreatDetectionSettings": { - "description": "Resource capturing the settings for the Virtual Machine Threat Detection service.", "id": "VirtualMachineThreatDetectionSettings", "properties": { "modules": { "additionalProperties": { "$ref": "Config" }, - "description": "The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization}/virtualMachineThreatDetectionSettings * folders/{folder}/virtualMachineThreatDetectionSettings * projects/{project}/virtualMachineThreatDetectionSettings", "type": "string" }, "serviceAccount": { - "description": "Output only. The service account used by Virtual Machine Threat Detection detectors.", "readOnly": true, "type": "string" }, "serviceEnablementState": { - "description": "The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -12737,15 +11101,14 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The time the settings were last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -12754,46 +11117,37 @@ "type": "object" }, "Vulnerability": { - "description": "Refers to common vulnerability fields e.g. cve, cvss, cwe etc.", "id": "Vulnerability", "properties": { "cve": { - "$ref": "Cve", - "description": "CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/)" + "$ref": "Cve" }, "cwes": { - "description": "Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability.", "items": { "$ref": "Cwe" }, "type": "array" }, "fixedPackage": { - "$ref": "Package", - "description": "The fixed package is relevant to the finding." + "$ref": "Package" }, "offendingPackage": { - "$ref": "Package", - "description": "The offending package is relevant to the finding." + "$ref": "Package" }, "providerRiskScore": { - "description": "Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is.", "format": "int64", "type": "string" }, "reachable": { - "description": "Represents whether the vulnerability is reachable (detected via static analysis)", "type": "boolean" }, "securityBulletin": { - "$ref": "SecurityBulletin", - "description": "The security bulletin is relevant to this finding." + "$ref": "SecurityBulletin" } }, "type": "object" }, "VulnerabilityCountBySeverity": { - "description": "Vulnerability count by severity.", "id": "VulnerabilityCountBySeverity", "properties": { "severityToFindingCount": { @@ -12801,18 +11155,15 @@ "format": "int64", "type": "string" }, - "description": "Key is the Severity enum.", "type": "object" } }, "type": "object" }, "VulnerabilitySnapshot": { - "description": "Result containing the properties and count of a VulnerabilitySnapshot request.", "id": "VulnerabilitySnapshot", "properties": { "cloudProvider": { - "description": "The cloud provider for the vulnerability snapshot.", "enum": [ "CLOUD_PROVIDER_UNSPECIFIED", "GOOGLE_CLOUD_PLATFORM", @@ -12820,23 +11171,20 @@ "MICROSOFT_AZURE" ], "enumDescriptions": [ - "The cloud provider is unspecified.", - "The cloud provider is Google Cloud.", - "The cloud provider is Amazon Web Services.", - "The cloud provider is Microsoft Azure." + "", + "", + "", + "" ], "type": "string" }, "findingCount": { - "$ref": "VulnerabilityCountBySeverity", - "description": "The vulnerability count by severity." + "$ref": "VulnerabilityCountBySeverity" }, "name": { - "description": "Identifier. The vulnerability snapshot name. Format: //locations//vulnerabilitySnapshots/", "type": "string" }, "snapshotTime": { - "description": "The time that the snapshot was taken.", "format": "google-datetime", "type": "string" } @@ -12844,22 +11192,18 @@ "type": "object" }, "WebSecurityScannerSettings": { - "description": "Resource capturing the settings for the Web Security Scanner service.", "id": "WebSecurityScannerSettings", "properties": { "modules": { "additionalProperties": { "$ref": "Config" }, - "description": "The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration.", "type": "object" }, "name": { - "description": "Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization}/webSecurityScannerSettings * folders/{folder}/webSecurityScannerSettings * projects/{project}/webSecurityScannerSettings", "type": "string" }, "serviceEnablementState": { - "description": "The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED.", "enum": [ "ENABLEMENT_STATE_UNSPECIFIED", "INHERITED", @@ -12867,15 +11211,14 @@ "DISABLED" ], "enumDescriptions": [ - "Default value. This value is unused.", - "State is inherited from the parent resource.", - "State is enabled.", - "State is disabled." + "", + "", + "", + "" ], "type": "string" }, "updateTime": { - "description": "Output only. The time the settings were last updated.", "format": "google-datetime", "readOnly": true, "type": "string" @@ -12884,11 +11227,9 @@ "type": "object" }, "YaraRuleSignature": { - "description": "A signature corresponding to a YARA rule.", "id": "YaraRuleSignature", "properties": { "yaraRule": { - "description": "The name of the YARA rule.", "type": "string" } }, diff --git a/src/apis/securitycenter/v1.ts b/src/apis/securitycenter/v1.ts index 7106ef88f2..731b76097c 100644 --- a/src/apis/securitycenter/v1.ts +++ b/src/apis/securitycenter/v1.ts @@ -128,7615 +128,2185 @@ export namespace securitycenter_v1 { } } - /** - * Represents an access event. - */ export interface Schema$Access { - /** - * Caller's IP address, such as "1.1.1.1". - */ callerIp?: string | null; - /** - * The caller IP's geolocation, which identifies where the call came from. - */ callerIpGeo?: Schema$Geolocation; - /** - * The method that the service account called, e.g. "SetIamPolicy". - */ methodName?: string | null; - /** - * Associated email, such as "foo@google.com". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). - */ principalEmail?: string | null; - /** - * A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name\}/subject/{subject\}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name\}[{subject\}]`. - */ principalSubject?: string | null; - /** - * The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. - */ serviceAccountDelegationInfo?: Schema$ServiceAccountDelegationInfo[]; - /** - * The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/{PROJECT_ID\}/serviceAccounts/{ACCOUNT\}/keys/{key\}". - */ serviceAccountKeyName?: string | null; - /** - * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" - */ serviceName?: string | null; - /** - * The caller's user agent string associated with the finding. - */ userAgent?: string | null; - /** - * Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application. - */ userAgentFamily?: string | null; - /** - * A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username. - */ userName?: string | null; } - /** - * Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding. - */ export interface Schema$AccessReview { - /** - * The API group of the resource. "*" means all. - */ group?: string | null; - /** - * The name of the resource being requested. Empty means all. - */ name?: string | null; - /** - * Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by "" (empty). - */ ns?: string | null; - /** - * The optional resource type requested. "*" means all. - */ resource?: string | null; - /** - * The optional subresource type. - */ subresource?: string | null; - /** - * A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. "*" means all. - */ verb?: string | null; - /** - * The API version of the resource. "*" means all. - */ version?: string | null; } - /** - * Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection). - */ export interface Schema$AdaptiveProtection { - /** - * A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation. - */ confidence?: number | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$AdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$AdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$AdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Details about resources affected by this finding. - */ export interface Schema$AffectedResources { - /** - * The count of resources affected by the finding. - */ count?: string | null; } - /** - * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. - */ export interface Schema$AgentDataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The agent principal that accessed the data. - */ principalSubject?: string | null; } - /** - * Contains information about the AI model associated with the finding. - */ export interface Schema$AiModel { - /** - * The platform on which the model is deployed. - */ deploymentPlatform?: string | null; - /** - * The user defined display name of model. Ex. baseline-classification-model - */ displayName?: string | null; - /** - * The domain of the model, for example, “image-classification”. - */ domain?: string | null; - /** - * The name of the model library, for example, “transformers”. - */ library?: string | null; - /** - * The region in which the model is used, for example, “us-central1”. - */ location?: string | null; - /** - * The name of the AI model, for example, "gemini:1.0.0". - */ name?: string | null; - /** - * The publisher of the model, for example, “google” or “nvidia”. - */ publisher?: string | null; - /** - * The purpose of the model, for example, "Inteference" or "Training". - */ usageCategory?: string | null; } - /** - * Allowed IP rule. - */ export interface Schema$Allowed { - /** - * Optional. Optional list of allowed IP rules. - */ ipRules?: Schema$IpRule[]; } - /** - * Represents an application associated with a finding. - */ export interface Schema$Application { - /** - * The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`. - */ baseUri?: string | null; - /** - * The full URI with payload that can be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`. - */ fullUri?: string | null; } - /** - * Represents the result of evaluating artifact guard policies. - */ export interface Schema$ArtifactGuardPolicies { - /** - * A list of failing policies. - */ failingPolicies?: Schema$ArtifactGuardPolicy[]; - /** - * The ID of the resource that has policies configured for it. - */ resourceId?: string | null; } - /** - * Represents an artifact guard policy. - */ export interface Schema$ArtifactGuardPolicy { - /** - * The reason for the policy failure, for example, "severity=HIGH AND max_vuln_count=2". - */ failureReason?: string | null; - /** - * The ID of the failing policy, for example, "organizations/3392779/locations/global/policies/prod-policy". - */ policyId?: string | null; - /** - * The type of the policy evaluation. - */ type?: string | null; } - /** - * Security Command Center representation of a Google Cloud resource. The Asset is a Security Command Center resource that captures information about a single Google Cloud resource. All modifications to an Asset are only within the context of Security Command Center and don't affect the referenced Google Cloud resource. - */ export interface Schema$Asset { - /** - * The canonical name of the resource. It's either "organizations/{organization_id\}/assets/{asset_id\}", "folders/{folder_id\}/assets/{asset_id\}" or "projects/{project_number\}/assets/{asset_id\}", depending on the closest CRM ancestor of the resource. - */ canonicalName?: string | null; - /** - * The time at which the asset was created in Security Command Center. - */ createTime?: string | null; - /** - * Cloud IAM Policy information associated with the Google Cloud resource described by the Security Command Center asset. This information is managed and defined by the Google Cloud resource and cannot be modified by the user. - */ iamPolicy?: Schema$IamPolicy; - /** - * The relative resource name of this asset. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/assets/{asset_id\}". - */ name?: string | null; - /** - * Resource managed properties. These properties are managed and defined by the Google Cloud resource and cannot be modified by the user. - */ resourceProperties?: {[key: string]: any} | null; - /** - * Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user. - */ securityCenterProperties?: Schema$SecurityCenterProperties; - /** - * User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the asset. - */ securityMarks?: Schema$SecurityMarks; - /** - * The time at which the asset was last updated or added in Cloud SCC. - */ updateTime?: string | null; } - /** - * The configuration used for Asset Discovery runs. - */ export interface Schema$AssetDiscoveryConfig { - /** - * The folder ids to use for filtering asset discovery. It consists of only digits, e.g., 756619654966. - */ folderIds?: string[] | null; - /** - * The mode to use for filtering asset discovery. - */ inclusionMode?: string | null; - /** - * The project ids to use for filtering asset discovery. - */ projectIds?: string[] | null; } - /** - * Information about DDoS attack volume and classification. - */ export interface Schema$Attack { - /** - * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'. - */ classification?: string | null; - /** - * Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead. - */ volumeBps?: number | null; - /** - * Total BPS (bytes per second) volume of attack. - */ volumeBpsLong?: string | null; - /** - * Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead. - */ volumePps?: number | null; - /** - * Total PPS (packets per second) volume of attack. - */ volumePpsLong?: string | null; } - /** - * An attack exposure contains the results of an attack path simulation run. - */ export interface Schema$AttackExposure { - /** - * The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789` - */ attackExposureResult?: string | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedHighValueResourcesCount?: number | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedLowValueResourcesCount?: number | null; - /** - * The number of medium value resources that are exposed as a result of this finding. - */ exposedMediumValueResourcesCount?: number | null; - /** - * The most recent time the attack exposure was updated on this finding. - */ latestCalculationTime?: string | null; - /** - * A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate. - */ score?: number | null; - /** - * What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not. - */ state?: string | null; } - /** - * A path that an attacker could take to reach an exposed resource. - */ export interface Schema$AttackPath { - /** - * A list of the edges between nodes in this attack path. - */ edges?: Schema$AttackPathEdge[]; - /** - * The attack path name, for example, `organizations/12/simulation/34/valuedResources/56/attackPaths/78` - */ name?: string | null; - /** - * A list of nodes that exist in this attack path. - */ pathNodes?: Schema$AttackPathNode[]; } - /** - * Represents a connection between a source node and a destination node in this attack path. - */ export interface Schema$AttackPathEdge { - /** - * The attack node uuid of the destination node. - */ destination?: string | null; - /** - * The attack node uuid of the source node. - */ source?: string | null; } - /** - * Represents one point that an attacker passes through in this attack path. - */ export interface Schema$AttackPathNode { - /** - * The findings associated with this node in the attack path. - */ associatedFindings?: Schema$PathNodeAssociatedFinding[]; - /** - * A list of attack step nodes that exist in this attack path node. - */ attackSteps?: Schema$AttackStepNode[]; - /** - * Human-readable name of this resource. - */ displayName?: string | null; - /** - * The name of the resource at this point in the attack path. The format of the name follows the Cloud Asset Inventory [resource name format](https://cloud.google.com/asset-inventory/docs/resource-name-format) - */ resource?: string | null; - /** - * The [supported resource type](https://cloud.google.com/asset-inventory/docs/supported-asset-types) - */ resourceType?: string | null; - /** - * Unique id of the attack path node. - */ uuid?: string | null; } - /** - * Detailed steps the attack can take between path nodes. - */ export interface Schema$AttackStepNode { - /** - * Attack step description - */ description?: string | null; - /** - * User friendly name of the attack step - */ displayName?: string | null; - /** - * Attack step labels for metadata - */ labels?: {[key: string]: string} | null; - /** - * Attack step type. Can be either AND, OR or DEFENSE - */ type?: string | null; - /** - * Unique ID for one Node - */ uuid?: 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$AuditConfig { - /** - * The configuration for logging of each type of permission. - */ auditLogConfigs?: Schema$AuditLogConfig[]; - /** - * 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$AuditLogConfig { - /** - * 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; } - /** - * An AWS account that is a member of an organization. - */ export interface Schema$AwsAccount { - /** - * The unique identifier (ID) of the account, containing exactly 12 digits. - */ id?: string | null; - /** - * The friendly name of this account. - */ name?: string | null; } - /** - * AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services. - */ export interface Schema$AwsMetadata { - /** - * The AWS account associated with the resource. - */ account?: Schema$AwsAccount; - /** - * The AWS organization associated with the resource. - */ organization?: Schema$AwsOrganization; - /** - * A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level. - */ organizationalUnits?: Schema$AwsOrganizationalUnit[]; } - /** - * An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies. - */ export interface Schema$AwsOrganization { - /** - * The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires "o-" followed by from 10 to 32 lowercase letters or digits. - */ id?: string | null; } - /** - * An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs. - */ export interface Schema$AwsOrganizationalUnit { - /** - * The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits. For example, "ou-ab12-cd34ef56". - */ id?: string | null; - /** - * The friendly name of the OU. - */ name?: string | null; } - /** - * Represents an Azure management group. - */ export interface Schema$AzureManagementGroup { - /** - * The display name of the Azure management group. - */ displayName?: string | null; - /** - * The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`. - */ id?: string | null; } - /** - * Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure. - */ export interface Schema$AzureMetadata { - /** - * A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level. - */ managementGroups?: Schema$AzureManagementGroup[]; - /** - * The Azure resource group associated with the resource. - */ resourceGroup?: Schema$AzureResourceGroup; - /** - * The Azure subscription associated with the resource. - */ subscription?: Schema$AzureSubscription; - /** - * The Azure Entra tenant associated with the resource. - */ tenant?: Schema$AzureTenant; } - /** - * Represents an Azure resource group. - */ export interface Schema$AzureResourceGroup { - /** - * The ID of the Azure resource group. - */ id?: string | null; - /** - * The name of the Azure resource group. This is not a UUID. - */ name?: string | null; } - /** - * Represents an Azure subscription. - */ export interface Schema$AzureSubscription { - /** - * The display name of the Azure subscription. - */ displayName?: string | null; - /** - * The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`. - */ id?: string | null; } - /** - * Represents a Microsoft Entra tenant. - */ export interface Schema$AzureTenant { - /** - * The display name of the Azure tenant. - */ displayName?: string | null; - /** - * The ID of the Microsoft Entra tenant, for example, "a11aaa11-aa11-1aa1-11aa-1aaa11a". - */ id?: string | null; } - /** - * Information related to Google Cloud Backup and DR Service findings. - */ export interface Schema$BackupDisasterRecovery { - /** - * The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`. - */ appliance?: string | null; - /** - * The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`. - */ applications?: string[] | null; - /** - * The timestamp at which the Backup and DR backup was created. - */ backupCreateTime?: string | null; - /** - * The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`. - */ backupTemplate?: string | null; - /** - * The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`. - */ backupType?: string | null; - /** - * The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`. - */ host?: string | null; - /** - * The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`. - */ policies?: string[] | null; - /** - * The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`. - */ policyOptions?: string[] | null; - /** - * The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`. - */ profile?: string | null; - /** - * The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`. - */ storagePool?: string | null; } - /** - * Request message to create multiple resource value configs - */ export interface Schema$BatchCreateResourceValueConfigsRequest { - /** - * Required. The resource value configs to be created. - */ requests?: Schema$CreateResourceValueConfigRequest[]; } - /** - * Response message for BatchCreateResourceValueConfigs - */ export interface Schema$BatchCreateResourceValueConfigsResponse { - /** - * The resource value configs created - */ resourceValueConfigs?: Schema$GoogleCloudSecuritycenterV1ResourceValueConfig[]; } - /** - * The destination BigQuery dataset to export findings to. - */ export interface Schema$BigQueryDestination { - /** - * Required. The relative resource name of the destination dataset, in the form projects/{projectId\}/datasets/{datasetId\}. - */ dataset?: string | null; } - /** - * Associates `members`, or principals, with a `role`. - */ export interface Schema$Binding { - /** - * The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ condition?: Schema$Expr; - /** - * Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid\}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid\}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid\}.svc.id.goog[{namespace\}/{kubernetes-sa\}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid\}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain\}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/group/{group_id\}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/x`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/group/{group_id\}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/x`: All identities in a workload identity pool. * `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. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. - */ members?: string[] | null; - /** - * Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles). - */ role?: string | null; } - /** - * Request message for bulk findings update. Note: 1. If multiple bulk update requests match the same resource, the order in which they get executed is not defined. 2. Once a bulk operation is started, there is no way to stop it. - */ export interface Schema$BulkMuteFindingsRequest { - /** - * Expression that identifies findings that should be updated. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * This can be a mute configuration name or any identifier for mute/unmute of findings based on the filter. - */ muteAnnotation?: string | null; - /** - * Optional. All findings matching the given filter will have their mute state set to this value. The default value is `MUTED`. Setting this to `UNDEFINED` will clear the mute state on all matching findings. - */ muteState?: string | null; } - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). - */ export interface Schema$Chokepoint { - /** - * List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings. - */ relatedFindings?: string[] | null; } - /** - * Fields related to Google Cloud Armor findings. - */ export interface Schema$CloudArmor { - /** - * Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview). - */ adaptiveProtection?: Schema$AdaptiveProtection; - /** - * Information about DDoS attack volume and classification. - */ attack?: Schema$Attack; - /** - * Duration of attack from the start until the current moment (updated every 5 minutes). - */ duration?: string | null; - /** - * Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview). - */ requests?: Schema$Requests; - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ securityPolicy?: Schema$SecurityPolicy; - /** - * Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS attacks, or "L_7" for Layer 7 DDoS attacks. - */ threatVector?: string | null; } - /** - * CloudControl associated with the finding. - */ export interface Schema$CloudControl { - /** - * Name of the CloudControl associated with the finding. - */ cloudControlName?: string | null; - /** - * Policy type of the CloudControl - */ policyType?: string | null; - /** - * Type of cloud control. - */ type?: string | null; - /** - * Version of the Cloud Control - */ version?: number | null; } - /** - * The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding. - */ export interface Schema$CloudDlpDataProfile { - /** - * Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`. - */ dataProfile?: string | null; - /** - * Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type. - */ infoTypes?: Schema$InfoType[]; - /** - * The resource hierarchy level at which the data profile was generated. - */ parentType?: string | null; } - /** - * Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding. - */ export interface Schema$CloudDlpInspection { - /** - * Whether Cloud DLP scanned the complete resource or a sampled subset. - */ fullScan?: boolean | null; - /** - * The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`. - */ infoType?: string | null; - /** - * The number of times Cloud DLP found this infoType within this job and resource. - */ infoTypeCount?: string | null; - /** - * Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`. - */ inspectJob?: string | null; } - /** - * Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) - */ export interface Schema$CloudLoggingEntry { - /** - * A unique identifier for the log entry. - */ insertId?: string | null; - /** - * The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity`. Note that this field is not URL-encoded, unlike the `LOG_ID` field in `LogEntry`. - */ logId?: string | null; - /** - * The organization, folder, or project of the monitored resource that produced this log entry. - */ resourceContainer?: string | null; - /** - * The time the event described by the log entry occurred. - */ timestamp?: string | null; } - /** - * Contains compliance information about a security standard indicating unmet recommendations. - */ export interface Schema$Compliance { - /** - * Policies within the standard or benchmark, for example, A.12.4.1 - */ ids?: string[] | null; - /** - * Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP. - */ standard?: string | null; - /** - * Version of the standard or benchmark, for example, 1.1 - */ version?: string | null; } - /** - * Compliance Details associated with the finding. - */ export interface Schema$ComplianceDetails { - /** - * CloudControl associated with the finding - */ cloudControl?: Schema$CloudControl; - /** - * Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier - */ cloudControlDeploymentNames?: string[] | null; - /** - * Details of Frameworks associated with the finding - */ frameworks?: Schema$Framework[]; } - /** - * Contains information about the IP connection associated with the finding. - */ export interface Schema$Connection { - /** - * Destination IP address. Not present for sockets that are listening and not connected. - */ destinationIp?: string | null; - /** - * Destination port. Not present for sockets that are listening and not connected. - */ destinationPort?: number | null; - /** - * IANA Internet Protocol Number such as TCP(6) and UDP(17). - */ protocol?: string | null; - /** - * Source IP address. - */ sourceIp?: string | null; - /** - * Source port. - */ sourcePort?: number | null; } - /** - * The email address of a contact. - */ export interface Schema$Contact { - /** - * An email address. For example, "`person123@company.com`". - */ email?: string | null; } - /** - * Details about specific contacts - */ export interface Schema$ContactDetails { - /** - * A list of contacts - */ contacts?: Schema$Contact[]; } - /** - * Container associated with the finding. - */ export interface Schema$Container { - /** - * The time that the container was created. - */ createTime?: string | null; - /** - * Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest. - */ imageId?: string | null; - /** - * Container labels, as provided by the container runtime. - */ labels?: Schema$Label[]; - /** - * Name of the container. - */ name?: string | null; - /** - * Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags. - */ uri?: string | null; } - /** - * Compliance control associated with the finding. - */ export interface Schema$Control { - /** - * Name of the Control - */ controlName?: string | null; - /** - * Display name of the control. For example, AU-02. - */ displayName?: string | null; } - /** - * Request message to create single resource value config - */ export interface Schema$CreateResourceValueConfigRequest { - /** - * Required. Resource name of the new ResourceValueConfig's parent. - */ parent?: string | null; - /** - * Required. The resource value config being created. - */ resourceValueConfig?: Schema$GoogleCloudSecuritycenterV1ResourceValueConfig; } - /** - * An error encountered while validating the uploaded configuration of an Event Threat Detection Custom Module. - */ export interface Schema$CustomModuleValidationError { - /** - * A description of the error, suitable for human consumption. Required. - */ description?: string | null; - /** - * The end position of the error in the uploaded text version of the module. This field may be omitted if no specific position applies, or if one could not be computed. - */ end?: Schema$Position; - /** - * The path, in RFC 8901 JSON Pointer format, to the field that failed validation. This may be left empty if no specific field is affected. - */ fieldPath?: string | null; - /** - * The initial position of the error in the uploaded text version of the module. This field may be omitted if no specific position applies, or if one could not be computed. - */ start?: Schema$Position; } - /** - * A list of zero or more errors encountered while validating the uploaded configuration of an Event Threat Detection Custom Module. - */ export interface Schema$CustomModuleValidationErrors { - /** - * The list of errors. - */ errors?: Schema$CustomModuleValidationError[]; } - /** - * CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability. - */ export interface Schema$Cve { - /** - * Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document - */ cvssv3?: Schema$Cvssv3; - /** - * The exploitation activity of the vulnerability in the wild. - */ exploitationActivity?: string | null; - /** - * Date the first publicly available exploit or PoC was released. - */ exploitReleaseDate?: string | null; - /** - * Date of the earliest known exploitation. - */ firstExploitationDate?: string | null; - /** - * The unique identifier for the vulnerability. e.g. CVE-2021-34527 - */ id?: string | null; - /** - * The potential impact of the vulnerability if it was to be exploited. - */ impact?: string | null; - /** - * Whether or not the vulnerability has been observed in the wild. - */ observedInTheWild?: boolean | null; - /** - * Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527 - */ references?: Schema$Reference[]; - /** - * Whether upstream fix is available for the CVE. - */ upstreamFixAvailable?: boolean | null; - /** - * Whether or not the vulnerability was zero day when the finding was published. - */ zeroDay?: boolean | null; } - /** - * Common Vulnerability Scoring System version 3. - */ export interface Schema$Cvssv3 { - /** - * This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. - */ attackComplexity?: string | null; - /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. - */ attackVector?: string | null; - /** - * This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. - */ availabilityImpact?: string | null; - /** - * The base score is a function of the base metric scores. - */ baseScore?: number | null; - /** - * This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. - */ confidentialityImpact?: string | null; - /** - * This metric measures the impact to integrity of a successfully exploited vulnerability. - */ integrityImpact?: string | null; - /** - * This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. - */ privilegesRequired?: string | null; - /** - * The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. - */ scope?: string | null; - /** - * This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. - */ userInteraction?: string | null; } - /** - * CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/). - */ export interface Schema$Cwe { - /** - * The CWE identifier, e.g. CWE-94 - */ id?: string | null; - /** - * Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html - */ references?: Schema$Reference[]; } - /** - * Details about a data access attempt made by a principal not authorized under applicable data security policy. - */ export interface Schema$DataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; } - /** - * Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided. - */ export interface Schema$Database { - /** - * The human-readable name of the database that the user connected to. - */ displayName?: string | null; - /** - * The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change. - */ grantees?: string[] | null; - /** - * Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory. - */ name?: string | null; - /** - * The SQL statement that is associated with the database access. - */ query?: string | null; - /** - * The username used to connect to the database. The username might not be an IAM principal and does not have a set format. - */ userName?: string | null; - /** - * The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion). - */ version?: string | null; } - /** - * Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy. - */ export interface Schema$DataFlowEvent { - /** - * Unique identifier for data flow event. - */ eventId?: string | null; - /** - * Timestamp of data flow event. - */ eventTime?: string | null; - /** - * The operation performed by the principal for the data flow event. - */ operation?: string | null; - /** - * The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; - /** - * Non-compliant location of the principal or the data destination. - */ violatedLocation?: string | null; } - /** - * Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments. - */ export interface Schema$DataRetentionDeletionEvent { - /** - * Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000. - */ dataObjectCount?: string | null; - /** - * Timestamp indicating when the event was detected. - */ eventDetectionTime?: string | null; - /** - * Type of the DRD event. - */ eventType?: string | null; - /** - * Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days. - */ maxRetentionAllowed?: string | null; - /** - * Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION. - */ minRetentionAllowed?: string | null; } - /** - * Vertex AI dataset associated with the finding. - */ export interface Schema$Dataset { - /** - * The user defined display name of dataset, e.g. plants-dataset - */ displayName?: string | null; - /** - * Resource name of the dataset, e.g. projects/{project\}/locations/{location\}/datasets/2094040236064505856 - */ name?: string | null; - /** - * Data source, such as BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod - */ source?: string | null; } - /** - * Denied IP rule. - */ export interface Schema$Denied { - /** - * Optional. Optional list of denied IP rules. - */ ipRules?: Schema$IpRule[]; } - /** - * Memory hash detection contributing to the binary family match. - */ export interface Schema$Detection { - /** - * The name of the binary associated with the memory hash signature detection. - */ binary?: string | null; - /** - * The percentage of memory page hashes in the signature that were matched. - */ percentPagesMatched?: number | null; } - /** - * Represents discovered, customer managed workload that is not registered with the respective GCP service. - */ export interface Schema$DiscoveredWorkload { - /** - * The confidence in detection of this workload. - */ confidence?: string | null; - /** - * A boolean flag set to true if associated hardware strongly predicts the workload type. - */ detectedRelevantHardware?: boolean | null; - /** - * A boolean flag set to true if associated keywords strongly predict the workload type. - */ detectedRelevantKeywords?: boolean | null; - /** - * A boolean flag set to true if installed packages strongly predict the workload type. - */ detectedRelevantPackages?: boolean | null; - /** - * The type of workload. - */ workloadType?: string | null; } - /** - * Contains information about the disk associated with the finding. - */ export interface Schema$Disk { - /** - * The name of the disk, for example, "https://www.googleapis.com/compute/v1/projects/{project-id\}/zones/{zone-id\}/disks/{disk-id\}". - */ name?: string | null; } - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ export interface Schema$DiskPath { - /** - * UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid) - */ partitionUuid?: string | null; - /** - * Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh - */ relativePath?: string | null; } - /** - * The record of a dynamic mute rule that matches the finding. - */ export interface Schema$DynamicMuteRecord { - /** - * When the dynamic mute rule first matched the finding. - */ matchTime?: string | null; - /** - * The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`. - */ muteConfig?: string | null; } - /** - * An EffectiveEventThreatDetectionCustomModule is the representation of an Event Threat Detection custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablement_state` property in EffectiveEventThreatDetectionCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective `enablement_state` for the module in all child folders or projects is also `enabled`. EffectiveEventThreatDetectionCustomModule is read-only. - */ export interface Schema$EffectiveEventThreatDetectionCustomModule { - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * Output only. Config for the effective module. - */ config?: {[key: string]: any} | null; - /** - * Output only. The description for the module. - */ description?: string | null; - /** - * Output only. The human readable name to be displayed for the module. - */ displayName?: string | null; - /** - * Output only. The effective state of enablement for the module at the given level of the hierarchy. - */ enablementState?: string | null; - /** - * Output only. The resource name of the effective ETD custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. - */ name?: string | null; - /** - * Output only. Type for the module. e.g. CONFIGURABLE_BAD_IP. - */ type?: string | 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); \} - */ export interface Schema$Empty {} - /** - * A name-value pair representing an environment variable used in an operating system process. - */ export interface Schema$EnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. - */ name?: string | null; - /** - * Environment variable value as a JSON encoded string. - */ val?: string | null; } - /** - * Represents an instance of an Event Threat Detection custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by child folders and projects. - */ export interface Schema$EventThreatDetectionCustomModule { - /** - * Output only. The closest ancestor module that this module inherits the enablement state from. The format is the same as the EventThreatDetectionCustomModule resource name. - */ ancestorModule?: string | null; - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * Config for the module. For the resident module, its config value is defined at this level. For the inherited module, its config value is inherited from the ancestor module. - */ config?: {[key: string]: any} | null; - /** - * The description for the module. - */ description?: string | null; - /** - * The human readable name to be displayed for the module. - */ displayName?: string | null; - /** - * The state of enablement for the module at the given level of the hierarchy. - */ enablementState?: string | null; - /** - * Output only. The editor the module was last updated by. - */ lastEditor?: string | null; - /** - * Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. - */ name?: string | null; - /** - * Type for the module. e.g. CONFIGURABLE_BAD_IP. - */ type?: string | null; - /** - * Output only. The time the module was last updated. - */ updateTime?: string | null; } - /** - * Resource where data was exfiltrated from or exfiltrated to. - */ export interface Schema$ExfilResource { - /** - * Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket. - */ components?: string[] | null; - /** - * The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name). - */ name?: string | null; } - /** - * Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to. - */ export interface Schema$Exfiltration { - /** - * If there are multiple sources, then the data is considered "joined" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source. - */ sources?: Schema$ExfilResource[]; - /** - * If there are multiple targets, each target would get a complete copy of the "joined" source data. - */ targets?: Schema$ExfilResource[]; - /** - * Total exfiltrated bytes processed for the entire job. - */ totalExfiltratedBytes?: string | null; } - /** - * The LRO metadata for a ExportFindings request. - */ export interface Schema$ExportFindingsMetadata { - /** - * Required. The destination BigQuery dataset to export findings to. - */ bigQueryDestination?: Schema$BigQueryDestination; - /** - * Optional. Timestamp at which export was started - */ exportStartTime?: string | null; } - /** - * The response to a ExportFindings request. Contains the LRO information. - */ export interface Schema$ExportFindingsResponse {} - /** - * 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; } - /** - * Details about the externally exposed resource associated with the finding. - */ export interface Schema$ExternalExposure { - /** - * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" - */ backendBucket?: string | null; - /** - * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ backendService?: string | null; - /** - * The name and version of the exposed web application, for example, "Jenkins 2.184". - */ exposedApplication?: string | null; - /** - * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” - */ exposedEndpoint?: string | null; - /** - * The name and version of the service, for example, "Jupyter Notebook 6.14.0". - */ exposedService?: string | null; - /** - * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". - */ forwardingRule?: string | null; - /** - * Hostname of the exposed application, for example, "https://test-app.a.run.app/" - */ hostnameUri?: string | null; - /** - * The http response returned by the web application. - */ httpResponse?: Schema$HttpResponse[]; - /** - * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". - */ instanceGroup?: string | null; - /** - * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ internalBackendService?: string | null; - /** - * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ loadBalancerFirewallPolicy?: string | null; - /** - * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". - */ networkEndpointGroup?: string | null; - /** - * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". - */ networkIngressFirewallPolicy?: string | null; - /** - * Private IP address of the exposed endpoint. - */ privateIpAddress?: string | null; - /** - * Port number associated with private IP address. - */ privatePort?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" - */ pscNetworkAttachment?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" - */ pscServiceAttachment?: string | null; - /** - * Public IP address of the exposed endpoint. - */ publicIpAddress?: string | null; - /** - * Public port number of the exposed endpoint. - */ publicPort?: string | null; - /** - * The full resource name of the firewall policy of the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ serviceFirewallPolicy?: string | null; } - /** - * File information about the related binary/library used by an executable, or the script used by a script interpreter - */ export interface Schema$File { - /** - * Prefix of the file contents as a JSON-encoded string. - */ contents?: string | null; - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ diskPath?: Schema$DiskPath; - /** - * The load state of the file. - */ fileLoadState?: string | null; - /** - * The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file. - */ hashedSize?: string | null; - /** - * Operation(s) performed on a file. - */ operations?: Schema$FileOperation[]; - /** - * True when the hash covers only a prefix of the file. - */ partiallyHashed?: boolean | null; - /** - * Absolute path of the file as a JSON encoded string. - */ path?: string | null; - /** - * SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file. - */ sha256?: string | null; - /** - * Size of the file in bytes. - */ size?: string | null; } - /** - * Operation(s) performed on a file. - */ export interface Schema$FileOperation { - /** - * The type of the operation - */ type?: string | null; } - /** - * Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding. - */ export interface Schema$Finding { - /** - * Access details associated with the finding, such as more information on the caller, which method was accessed, and from where. - */ access?: Schema$Access; - /** - * AffectedResources associated with the finding. - */ affectedResources?: Schema$AffectedResources; - /** - * Agent data access events associated with the finding. - */ agentDataAccessEvents?: Schema$AgentDataAccessEvent[]; - /** - * The AI model associated with the finding. - */ aiModel?: Schema$AiModel; - /** - * Represents an application associated with the finding. - */ application?: Schema$Application; - /** - * ArtifactGuardPolicies associated with the finding. - */ artifactGuardPolicies?: Schema$ArtifactGuardPolicies; - /** - * The results of an attack path simulation relevant to this finding. - */ attackExposure?: Schema$AttackExposure; - /** - * Fields related to Backup and DR findings. - */ backupDisasterRecovery?: Schema$BackupDisasterRecovery; - /** - * The canonical name of the finding. It's either "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}" or "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests. - */ chokepoint?: Schema$Chokepoint; - /** - * Fields related to Cloud Armor findings. - */ cloudArmor?: Schema$CloudArmor; - /** - * Cloud DLP data profile that is associated with the finding. - */ cloudDlpDataProfile?: Schema$CloudDlpDataProfile; - /** - * Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding. - */ cloudDlpInspection?: Schema$CloudDlpInspection; - /** - * Details about the compliance implications of the finding. - */ complianceDetails?: Schema$ComplianceDetails; - /** - * Contains compliance information for security standards associated to the finding. - */ compliances?: Schema$Compliance[]; - /** - * Contains information about the IP connection associated with the finding. - */ connections?: Schema$Connection[]; - /** - * Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { "security": { "contacts": [ { "email": "person1@company.com" \}, { "email": "person2@company.com" \} ] \} \} - */ contacts?: {[key: string]: Schema$ContactDetails} | null; - /** - * Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers. - */ containers?: Schema$Container[]; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * Data access events associated with the finding. - */ dataAccessEvents?: Schema$DataAccessEvent[]; - /** - * Database associated with the finding. - */ database?: Schema$Database; - /** - * Data flow events associated with the finding. - */ dataFlowEvents?: Schema$DataFlowEvent[]; - /** - * Data retention deletion events associated with the finding. - */ dataRetentionDeletionEvents?: Schema$DataRetentionDeletionEvent[]; - /** - * Contains more details about the finding. - */ description?: string | null; - /** - * DiscoveredWorkload associated with the finding. - */ discoveredWorkload?: Schema$DiscoveredWorkload; - /** - * Disk associated with the finding. - */ disk?: Schema$Disk; - /** - * The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * Represents exfiltrations associated with the finding. - */ exfiltration?: Schema$Exfiltration; - /** - * External exposure associated with the finding. - */ externalExposure?: Schema$ExternalExposure; - /** - * Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields. - */ externalSystems?: { [key: string]: Schema$GoogleCloudSecuritycenterV1ExternalSystem; } | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * File associated with the finding. - */ files?: Schema$File[]; - /** - * The class of the finding. - */ findingClass?: string | null; - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests. - */ groupMemberships?: Schema$GroupMembership[]; - /** - * Represents IAM bindings associated with the finding. - */ iamBindings?: Schema$IamBinding[]; - /** - * Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ indicator?: Schema$Indicator; - /** - * IP rules associated with the finding. - */ ipRules?: Schema$IpRules; - /** - * Job associated with the finding. - */ job?: Schema$Job; - /** - * Signature of the kernel rootkit. - */ kernelRootkit?: Schema$KernelRootkit; - /** - * Kubernetes resources associated with the finding. - */ kubernetes?: Schema$Kubernetes; - /** - * The load balancers associated with the finding. - */ loadBalancers?: Schema$LoadBalancer[]; - /** - * Log entries that are relevant to the finding. - */ logEntries?: Schema$LogEntry[]; - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ mitreAttack?: Schema$MitreAttack; - /** - * Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885 - */ moduleName?: string | null; - /** - * Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute. - */ mute?: string | null; - /** - * Output only. The mute information regarding this finding. - */ muteInfo?: Schema$MuteInfo; - /** - * Records additional information about the mute operation, for example, the [mute configuration](/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding. - */ muteInitiator?: string | null; - /** - * Output only. The most recent time this finding was muted or unmuted. - */ muteUpdateTime?: string | null; - /** - * The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". - */ name?: string | null; - /** - * Represents the VPC networks that the resource is attached to. - */ networks?: Schema$Network[]; - /** - * Steps to address the finding. - */ nextSteps?: string | null; - /** - * Notebook associated with the finding. - */ notebook?: Schema$Notebook; - /** - * Contains information about the org policies associated with the finding. - */ orgPolicies?: Schema$OrgPolicy[]; - /** - * The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ parent?: string | null; - /** - * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". - */ parentDisplayName?: string | null; - /** - * PolicyViolationSummary associated with the finding. - */ policyViolationSummary?: Schema$PolicyViolationSummary; - /** - * Represents operating system processes associated with the Finding. - */ processes?: Schema$Process[]; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Secret associated with the finding. - */ secret?: Schema$Secret; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$SecurityMarks; - /** - * The security posture associated with the finding. - */ securityPosture?: Schema$SecurityPosture; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests. - */ toxicCombination?: Schema$ToxicCombination; - /** - * VertexAi associated with the finding. - */ vertexAi?: Schema$VertexAi; - /** - * Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ vulnerability?: Schema$Vulnerability; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Compliance framework associated with the finding. - */ export interface Schema$Framework { - /** - * Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads - */ category?: string[] | null; - /** - * The controls associated with the framework. - */ controls?: Schema$Control[]; - /** - * Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework - */ displayName?: string | null; - /** - * Name of the framework associated with the finding - */ name?: string | null; - /** - * Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture) - */ type?: string | null; } - /** - * Google Cloud metadata associated with the resource. Only applicable if the finding's cloud provider is Google Cloud. - */ export interface Schema$GcpMetadata { - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$GoogleCloudSecuritycenterV2Folder[]; - /** - * The name of the organization that the resource belongs to. - */ organization?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; } - /** - * Represents a geographical location for a given access. - */ export interface Schema$Geolocation { - /** - * A CLDR. - */ regionCode?: string | null; } - /** - * Request message for `GetIamPolicy` method. - */ export interface Schema$GetIamPolicyRequest { - /** - * OPTIONAL: A `GetPolicyOptions` object for specifying options to `GetIamPolicy`. - */ options?: Schema$GetPolicyOptions; } - /** - * Encapsulates settings provided to GetIamPolicy. - */ export interface Schema$GetPolicyOptions { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ requestedPolicyVersion?: number | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * Configures how to deliver Findings to BigQuery Instance. - */ export interface Schema$GoogleCloudSecuritycenterV1BigQueryExport { - /** - * Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation. - */ createTime?: string | null; - /** - * The dataset to write findings' updates to. Its format is "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). - */ dataset?: string | null; - /** - * The description of the export (max of 1024 characters). - */ description?: string | null; - /** - * Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update. - */ mostRecentEditor?: string | null; - /** - * The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. - */ name?: string | null; - /** - * Output only. The service account that needs permission to create table and upload data to the BigQuery dataset. - */ principal?: string | null; - /** - * Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update. - */ updateTime?: string | null; } - /** - * Represents a Kubernetes RoleBinding or ClusterRoleBinding. - */ export interface Schema$GoogleCloudSecuritycenterV1Binding { - /** - * Name for the binding. - */ name?: string | null; - /** - * Namespace for the binding. - */ ns?: string | null; - /** - * The Role or ClusterRole referenced by the binding. - */ role?: Schema$Role; - /** - * Represents one or more subjects that are bound to the role. Not always available for PATCH requests. - */ subjects?: Schema$Subject[]; } - /** - * The response to a BulkMute request. Contains the LRO information. - */ export interface Schema$GoogleCloudSecuritycenterV1BulkMuteFindingsResponse {} - /** - * Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify. - */ export interface Schema$GoogleCloudSecuritycenterV1CustomConfig { - /** - * Custom output properties. - */ customOutput?: Schema$GoogleCloudSecuritycenterV1CustomOutputSpec; - /** - * Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks. - */ description?: string | null; - /** - * The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated. - */ predicate?: Schema$Expr; - /** - * An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the `nextSteps` property of the finding JSON. - */ recommendation?: string | null; - /** - * The resource types that the custom module operates on. Each custom module can specify up to 5 resource types. - */ resourceSelector?: Schema$GoogleCloudSecuritycenterV1ResourceSelector; - /** - * The severity to assign to findings generated by the module. - */ severity?: string | null; } - /** - * A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under `sourceProperties`. - */ export interface Schema$GoogleCloudSecuritycenterV1CustomOutputSpec { - /** - * A list of custom output properties to add to the finding. - */ properties?: Schema$GoogleCloudSecuritycenterV1Property[]; } - /** - * An EffectiveSecurityHealthAnalyticsCustomModule is the representation of a Security Health Analytics custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective enablement_state for the module in all child folders or projects is also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only. - */ export interface Schema$GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule { - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * Output only. The user-specified configuration for the module. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * Output only. The display name for the custom module. The name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. - */ displayName?: string | null; - /** - * Output only. The effective state of enablement for the module at the given level of the hierarchy. - */ enablementState?: string | null; - /** - * Output only. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}" - */ name?: string | null; } - /** - * Representation of third party SIEM/SOAR fields within SCC. - */ export interface Schema$GoogleCloudSecuritycenterV1ExternalSystem { - /** - * References primary/secondary etc assignees in the external system. - */ assignees?: string[] | null; - /** - * The time when the case was closed, as reported by the external system. - */ caseCloseTime?: string | null; - /** - * The time when the case was created, as reported by the external system. - */ caseCreateTime?: string | null; - /** - * The priority of the finding's corresponding case in the external system. - */ casePriority?: string | null; - /** - * The SLA of the finding's corresponding case in the external system. - */ caseSla?: string | null; - /** - * The link to the finding's corresponding case in the external system. - */ caseUri?: string | null; - /** - * The time when the case was last updated, as reported by the external system. - */ externalSystemUpdateTime?: string | null; - /** - * The identifier that's used to track the finding's corresponding case in the external system. - */ externalUid?: string | null; - /** - * Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" - */ name?: string | null; - /** - * The most recent status of the finding's corresponding case, as reported by the external system. - */ status?: string | null; - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ ticketInfo?: Schema$TicketInfo; } - /** - * A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings. - */ export interface Schema$GoogleCloudSecuritycenterV1MuteConfig { - /** - * Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation. - */ createTime?: string | null; - /** - * A description of the mute config. - */ description?: string | null; - /** - * The human readable name to be displayed for the mute config. - */ displayName?: string | null; - /** - * Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings. - */ expiryTime?: string | null; - /** - * Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:` - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update. - */ mostRecentEditor?: string | null; - /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` - */ name?: string | null; - /** - * Optional. The type of the mute config, which determines what type of mute state the config affects. The static mute state takes precedence over the dynamic mute state. Immutable after creation. STATIC by default if not set during creation. - */ type?: string | null; - /** - * Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update. - */ updateTime?: string | null; } - /** - * Cloud SCC's Notification - */ export interface Schema$GoogleCloudSecuritycenterV1NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to this notification's Finding. - */ resource?: Schema$GoogleCloudSecuritycenterV1Resource; } - /** - * Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Finding { - /** - * The canonical name of the finding. It's either "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}" or "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. Must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}" - */ name?: string | null; - /** - * The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ parent?: string | null; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV1p1beta1SecurityMarks; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; - } - /** - * Security Command Center's Notification - */ + } export interface Schema$GoogleCloudSecuritycenterV1p1beta1NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$GoogleCloudSecuritycenterV1p1beta1Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to the notification. - */ resource?: Schema$GoogleCloudSecuritycenterV1p1beta1Resource; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Resource { - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$GoogleCloudSecuritycenterV1p1beta1Folder[]; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project id that the resource belongs to. - */ projectDisplayName?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1SecurityMarks { - /** - * The canonical name of the marks. Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "folders/{folder_id\}/assets/{asset_id\}/securityMarks" "projects/{project_number\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * An individual name-value pair that defines a custom source property. - */ export interface Schema$GoogleCloudSecuritycenterV1Property { - /** - * Name of the property for the custom output. - */ name?: string | null; - /** - * The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks. - */ valueExpression?: Schema$Expr; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV1Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV1ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$AzureMetadata; - /** - * Indicates which cloud provider the resource resides in. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$Folder[]; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Indicates which organization or tenant in the cloud provider the finding applies to. - */ organization?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id\}/folders/{folder_id\}/folders/{folder_id\}/projects/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The parent service or product from which the resource is provided, for example, GKE or SNS. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * The App Hub Application associated with the finding's resource. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * Resource for selecting resource type. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceSelector { - /** - * The resource types to run the detector on. - */ resourceTypes?: string[] | null; } - /** - * A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceValueConfig { - /** - * Cloud provider this configuration applies to - */ cloudProvider?: string | null; - /** - * Output only. Timestamp this resource value configuration was created. - */ createTime?: string | null; - /** - * Description of the resource value configuration. - */ description?: string | null; - /** - * Name for the resource value configuration - */ name?: string | null; - /** - * List of resource labels to search for, evaluated with `AND`. For example, `"resource_labels_selector": {"key": "value", "env": "prod"\}` will match resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.com/resource-manager/docs/creating-managing-labels - */ resourceLabelsSelector?: {[key: string]: string} | null; - /** - * Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "storage.googleapis.com/Bucket" resources. - */ resourceType?: string | null; - /** - * Required. Resource value level this expression represents - */ resourceValue?: string | null; - /** - * Project or folder to scope this configuration to. For example, "project/456" would apply this configuration only to resources in "project/456" scope will be checked with `AND` of other resources. - */ scope?: string | null; - /** - * A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. "bigquery.googleapis.com/Dataset". - */ sensitiveDataProtectionMapping?: Schema$GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping; - /** - * Required. Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of "tagValues/123". Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing - */ tagValues?: string[] | null; - /** - * Output only. Timestamp this resource value configuration was last updated. - */ updateTime?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * Represents an instance of a Security Health Analytics custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by the child folders and projects. - */ export interface Schema$GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule { - /** - * Output only. If empty, indicates that the custom module was created in the organization, folder, or project in which you are viewing the custom module. Otherwise, `ancestor_module` specifies the organization or folder from which the custom module is inherited. - */ ancestorModule?: string | null; - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * The user specified custom configuration for the module. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * The display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. - */ displayName?: string | null; - /** - * The enablement state of the custom module. - */ enablementState?: string | null; - /** - * Output only. The editor that last updated the custom module. - */ lastEditor?: string | null; - /** - * Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. - */ name?: string | null; - /** - * Output only. The time at which the custom module was last updated. - */ updateTime?: string | null; } - /** - * Resource value mapping for Sensitive Data Protection findings. If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration. - */ export interface Schema$GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping { - /** - * Resource value mapping for high-sensitivity Sensitive Data Protection findings - */ highSensitivityMapping?: string | null; - /** - * Resource value mapping for medium-sensitivity Sensitive Data Protection findings - */ mediumSensitivityMapping?: string | null; } - /** - * Represents an access event. - */ export interface Schema$GoogleCloudSecuritycenterV2Access { - /** - * Caller's IP address, such as "1.1.1.1". - */ callerIp?: string | null; - /** - * The caller IP's geolocation, which identifies where the call came from. - */ callerIpGeo?: Schema$GoogleCloudSecuritycenterV2Geolocation; - /** - * The method that the service account called, e.g. "SetIamPolicy". - */ methodName?: string | null; - /** - * Associated email, such as "foo@google.com". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). - */ principalEmail?: string | null; - /** - * A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name\}/subject/{subject\}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name\}[{subject\}]`. - */ principalSubject?: string | null; - /** - * The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. - */ serviceAccountDelegationInfo?: Schema$GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo[]; - /** - * The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/{PROJECT_ID\}/serviceAccounts/{ACCOUNT\}/keys/{key\}". - */ serviceAccountKeyName?: string | null; - /** - * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" - */ serviceName?: string | null; - /** - * The caller's user agent string associated with the finding. - */ userAgent?: string | null; - /** - * Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application. - */ userAgentFamily?: string | null; - /** - * A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username. - */ userName?: string | null; } - /** - * Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AccessReview { - /** - * The API group of the resource. "*" means all. - */ group?: string | null; - /** - * The name of the resource being requested. Empty means all. - */ name?: string | null; - /** - * Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by "" (empty). - */ ns?: string | null; - /** - * The optional resource type requested. "*" means all. - */ resource?: string | null; - /** - * The optional subresource type. - */ subresource?: string | null; - /** - * A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. "*" means all. - */ verb?: string | null; - /** - * The API version of the resource. "*" means all. - */ version?: string | null; } - /** - * Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection). - */ export interface Schema$GoogleCloudSecuritycenterV2AdaptiveProtection { - /** - * A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation. - */ confidence?: number | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Details about resources affected by this finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AffectedResources { - /** - * The count of resources affected by the finding. - */ count?: string | null; } - /** - * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The agent principal that accessed the data. - */ principalSubject?: string | null; } - /** - * Contains information about the AI model associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AiModel { - /** - * The platform on which the model is deployed. - */ deploymentPlatform?: string | null; - /** - * The user defined display name of model. Ex. baseline-classification-model - */ displayName?: string | null; - /** - * The domain of the model, for example, “image-classification”. - */ domain?: string | null; - /** - * The name of the model library, for example, “transformers”. - */ library?: string | null; - /** - * The region in which the model is used, for example, “us-central1”. - */ location?: string | null; - /** - * The name of the AI model, for example, "gemini:1.0.0". - */ name?: string | null; - /** - * The publisher of the model, for example, “google” or “nvidia”. - */ publisher?: string | null; - /** - * The purpose of the model, for example, "Inteference" or "Training". - */ usageCategory?: string | null; } - /** - * Allowed IP rule. - */ export interface Schema$GoogleCloudSecuritycenterV2Allowed { - /** - * Optional. Optional list of allowed IP rules. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRule[]; } - /** - * Represents an application associated with a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Application { - /** - * The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`. - */ baseUri?: string | null; - /** - * The full URI with payload that could be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`. - */ fullUri?: string | null; } - /** - * Represents the result of evaluating artifact guard policies. - */ export interface Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicies { - /** - * A list of failing policies. - */ failingPolicies?: Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicy[]; - /** - * The ID of the resource that has policies configured for it. - */ resourceId?: string | null; } - /** - * Represents an artifact guard policy. - */ export interface Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicy { - /** - * The reason for the policy failure, for example, "severity=HIGH AND max_vuln_count=2". - */ failureReason?: string | null; - /** - * The ID of the failing policy, for example, "organizations/3392779/locations/global/policies/prod-policy". - */ policyId?: string | null; - /** - * The type of the policy evaluation. - */ type?: string | null; } - /** - * Information about DDoS attack volume and classification. - */ export interface Schema$GoogleCloudSecuritycenterV2Attack { - /** - * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'. - */ classification?: string | null; - /** - * Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead. - */ volumeBps?: number | null; - /** - * Total BPS (bytes per second) volume of attack. - */ volumeBpsLong?: string | null; - /** - * Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead. - */ volumePps?: number | null; - /** - * Total PPS (packets per second) volume of attack. - */ volumePpsLong?: string | null; } - /** - * An attack exposure contains the results of an attack path simulation run. - */ export interface Schema$GoogleCloudSecuritycenterV2AttackExposure { - /** - * The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789` - */ attackExposureResult?: string | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedHighValueResourcesCount?: number | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedLowValueResourcesCount?: number | null; - /** - * The number of medium value resources that are exposed as a result of this finding. - */ exposedMediumValueResourcesCount?: number | null; - /** - * The most recent time the attack exposure was updated on this finding. - */ latestCalculationTime?: string | null; - /** - * A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate. - */ score?: number | null; - /** - * Output only. What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not. - */ state?: string | null; } - /** - * An AWS account that is a member of an organization. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsAccount { - /** - * The unique identifier (ID) of the account, containing exactly 12 digits. - */ id?: string | null; - /** - * The friendly name of this account. - */ name?: string | null; } - /** - * AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsMetadata { - /** - * The AWS account associated with the resource. - */ account?: Schema$GoogleCloudSecuritycenterV2AwsAccount; - /** - * The AWS organization associated with the resource. - */ organization?: Schema$GoogleCloudSecuritycenterV2AwsOrganization; - /** - * A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level. - */ organizationalUnits?: Schema$GoogleCloudSecuritycenterV2AwsOrganizationalUnit[]; } - /** - * An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsOrganization { - /** - * The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires "o-" followed by from 10 to 32 lowercase letters or digits. - */ id?: string | null; } - /** - * An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsOrganizationalUnit { - /** - * The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits. For example, "ou-ab12-cd34ef56". - */ id?: string | null; - /** - * The friendly name of the OU. - */ name?: string | null; } - /** - * Represents an Azure management group. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureManagementGroup { - /** - * The display name of the Azure management group. - */ displayName?: string | null; - /** - * The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`. - */ id?: string | null; } - /** - * Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureMetadata { - /** - * A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level. - */ managementGroups?: Schema$GoogleCloudSecuritycenterV2AzureManagementGroup[]; - /** - * The Azure resource group associated with the resource. - */ resourceGroup?: Schema$GoogleCloudSecuritycenterV2AzureResourceGroup; - /** - * The Azure subscription associated with the resource. - */ subscription?: Schema$GoogleCloudSecuritycenterV2AzureSubscription; - /** - * The Azure Entra tenant associated with the resource. - */ tenant?: Schema$GoogleCloudSecuritycenterV2AzureTenant; } - /** - * Represents an Azure resource group. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureResourceGroup { - /** - * The ID of the Azure resource group. - */ id?: string | null; - /** - * The name of the Azure resource group. This is not a UUID. - */ name?: string | null; } - /** - * Represents an Azure subscription. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureSubscription { - /** - * The display name of the Azure subscription. - */ displayName?: string | null; - /** - * The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`. - */ id?: string | null; } - /** - * Represents a Microsoft Entra tenant. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureTenant { - /** - * The display name of the Azure tenant. - */ displayName?: string | null; - /** - * The ID of the Microsoft Entra tenant, for example, "a11aaa11-aa11-1aa1-11aa-1aaa11a". - */ id?: string | null; } - /** - * Information related to Google Cloud Backup and DR Service findings. - */ export interface Schema$GoogleCloudSecuritycenterV2BackupDisasterRecovery { - /** - * The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`. - */ appliance?: string | null; - /** - * The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`. - */ applications?: string[] | null; - /** - * The timestamp at which the Backup and DR backup was created. - */ backupCreateTime?: string | null; - /** - * The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`. - */ backupTemplate?: string | null; - /** - * The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`. - */ backupType?: string | null; - /** - * The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`. - */ host?: string | null; - /** - * The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`. - */ policies?: string[] | null; - /** - * The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`. - */ policyOptions?: string[] | null; - /** - * The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`. - */ profile?: string | null; - /** - * The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`. - */ storagePool?: string | null; } - /** - * Configures how to deliver Findings to BigQuery Instance. - */ export interface Schema$GoogleCloudSecuritycenterV2BigQueryExport { - /** - * Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation. - */ createTime?: string | null; - /** - * Output only. The resource name of the Cloud KMS `CryptoKey` used to protect this configuration's data, if configured during Security Command Center activation. - */ cryptoKeyName?: string | null; - /** - * The dataset to write findings' updates to. Its format is "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). - */ dataset?: string | null; - /** - * The description of the export (max of 1024 characters). - */ description?: string | null; - /** - * Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update. - */ mostRecentEditor?: string | null; - /** - * Identifier. The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. The following list shows some examples: + `organizations/{organization_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` + `folders/{folder_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` + `projects/{project_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` This field is provided in responses, and is ignored when provided in create requests. - */ name?: string | null; - /** - * Output only. The service account that needs permission to create table and upload data to the BigQuery dataset. - */ principal?: string | null; - /** - * Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update. - */ updateTime?: string | null; } - /** - * Represents a Kubernetes RoleBinding or ClusterRoleBinding. - */ export interface Schema$GoogleCloudSecuritycenterV2Binding { - /** - * Name for the binding. - */ name?: string | null; - /** - * Namespace for the binding. - */ ns?: string | null; - /** - * The Role or ClusterRole referenced by the binding. - */ role?: Schema$GoogleCloudSecuritycenterV2Role; - /** - * Represents one or more subjects that are bound to the role. Not always available for PATCH requests. - */ subjects?: Schema$GoogleCloudSecuritycenterV2Subject[]; } - /** - * The response to a BulkMute request. Contains the LRO information. - */ export interface Schema$GoogleCloudSecuritycenterV2BulkMuteFindingsResponse {} - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). - */ export interface Schema$GoogleCloudSecuritycenterV2Chokepoint { - /** - * List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings. - */ relatedFindings?: string[] | null; } - /** - * Fields related to Google Cloud Armor findings. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudArmor { - /** - * Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview). - */ adaptiveProtection?: Schema$GoogleCloudSecuritycenterV2AdaptiveProtection; - /** - * Information about DDoS attack volume and classification. - */ attack?: Schema$GoogleCloudSecuritycenterV2Attack; - /** - * Duration of attack from the start until the current moment (updated every 5 minutes). - */ duration?: string | null; - /** - * Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview). - */ requests?: Schema$GoogleCloudSecuritycenterV2Requests; - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ securityPolicy?: Schema$GoogleCloudSecuritycenterV2SecurityPolicy; - /** - * Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS attacks, or "L_7" for Layer 7 DDoS attacks. - */ threatVector?: string | null; } - /** - * CloudControl associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudControl { - /** - * Name of the CloudControl associated with the finding. - */ cloudControlName?: string | null; - /** - * Policy type of the CloudControl - */ policyType?: string | null; - /** - * Type of cloud control. - */ type?: string | null; - /** - * Version of the Cloud Control - */ version?: number | null; } - /** - * The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudDlpDataProfile { - /** - * Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`. - */ dataProfile?: string | null; - /** - * Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type. - */ infoTypes?: Schema$GoogleCloudSecuritycenterV2InfoType[]; - /** - * The resource hierarchy level at which the data profile was generated. - */ parentType?: string | null; } - /** - * Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudDlpInspection { - /** - * Whether Cloud DLP scanned the complete resource or a sampled subset. - */ fullScan?: boolean | null; - /** - * The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`. - */ infoType?: string | null; - /** - * The number of times Cloud DLP found this infoType within this job and resource. - */ infoTypeCount?: string | null; - /** - * Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`. - */ inspectJob?: string | null; } - /** - * Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) - */ export interface Schema$GoogleCloudSecuritycenterV2CloudLoggingEntry { - /** - * A unique identifier for the log entry. - */ insertId?: string | null; - /** - * The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity` Note that this field is not URL-encoded, unlike in `LogEntry`. - */ logId?: string | null; - /** - * The organization, folder, or project of the monitored resource that produced this log entry. - */ resourceContainer?: string | null; - /** - * The time the event described by the log entry occurred. - */ timestamp?: string | null; } - /** - * Contains compliance information about a security standard indicating unmet recommendations. - */ export interface Schema$GoogleCloudSecuritycenterV2Compliance { - /** - * Policies within the standard or benchmark, for example, A.12.4.1 - */ ids?: string[] | null; - /** - * Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP. - */ standard?: string | null; - /** - * Version of the standard or benchmark, for example, 1.1 - */ version?: string | null; } - /** - * Compliance Details associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2ComplianceDetails { - /** - * CloudControl associated with the finding - */ cloudControl?: Schema$GoogleCloudSecuritycenterV2CloudControl; - /** - * Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier - */ cloudControlDeploymentNames?: string[] | null; - /** - * Details of Frameworks associated with the finding - */ frameworks?: Schema$GoogleCloudSecuritycenterV2Framework[]; } - /** - * Contains information about the IP connection associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Connection { - /** - * Destination IP address. Not present for sockets that are listening and not connected. - */ destinationIp?: string | null; - /** - * Destination port. Not present for sockets that are listening and not connected. - */ destinationPort?: number | null; - /** - * IANA Internet Protocol Number such as TCP(6) and UDP(17). - */ protocol?: string | null; - /** - * Source IP address. - */ sourceIp?: string | null; - /** - * Source port. - */ sourcePort?: number | null; - } - /** - * The email address of a contact. - */ + } export interface Schema$GoogleCloudSecuritycenterV2Contact { - /** - * An email address. For example, "`person123@company.com`". - */ email?: string | null; } - /** - * Details about specific contacts - */ export interface Schema$GoogleCloudSecuritycenterV2ContactDetails { - /** - * A list of contacts - */ contacts?: Schema$GoogleCloudSecuritycenterV2Contact[]; } - /** - * Container associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Container { - /** - * The time that the container was created. - */ createTime?: string | null; - /** - * Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest. - */ imageId?: string | null; - /** - * Container labels, as provided by the container runtime. - */ labels?: Schema$GoogleCloudSecuritycenterV2Label[]; - /** - * Name of the container. - */ name?: string | null; - /** - * Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags. - */ uri?: string | null; } - /** - * Compliance control associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Control { - /** - * Name of the Control - */ controlName?: string | null; - /** - * Display name of the control. For example, AU-02. - */ displayName?: string | null; } - /** - * CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability. - */ export interface Schema$GoogleCloudSecuritycenterV2Cve { - /** - * Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document - */ cvssv3?: Schema$GoogleCloudSecuritycenterV2Cvssv3; - /** - * The exploitation activity of the vulnerability in the wild. - */ exploitationActivity?: string | null; - /** - * Date the first publicly available exploit or PoC was released. - */ exploitReleaseDate?: string | null; - /** - * Date of the earliest known exploitation. - */ firstExploitationDate?: string | null; - /** - * The unique identifier for the vulnerability. e.g. CVE-2021-34527 - */ id?: string | null; - /** - * The potential impact of the vulnerability if it was to be exploited. - */ impact?: string | null; - /** - * Whether or not the vulnerability has been observed in the wild. - */ observedInTheWild?: boolean | null; - /** - * Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527 - */ references?: Schema$GoogleCloudSecuritycenterV2Reference[]; - /** - * Whether upstream fix is available for the CVE. - */ upstreamFixAvailable?: boolean | null; - /** - * Whether or not the vulnerability was zero day when the finding was published. - */ zeroDay?: boolean | null; } - /** - * Common Vulnerability Scoring System version 3. - */ export interface Schema$GoogleCloudSecuritycenterV2Cvssv3 { - /** - * This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. - */ attackComplexity?: string | null; - /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. - */ attackVector?: string | null; - /** - * This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. - */ availabilityImpact?: string | null; - /** - * The base score is a function of the base metric scores. - */ baseScore?: number | null; - /** - * This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. - */ confidentialityImpact?: string | null; - /** - * This metric measures the impact to integrity of a successfully exploited vulnerability. - */ integrityImpact?: string | null; - /** - * This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. - */ privilegesRequired?: string | null; - /** - * The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. - */ scope?: string | null; - /** - * This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. - */ userInteraction?: string | null; } - /** - * CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/). - */ export interface Schema$GoogleCloudSecuritycenterV2Cwe { - /** - * The CWE identifier, e.g. CWE-94 - */ id?: string | null; - /** - * Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html - */ references?: Schema$GoogleCloudSecuritycenterV2Reference[]; } - /** - * Details about a data access attempt made by a principal not authorized under applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2DataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; } - /** - * Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided. - */ export interface Schema$GoogleCloudSecuritycenterV2Database { - /** - * The human-readable name of the database that the user connected to. - */ displayName?: string | null; - /** - * The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change. - */ grantees?: string[] | null; - /** - * Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory. - */ name?: string | null; - /** - * The SQL statement that is associated with the database access. - */ query?: string | null; - /** - * The username used to connect to the database. The username might not be an IAM principal and does not have a set format. - */ userName?: string | null; - /** - * The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion). - */ version?: string | null; } - /** - * Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2DataFlowEvent { - /** - * Unique identifier for data flow event. - */ eventId?: string | null; - /** - * Timestamp of data flow event. - */ eventTime?: string | null; - /** - * The operation performed by the principal for the data flow event. - */ operation?: string | null; - /** - * The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; - /** - * Non-compliant location of the principal or the data destination. - */ violatedLocation?: string | null; } - /** - * Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments. - */ export interface Schema$GoogleCloudSecuritycenterV2DataRetentionDeletionEvent { - /** - * Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000. - */ dataObjectCount?: string | null; - /** - * Timestamp indicating when the event was detected. - */ eventDetectionTime?: string | null; - /** - * Type of the DRD event. - */ eventType?: string | null; - /** - * Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days. - */ maxRetentionAllowed?: string | null; - /** - * Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION. - */ minRetentionAllowed?: string | null; } - /** - * Vertex AI dataset associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Dataset { - /** - * The user defined display name of dataset, e.g. plants-dataset - */ displayName?: string | null; - /** - * Resource name of the dataset, e.g. projects/{project\}/locations/{location\}/datasets/2094040236064505856 - */ name?: string | null; - /** - * Data source, such as a BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod - */ source?: string | null; } - /** - * Denied IP rule. - */ export interface Schema$GoogleCloudSecuritycenterV2Denied { - /** - * Optional. Optional list of denied IP rules. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRule[]; } - /** - * Memory hash detection contributing to the binary family match. - */ export interface Schema$GoogleCloudSecuritycenterV2Detection { - /** - * The name of the binary associated with the memory hash signature detection. - */ binary?: string | null; - /** - * The percentage of memory page hashes in the signature that were matched. - */ percentPagesMatched?: number | null; } - /** - * Represents discovered, customer managed workload that is not registered with the respective GCP service. - */ export interface Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload { - /** - * The confidence in detection of this workload. - */ confidence?: string | null; - /** - * A boolean flag set to true if associated hardware strongly predicts the workload type. - */ detectedRelevantHardware?: boolean | null; - /** - * A boolean flag set to true if associated keywords strongly predict the workload type. - */ detectedRelevantKeywords?: boolean | null; - /** - * A boolean flag set to true if installed packages strongly predict the workload type. - */ detectedRelevantPackages?: boolean | null; - /** - * The type of workload. - */ workloadType?: string | null; } - /** - * Contains information about the disk associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Disk { - /** - * The name of the disk, for example, "https://www.googleapis.com/compute/v1/projects/{project-id\}/zones/{zone-id\}/disks/{disk-id\}". - */ name?: string | null; } - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ export interface Schema$GoogleCloudSecuritycenterV2DiskPath { - /** - * UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid) - */ partitionUuid?: string | null; - /** - * Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh - */ relativePath?: string | null; } - /** - * The record of a dynamic mute rule that matches the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2DynamicMuteRecord { - /** - * When the dynamic mute rule first matched the finding. - */ matchTime?: string | null; - /** - * The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`. - */ muteConfig?: string | null; } - /** - * A name-value pair representing an environment variable used in an operating system process. - */ export interface Schema$GoogleCloudSecuritycenterV2EnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. - */ name?: string | null; - /** - * Environment variable value as a JSON encoded string. - */ val?: string | null; } - /** - * Resource where data was exfiltrated from or exfiltrated to. - */ export interface Schema$GoogleCloudSecuritycenterV2ExfilResource { - /** - * Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket. - */ components?: string[] | null; - /** - * The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name). - */ name?: string | null; } - /** - * Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to. - */ export interface Schema$GoogleCloudSecuritycenterV2Exfiltration { - /** - * If there are multiple sources, then the data is considered "joined" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source. - */ sources?: Schema$GoogleCloudSecuritycenterV2ExfilResource[]; - /** - * If there are multiple targets, each target would get a complete copy of the "joined" source data. - */ targets?: Schema$GoogleCloudSecuritycenterV2ExfilResource[]; - /** - * Total exfiltrated bytes processed for the entire job. - */ totalExfiltratedBytes?: string | null; } - /** - * Details about the externally exposed resource associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2ExternalExposure { - /** - * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" - */ backendBucket?: string | null; - /** - * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ backendService?: string | null; - /** - * The name and version of the exposed web application, for example, "Jenkins 2.184". - */ exposedApplication?: string | null; - /** - * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” - */ exposedEndpoint?: string | null; - /** - * The name and version of the service, for example, "Jupyter Notebook 6.14.0". - */ exposedService?: string | null; - /** - * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". - */ forwardingRule?: string | null; - /** - * Hostname of the exposed application, for example, "https://test-app.a.run.app/" - */ hostnameUri?: string | null; - /** - * The http response returned by the web application. - */ httpResponse?: Schema$GoogleCloudSecuritycenterV2HttpResponse[]; - /** - * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". - */ instanceGroup?: string | null; - /** - * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ internalBackendService?: string | null; - /** - * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ loadBalancerFirewallPolicy?: string | null; - /** - * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". - */ networkEndpointGroup?: string | null; - /** - * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". - */ networkIngressFirewallPolicy?: string | null; - /** - * Private IP address of the exposed endpoint. - */ privateIpAddress?: string | null; - /** - * Port number associated with private IP address. - */ privatePort?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" - */ pscNetworkAttachment?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" - */ pscServiceAttachment?: string | null; - /** - * Public IP address of the exposed endpoint. - */ publicIpAddress?: string | null; - /** - * Public port number of the exposed endpoint. - */ publicPort?: string | null; - /** - * The full resource name of the firewall policy of the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ serviceFirewallPolicy?: string | null; } - /** - * Representation of third party SIEM/SOAR fields within SCC. - */ export interface Schema$GoogleCloudSecuritycenterV2ExternalSystem { - /** - * References primary/secondary etc assignees in the external system. - */ assignees?: string[] | null; - /** - * The time when the case was closed, as reported by the external system. - */ caseCloseTime?: string | null; - /** - * The time when the case was created, as reported by the external system. - */ caseCreateTime?: string | null; - /** - * The priority of the finding's corresponding case in the external system. - */ casePriority?: string | null; - /** - * The SLA of the finding's corresponding case in the external system. - */ caseSla?: string | null; - /** - * The link to the finding's corresponding case in the external system. - */ caseUri?: string | null; - /** - * The time when the case was last updated, as reported by the external system. - */ externalSystemUpdateTime?: string | null; - /** - * The identifier that's used to track the finding's corresponding case in the external system. - */ externalUid?: string | null; - /** - * Full resource name of the external system. The following list shows some examples: + `organizations/1234/sources/5678/findings/123456/externalSystems/jira` + `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` - */ name?: string | null; - /** - * The most recent status of the finding's corresponding case, as reported by the external system. - */ status?: string | null; - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ ticketInfo?: Schema$GoogleCloudSecuritycenterV2TicketInfo; } - /** - * File information about the related binary/library used by an executable, or the script used by a script interpreter - */ export interface Schema$GoogleCloudSecuritycenterV2File { - /** - * Prefix of the file contents as a JSON-encoded string. - */ contents?: string | null; - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ diskPath?: Schema$GoogleCloudSecuritycenterV2DiskPath; - /** - * The load state of the file. - */ fileLoadState?: string | null; - /** - * The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file. - */ hashedSize?: string | null; - /** - * Operation(s) performed on a file. - */ operations?: Schema$GoogleCloudSecuritycenterV2FileOperation[]; - /** - * True when the hash covers only a prefix of the file. - */ partiallyHashed?: boolean | null; - /** - * Absolute path of the file as a JSON encoded string. - */ path?: string | null; - /** - * SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file. - */ sha256?: string | null; - /** - * Size of the file in bytes. - */ size?: string | null; } - /** - * Operation(s) performed on a file. - */ export interface Schema$GoogleCloudSecuritycenterV2FileOperation { - /** - * The type of the operation - */ type?: string | null; } - /** - * Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Finding { - /** - * Access details associated with the finding, such as more information on the caller, which method was accessed, and from where. - */ access?: Schema$GoogleCloudSecuritycenterV2Access; - /** - * AffectedResources associated with the finding. - */ affectedResources?: Schema$GoogleCloudSecuritycenterV2AffectedResources; - /** - * Agent data access events associated with the finding. - */ agentDataAccessEvents?: Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent[]; - /** - * The AI model associated with the finding. - */ aiModel?: Schema$GoogleCloudSecuritycenterV2AiModel; - /** - * Represents an application associated with the finding. - */ application?: Schema$GoogleCloudSecuritycenterV2Application; - /** - * ArtifactGuardPolicies associated with the finding. - */ artifactGuardPolicies?: Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicies; - /** - * The results of an attack path simulation relevant to this finding. - */ attackExposure?: Schema$GoogleCloudSecuritycenterV2AttackExposure; - /** - * Fields related to Backup and DR findings. - */ backupDisasterRecovery?: Schema$GoogleCloudSecuritycenterV2BackupDisasterRecovery; - /** - * Output only. The canonical name of the finding. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` The prefix is the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * Immutable. The additional taxonomy group within findings from a given source. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests. - */ chokepoint?: Schema$GoogleCloudSecuritycenterV2Chokepoint; - /** - * Fields related to Cloud Armor findings. - */ cloudArmor?: Schema$GoogleCloudSecuritycenterV2CloudArmor; - /** - * Cloud DLP data profile that is associated with the finding. - */ cloudDlpDataProfile?: Schema$GoogleCloudSecuritycenterV2CloudDlpDataProfile; - /** - * Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding. - */ cloudDlpInspection?: Schema$GoogleCloudSecuritycenterV2CloudDlpInspection; - /** - * Details about the compliance implications of the finding. - */ complianceDetails?: Schema$GoogleCloudSecuritycenterV2ComplianceDetails; - /** - * Contains compliance information for security standards associated to the finding. - */ compliances?: Schema$GoogleCloudSecuritycenterV2Compliance[]; - /** - * Contains information about the IP connection associated with the finding. - */ connections?: Schema$GoogleCloudSecuritycenterV2Connection[]; - /** - * Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { "security": { "contacts": [ { "email": "person1@company.com" \}, { "email": "person2@company.com" \} ] \} \} - */ contacts?: { [key: string]: Schema$GoogleCloudSecuritycenterV2ContactDetails; } | null; - /** - * Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Output only. The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * Output only. The name of the Cloud KMS key used to encrypt this finding, if any. - */ cryptoKeyName?: string | null; - /** - * Data access events associated with the finding. - */ dataAccessEvents?: Schema$GoogleCloudSecuritycenterV2DataAccessEvent[]; - /** - * Database associated with the finding. - */ database?: Schema$GoogleCloudSecuritycenterV2Database; - /** - * Data flow events associated with the finding. - */ dataFlowEvents?: Schema$GoogleCloudSecuritycenterV2DataFlowEvent[]; - /** - * Data retention deletion events associated with the finding. - */ dataRetentionDeletionEvents?: Schema$GoogleCloudSecuritycenterV2DataRetentionDeletionEvent[]; - /** - * Contains more details about the finding. - */ description?: string | null; - /** - * DiscoveredWorkload associated with the finding. - */ discoveredWorkload?: Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload; - /** - * Disk associated with the finding. - */ disk?: Schema$GoogleCloudSecuritycenterV2Disk; - /** - * The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * Represents exfiltrations associated with the finding. - */ exfiltration?: Schema$GoogleCloudSecuritycenterV2Exfiltration; - /** - * External exposure associated with the finding. - */ externalExposure?: Schema$GoogleCloudSecuritycenterV2ExternalExposure; - /** - * Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields. - */ externalSystems?: { [key: string]: Schema$GoogleCloudSecuritycenterV2ExternalSystem; } | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * File associated with the finding. - */ files?: Schema$GoogleCloudSecuritycenterV2File[]; - /** - * The class of the finding. - */ findingClass?: string | null; - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests. - */ groupMemberships?: Schema$GoogleCloudSecuritycenterV2GroupMembership[]; - /** - * Represents IAM bindings associated with the finding. - */ iamBindings?: Schema$GoogleCloudSecuritycenterV2IamBinding[]; - /** - * Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ indicator?: Schema$GoogleCloudSecuritycenterV2Indicator; - /** - * IP rules associated with the finding. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRules; - /** - * Job associated with the finding. - */ job?: Schema$GoogleCloudSecuritycenterV2Job; - /** - * Signature of the kernel rootkit. - */ kernelRootkit?: Schema$GoogleCloudSecuritycenterV2KernelRootkit; - /** - * Kubernetes resources associated with the finding. - */ kubernetes?: Schema$GoogleCloudSecuritycenterV2Kubernetes; - /** - * The load balancers associated with the finding. - */ loadBalancers?: Schema$GoogleCloudSecuritycenterV2LoadBalancer[]; - /** - * Log entries that are relevant to the finding. - */ logEntries?: Schema$GoogleCloudSecuritycenterV2LogEntry[]; - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ mitreAttack?: Schema$GoogleCloudSecuritycenterV2MitreAttack; - /** - * Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885 - */ moduleName?: string | null; - /** - * Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute. - */ mute?: string | null; - /** - * Output only. The mute information regarding this finding. - */ muteInfo?: Schema$GoogleCloudSecuritycenterV2MuteInfo; - /** - * Records additional information about the mute operation, for example, the [mute configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding. - */ muteInitiator?: string | null; - /** - * Output only. The most recent time this finding was muted or unmuted. - */ muteUpdateTime?: string | null; - /** - * Identifier. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` - */ name?: string | null; - /** - * Represents the VPC networks that the resource is attached to. - */ networks?: Schema$GoogleCloudSecuritycenterV2Network[]; - /** - * Steps to address the finding. - */ nextSteps?: string | null; - /** - * Notebook associated with the finding. - */ notebook?: Schema$GoogleCloudSecuritycenterV2Notebook; - /** - * Contains information about the org policies associated with the finding. - */ orgPolicies?: Schema$GoogleCloudSecuritycenterV2OrgPolicy[]; - /** - * The relative resource name of the source and location the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}` + `folders/{folders_id\}/sources/{source_id\}` + `projects/{projects_id\}/sources/{source_id\}` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}` + `folders/{folders_id\}/sources/{source_id\}/locations/{location_id\}` + `projects/{projects_id\}/sources/{source_id\}/locations/{location_id\}` - */ parent?: string | null; - /** - * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". - */ parentDisplayName?: string | null; - /** - * PolicyViolationSummary associated with the finding. - */ policyViolationSummary?: Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary; - /** - * Represents operating system processes associated with the Finding. - */ processes?: Schema$GoogleCloudSecuritycenterV2Process[]; - /** - * Immutable. For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. - */ resourceName?: string | null; - /** - * Secret associated with the finding. - */ secret?: Schema$GoogleCloudSecuritycenterV2Secret; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV2SecurityMarks; - /** - * The security posture associated with the finding. - */ securityPosture?: Schema$GoogleCloudSecuritycenterV2SecurityPosture; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * Output only. The state of the finding. - */ state?: string | null; - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests. - */ toxicCombination?: Schema$GoogleCloudSecuritycenterV2ToxicCombination; - /** - * VertexAi associated with the finding. - */ vertexAi?: Schema$GoogleCloudSecuritycenterV2VertexAi; - /** - * Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ vulnerability?: Schema$GoogleCloudSecuritycenterV2Vulnerability; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$GoogleCloudSecuritycenterV2Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Compliance framework associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Framework { - /** - * Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads - */ category?: string[] | null; - /** - * The controls associated with the framework. - */ controls?: Schema$GoogleCloudSecuritycenterV2Control[]; - /** - * Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework - */ displayName?: string | null; - /** - * Name of the framework associated with the finding - */ name?: string | null; - /** - * Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture) - */ type?: string | null; } - /** - * Represents a geographical location for a given access. - */ export interface Schema$GoogleCloudSecuritycenterV2Geolocation { - /** - * A CLDR. - */ regionCode?: string | null; } - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. - */ export interface Schema$GoogleCloudSecuritycenterV2GroupMembership { - /** - * ID of the group. - */ groupId?: string | null; - /** - * Type of group. - */ groupType?: string | null; } - /** - * The http response returned by the web application. - */ export interface Schema$GoogleCloudSecuritycenterV2HttpResponse { - /** - * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". - */ path?: string | null; - /** - * The http response code returned by the web application, for example, 200. - */ statusCode?: string | null; } - /** - * Represents a particular IAM binding, which captures a member's role addition, removal, or state. - */ export interface Schema$GoogleCloudSecuritycenterV2IamBinding { - /** - * The action that was performed on a Binding. - */ action?: string | null; - /** - * A single identity requesting access for a Cloud Platform resource, for example, "foo@google.com". - */ member?: string | null; - /** - * Role that is assigned to "members". For example, "roles/viewer", "roles/editor", or "roles/owner". - */ role?: string | null; } - /** - * Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ export interface Schema$GoogleCloudSecuritycenterV2Indicator { - /** - * List of domains associated to the Finding. - */ domains?: string[] | null; - /** - * The list of IP addresses that are associated with the finding. - */ ipAddresses?: string[] | null; - /** - * The list of matched signatures indicating that the given process is present in the environment. - */ signatures?: Schema$GoogleCloudSecuritycenterV2ProcessSignature[]; - /** - * The list of URIs associated to the Findings. - */ uris?: string[] | null; } - /** - * Type of information detected by the API. - */ export interface Schema$GoogleCloudSecuritycenterV2InfoType { - /** - * Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64\}`. - */ name?: string | null; - /** - * Optional custom sensitivity for this InfoType. This only applies to data profiling. - */ sensitivityScore?: Schema$GoogleCloudSecuritycenterV2SensitivityScore; - /** - * Optional version name for this InfoType. - */ version?: string | null; } - /** - * IP rule information. - */ export interface Schema$GoogleCloudSecuritycenterV2IpRule { - /** - * Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number. - */ portRanges?: Schema$GoogleCloudSecuritycenterV2PortRange[]; - /** - * The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value. - */ protocol?: string | null; } - /** - * IP rules associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IpRules { - /** - * Tuple with allowed rules. - */ allowed?: Schema$GoogleCloudSecuritycenterV2Allowed; - /** - * Tuple with denied rules. - */ denied?: Schema$GoogleCloudSecuritycenterV2Denied; - /** - * If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ destinationIpRanges?: string[] | null; - /** - * The direction that the rule is applicable to, one of ingress or egress. - */ direction?: string | null; - /** - * Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml. - */ exposedServices?: string[] | null; - /** - * If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ sourceIpRanges?: string[] | null; } - /** - * Security Command Center Issue. - */ export interface Schema$GoogleCloudSecuritycenterV2Issue { - /** - * Output only. The time the issue was created. - */ createTime?: string | null; - /** - * The description of the issue in Markdown format. - */ description?: string | null; - /** - * The finding category or rule name that generated the issue. - */ detection?: string | null; - /** - * The domains of the issue. - */ domains?: Schema$GoogleCloudSecuritycenterV2IssueDomain[]; - /** - * The exposure score of the issue. - */ - exposureScore?: number | null; - /** - * The type of the issue. - */ + exposureScore?: number | null; issueType?: string | null; - /** - * The time the issue was last observed. - */ lastObservationTime?: string | null; - /** - * The mute information of the issue. - */ mute?: Schema$GoogleCloudSecuritycenterV2IssueMute; - /** - * Identifier. The name of the issue. Format: organizations/{organization\}/locations/{location\}/issues/{issue\} - */ name?: string | null; - /** - * The primary resource associated with the issue. - */ primaryResource?: Schema$GoogleCloudSecuritycenterV2IssueResource; - /** - * The findings related to the issue. - */ relatedFindings?: Schema$GoogleCloudSecuritycenterV2IssueFinding[]; - /** - * Approaches to remediate the issue in Markdown format. - */ remediations?: string[] | null; - /** - * Additional resources associated with the issue. - */ secondaryResources?: Schema$GoogleCloudSecuritycenterV2IssueResource[]; - /** - * The security context of the issue. - */ securityContexts?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContext[]; - /** - * The severity of the issue. - */ severity?: string | null; - /** - * Output only. The state of the issue. - */ state?: string | null; - /** - * Output only. The time the issue was last updated. - */ updateTime?: string | null; } - /** - * The domains of an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueDomain { - /** - * The domain category of the issue. - */ domainCategory?: string | null; } - /** - * Finding related to an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFinding { - /** - * The CVE of the finding. - */ cve?: Schema$GoogleCloudSecuritycenterV2IssueFindingCve; - /** - * The name of the finding. - */ name?: string | null; - /** - * The security bulletin of the finding. - */ securityBulletin?: Schema$GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin; } - /** - * The CVE of the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFindingCve { - /** - * The CVE name. - */ name?: string | null; } - /** - * The security bulletin of the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin { - /** - * The security bulletin name. - */ name?: string | null; } - /** - * The mute information of the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueMute { - /** - * The email address of the user who last changed the mute state of the issue. - */ muteInitiator?: string | null; - /** - * The user-provided reason for muting the issue. - */ muteReason?: string | null; - /** - * Output only. The mute state of the issue. - */ muteState?: string | null; - /** - * The time the issue was muted. - */ muteUpdateTime?: string | null; } - /** - * A resource associated with the an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision; - /** - * The AppHub application associated with the resource, if any. Only populated for the primary resource. - */ application?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplication; - /** - * The AWS metadata of the resource associated with the issue. Only populated for AWS resources. - */ awsMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadata; - /** - * The Azure metadata of the resource associated with the issue. Only populated for Azure resources. - */ azureMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadata; - /** - * The cloud provider of the resource associated with the issue. - */ cloudProvider?: string | null; - /** - * The resource-type specific display name of the resource associated with the issue. - */ displayName?: string | null; - /** - * The Google Cloud metadata of the resource associated with the issue. Only populated for Google Cloud resources. - */ googleCloudMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata; - /** - * The full resource name of the resource associated with the issue. - */ name?: string | null; - /** - * The type of the resource associated with the issue. - */ type?: string | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * The AppHub application associated with the resource, if any. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * The AWS metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadata { - /** - * The AWS account of the resource associated with the issue. - */ account?: Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount; } - /** - * The AWS account of the resource associated with the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount { - /** - * The AWS account ID of the resource associated with the issue. - */ id?: string | null; - /** - * The AWS account name of the resource associated with the issue. - */ name?: string | null; } - /** - * The Azure metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadata { - /** - * The Azure subscription of the resource associated with the issue. - */ subscription?: Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription; } - /** - * The Azure subscription of the resource associated with the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription { - /** - * The Azure subscription display name of the resource associated with the issue. - */ displayName?: string | null; - /** - * The Azure subscription ID of the resource associated with the issue. - */ id?: string | null; } - /** - * Google Cloud metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata { - /** - * The project ID that the resource associated with the issue belongs to. - */ projectId?: string | null; } - /** - * Security context associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContext { - /** - * The aggregated count of the security context. - */ aggregatedCount?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount; - /** - * The context of the security context. - */ context?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContextContext; } - /** - * Aggregated count of a security context. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount { - /** - * Aggregation key. - */ key?: string | null; - /** - * Aggregation value. - */ value?: number | null; } - /** - * Context of a security context. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContextContext { - /** - * Context type. - */ type?: string | null; - /** - * Context values. - */ values?: string[] | null; } - /** - * Describes a job - */ export interface Schema$GoogleCloudSecuritycenterV2Job { - /** - * Optional. If the job did not complete successfully, this field describes why. - */ errorCode?: number | null; - /** - * Optional. Gives the location where the job ran, such as `US` or `europe-west1` - */ location?: string | null; - /** - * The fully-qualified name for a job. e.g. `projects//jobs/` - */ name?: string | null; - /** - * Output only. State of the job, such as `RUNNING` or `PENDING`. - */ state?: string | null; } - /** - * Kernel mode rootkit signatures. - */ export interface Schema$GoogleCloudSecuritycenterV2KernelRootkit { - /** - * Rootkit name, when available. - */ name?: string | null; - /** - * True if unexpected modifications of kernel code memory are present. - */ unexpectedCodeModification?: boolean | null; - /** - * True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedFtraceHandler?: boolean | null; - /** - * True if interrupt handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedInterruptHandler?: boolean | null; - /** - * True if kernel code pages that are not in the expected kernel or module code regions are present. - */ unexpectedKernelCodePages?: boolean | null; - /** - * True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedKprobeHandler?: boolean | null; - /** - * True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list. - */ unexpectedProcessesInRunqueue?: boolean | null; - /** - * True if unexpected modifications of kernel read-only data memory are present. - */ unexpectedReadOnlyDataModification?: boolean | null; - /** - * True if system call handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedSystemCallHandler?: boolean | null; } - /** - * Kubernetes-related attributes. - */ export interface Schema$GoogleCloudSecuritycenterV2Kubernetes { - /** - * Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding. - */ accessReviews?: Schema$GoogleCloudSecuritycenterV2AccessReview[]; - /** - * Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ bindings?: Schema$GoogleCloudSecuritycenterV2Binding[]; - /** - * GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available. - */ nodePools?: Schema$GoogleCloudSecuritycenterV2NodePool[]; - /** - * Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information. - */ nodes?: Schema$GoogleCloudSecuritycenterV2Node[]; - /** - * Kubernetes objects related to the finding. - */ objects?: Schema$GoogleCloudSecuritycenterV2Object[]; - /** - * Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod. - */ pods?: Schema$GoogleCloudSecuritycenterV2Pod[]; - /** - * Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ roles?: Schema$GoogleCloudSecuritycenterV2Role[]; } - /** - * Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering). - */ export interface Schema$GoogleCloudSecuritycenterV2Label { - /** - * Name of the label. - */ name?: string | null; - /** - * Value that corresponds to the label's name. - */ value?: string | null; } - /** - * Contains information related to the load balancer associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2LoadBalancer { - /** - * The name of the load balancer associated with the finding. - */ name?: string | null; } - /** - * An individual entry in a log. - */ export interface Schema$GoogleCloudSecuritycenterV2LogEntry { - /** - * An individual entry in a log stored in Cloud Logging. - */ cloudLoggingEntry?: Schema$GoogleCloudSecuritycenterV2CloudLoggingEntry; } - /** - * A signature corresponding to memory page hashes. - */ export interface Schema$GoogleCloudSecuritycenterV2MemoryHashSignature { - /** - * The binary family. - */ binaryFamily?: string | null; - /** - * The list of memory hash detections contributing to the binary family match. - */ detections?: Schema$GoogleCloudSecuritycenterV2Detection[]; } - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ export interface Schema$GoogleCloudSecuritycenterV2MitreAttack { - /** - * Additional MITRE ATT&CK tactics related to this finding, if any. - */ additionalTactics?: string[] | null; - /** - * Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques. - */ additionalTechniques?: string[] | null; - /** - * The MITRE ATT&CK tactic most closely represented by this finding, if any. - */ primaryTactic?: string | null; - /** - * The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`). - */ primaryTechniques?: string[] | null; - /** - * The MITRE ATT&CK version referenced by the above fields. E.g. "8". - */ version?: string | null; } - /** - * A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings. - */ export interface Schema$GoogleCloudSecuritycenterV2MuteConfig { - /** - * Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation. - */ createTime?: string | null; - /** - * Output only. The resource name of the Cloud KMS `CryptoKey` used to encrypt this configuration data, if CMEK was enabled during Security Command Center activation. - */ cryptoKeyName?: string | null; - /** - * A description of the mute config. - */ description?: string | null; - /** - * Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings. - */ expiryTime?: string | null; - /** - * Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:` - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update. - */ mostRecentEditor?: string | null; - /** - * Identifier. This field will be ignored if provided on config creation. The following list shows some examples of the format: + `organizations/{organization\}/muteConfigs/{mute_config\}` + `organizations/{organization\}locations/{location\}//muteConfigs/{mute_config\}` + `folders/{folder\}/muteConfigs/{mute_config\}` + `folders/{folder\}/locations/{location\}/muteConfigs/{mute_config\}` + `projects/{project\}/muteConfigs/{mute_config\}` + `projects/{project\}/locations/{location\}/muteConfigs/{mute_config\}` - */ name?: string | null; - /** - * Required. The type of the mute config, which determines what type of mute state the config affects. Immutable after creation. - */ type?: string | null; - /** - * Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update. - */ updateTime?: string | null; } - /** - * Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules. - */ export interface Schema$GoogleCloudSecuritycenterV2MuteInfo { - /** - * The list of dynamic mute rules that currently match the finding. - */ dynamicMuteRecords?: Schema$GoogleCloudSecuritycenterV2DynamicMuteRecord[]; - /** - * If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute. - */ staticMute?: Schema$GoogleCloudSecuritycenterV2StaticMute; } - /** - * Contains information about a VPC network associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Network { - /** - * The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`. - */ name?: string | null; } - /** - * Kubernetes nodes associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Node { - /** - * [Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node. - */ name?: string | null; } - /** - * Provides GKE node pool information. - */ export interface Schema$GoogleCloudSecuritycenterV2NodePool { - /** - * Kubernetes node pool name. - */ name?: string | null; - /** - * Nodes associated with the finding. - */ nodes?: Schema$GoogleCloudSecuritycenterV2Node[]; } - /** - * Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Notebook { - /** - * The user ID of the latest author to modify the notebook. - */ lastAuthor?: string | null; - /** - * The name of the notebook. - */ name?: string | null; - /** - * The most recent time the notebook was updated. - */ notebookUpdateTime?: string | null; - /** - * The source notebook service, for example, "Colab Enterprise". - */ service?: string | null; } - /** - * Cloud SCC's Notification - */ export interface Schema$GoogleCloudSecuritycenterV2NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$GoogleCloudSecuritycenterV2Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to this notification's Finding. - */ resource?: Schema$GoogleCloudSecuritycenterV2Resource; } - /** - * Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview. - */ export interface Schema$GoogleCloudSecuritycenterV2Object { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Kubernetes object group, such as "policy.k8s.io/v1". - */ group?: string | null; - /** - * Kubernetes object kind, such as "Namespace". - */ kind?: string | null; - /** - * Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/. - */ name?: string | null; - /** - * Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/. - */ ns?: string | null; } - /** - * Contains information about the org policies associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2OrgPolicy { - /** - * Identifier. The resource name of the org policy. Example: "organizations/{organization_id\}/policies/{constraint_name\}" - */ name?: string | null; } - /** - * Package is a generic definition of a package. - */ export interface Schema$GoogleCloudSecuritycenterV2Package { - /** - * The CPE URI where the vulnerability was detected. - */ cpeUri?: string | null; - /** - * The name of the package where the vulnerability was detected. - */ packageName?: string | null; - /** - * Type of package, for example, os, maven, or go. - */ packageType?: string | null; - /** - * The version of the package. - */ packageVersion?: string | null; } - /** - * Vertex AI training pipeline associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Pipeline { - /** - * The user-defined display name of pipeline, e.g. plants-classification - */ displayName?: string | null; - /** - * Resource name of the pipeline, e.g. projects/{project\}/locations/{location\}/trainingPipelines/5253428229225578496 - */ name?: string | null; } - /** - * A Kubernetes Pod. - */ export interface Schema$GoogleCloudSecuritycenterV2Pod { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Pod labels. For Kubernetes containers, these are applied to the container. - */ labels?: Schema$GoogleCloudSecuritycenterV2Label[]; - /** - * Kubernetes Pod name. - */ name?: string | null; - /** - * Kubernetes Pod namespace. - */ ns?: string | null; } - /** - * The policy field that violates the deployed posture and its expected and detected values. - */ export interface Schema$GoogleCloudSecuritycenterV2PolicyDriftDetails { - /** - * The detected value that violates the deployed posture, for example, `false` or `allowed_values={"projects/22831892"\}`. - */ detectedValue?: string | null; - /** - * The value of this field that was configured in a posture, for example, `true` or `allowed_values={"projects/29831892"\}`. - */ expectedValue?: string | null; - /** - * The name of the updated field, for example constraint.implementation.policy_rules[0].enforce - */ field?: string | null; } - /** - * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. - */ export interface Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary { - /** - * Total number of child resources that conform to the policy. - */ conformantResourcesCount?: string | null; - /** - * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". - */ evaluationErrorsCount?: string | null; - /** - * Total count of child resources which were not in scope for evaluation. - */ outOfScopeResourcesCount?: string | null; - /** - * Count of child resources in violation of the policy. - */ policyViolationsCount?: string | null; } - /** - * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. - */ export interface Schema$GoogleCloudSecuritycenterV2PortRange { - /** - * Maximum port value. - */ max?: string | null; - /** - * Minimum port value. - */ min?: string | null; } - /** - * Represents an operating system process. - */ export interface Schema$GoogleCloudSecuritycenterV2Process { - /** - * Process arguments as JSON encoded strings. - */ args?: string[] | null; - /** - * True if `args` is incomplete. - */ argumentsTruncated?: boolean | null; - /** - * File information for the process executable. - */ binary?: Schema$GoogleCloudSecuritycenterV2File; - /** - * Process environment variables. - */ envVariables?: Schema$GoogleCloudSecuritycenterV2EnvironmentVariable[]; - /** - * True if `env_variables` is incomplete. - */ envVariablesTruncated?: boolean | null; - /** - * File information for libraries loaded by the process. - */ libraries?: Schema$GoogleCloudSecuritycenterV2File[]; - /** - * The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`. - */ name?: string | null; - /** - * The parent process ID. - */ parentPid?: string | null; - /** - * The process ID. - */ pid?: string | null; - /** - * When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter. - */ script?: Schema$GoogleCloudSecuritycenterV2File; - /** - * The ID of the user that executed the process. E.g. If this is the root user this will always be 0. - */ userId?: string | null; } - /** - * Indicates what signature matched this process. - */ export interface Schema$GoogleCloudSecuritycenterV2ProcessSignature { - /** - * Signature indicating that a binary family was matched. - */ memoryHashSignature?: Schema$GoogleCloudSecuritycenterV2MemoryHashSignature; - /** - * Describes the type of resource associated with the signature. - */ signatureType?: string | null; - /** - * Signature indicating that a YARA rule was matched. - */ yaraRuleSignature?: Schema$GoogleCloudSecuritycenterV2YaraRuleSignature; } - /** - * Additional Links - */ export interface Schema$GoogleCloudSecuritycenterV2Reference { - /** - * Source of the reference e.g. NVD - */ source?: string | null; - /** - * Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527. - */ uri?: string | null; } - /** - * Information about the requests relevant to the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Requests { - /** - * Allowed RPS (requests per second) over the long term. - */ longTermAllowed?: number | null; - /** - * Denied RPS (requests per second) over the long term. - */ longTermDenied?: number | null; - /** - * For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term. - */ ratio?: number | null; - /** - * Allowed RPS (requests per second) in the short term. - */ shortTermAllowed?: number | null; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV2Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$GoogleCloudSecuritycenterV2AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$GoogleCloudSecuritycenterV2AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV2ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$GoogleCloudSecuritycenterV2AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$GoogleCloudSecuritycenterV2AzureMetadata; - /** - * Indicates which cloud provider the finding is from. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * The Google Cloud metadata associated with the finding. - */ gcpMetadata?: Schema$GcpMetadata; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$GoogleCloudSecuritycenterV2ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id\}/folders/{folder_id\}/folders/{folder_id\}/projects/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The service or resource provider associated with the resource. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * The App Hub Application associated with the finding's resource. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * Represents the path of resources leading up to the resource this finding is about. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourcePath { - /** - * The list of nodes that make the up resource path, ordered from lowest level to highest level. - */ nodes?: Schema$GoogleCloudSecuritycenterV2ResourcePathNode[]; } - /** - * A node within the resource path. Each node represents a resource within the resource hierarchy. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourcePathNode { - /** - * The display name of the resource this node represents. - */ displayName?: string | null; - /** - * The ID of the resource this node represents. - */ id?: string | null; - /** - * The type of resource this node represents. - */ nodeType?: string | null; } - /** - * A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceValueConfig { - /** - * Cloud provider this configuration applies to - */ cloudProvider?: string | null; - /** - * Output only. Timestamp this resource value configuration was created. - */ createTime?: string | null; - /** - * Description of the resource value configuration. - */ description?: string | null; - /** - * Identifier. Name for the resource value configuration - */ name?: string | null; - /** - * List of resource labels to search for, evaluated with `AND`. For example, "resource_labels_selector": {"key": "value", "env": "prod"\} will match resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.com/resource-manager/docs/creating-managing-labels - */ resourceLabelsSelector?: {[key: string]: string} | null; - /** - * Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "storage.googleapis.com/Bucket" resources. - */ resourceType?: string | null; - /** - * Resource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request - */ resourceValue?: string | null; - /** - * Project or folder to scope this configuration to. For example, "project/456" would apply this configuration only to resources in "project/456" scope and will be checked with `AND` of other resources. - */ scope?: string | null; - /** - * A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. "bigquery.googleapis.com/Dataset". - */ sensitiveDataProtectionMapping?: Schema$GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping; - /** - * Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of "tagValues/123". Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing - */ - tagValues?: string[] | null; - /** - * Output only. Timestamp this resource value configuration was last updated. - */ + tagValues?: string[] | null; updateTime?: string | null; } - /** - * Kubernetes Role or ClusterRole. - */ export interface Schema$GoogleCloudSecuritycenterV2Role { - /** - * Role type. - */ kind?: string | null; - /** - * Role name. - */ name?: string | null; - /** - * Role namespace. - */ ns?: string | null; } - /** - * Details about a secret or credential associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Secret { - /** - * The environment variable containing the secret. - */ environmentVariable?: Schema$GoogleCloudSecuritycenterV2SecretEnvironmentVariable; - /** - * The file containing the secret. - */ filePath?: Schema$GoogleCloudSecuritycenterV2SecretFilePath; - /** - * The status of the secret. - */ status?: Schema$GoogleCloudSecuritycenterV2SecretStatus; - /** - * The type of secret, for example, GCP_API_KEY. - */ type?: string | null; } - /** - * Environment variable containing the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretEnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content. - */ key?: string | null; } - /** - * File path containing the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretFilePath { - /** - * Path to the file. - */ path?: string | null; } - /** - * The status of the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretStatus { - /** - * Time that the secret was found. - */ lastUpdatedTime?: string | null; - /** - * The validity of the secret. - */ validity?: string | null; } - /** - * SecurityBulletin are notifications of vulnerabilities of Google products. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityBulletin { - /** - * ID of the bulletin corresponding to the vulnerability. - */ bulletinId?: string | null; - /** - * Submission time of this Security Bulletin. - */ submissionTime?: string | null; - /** - * This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0 - */ suggestedUpgradeVersion?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityMarks { - /** - * The canonical name of the marks. The following list shows some examples: + `organizations/{organization_id\}/assets/{asset_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` + `folders/{folder_id\}/assets/{asset_id\}/securityMarks` + `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `folders/{folder_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` + `projects/{project_number\}/assets/{asset_id\}/securityMarks` + `projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `projects/{project_number\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name The following list shows some examples: + `organizations/{organization_id\}/assets/{asset_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` - */ name?: string | null; } - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityPolicy { - /** - * The name of the Google Cloud Armor security policy, for example, "my-security-policy". - */ name?: string | null; - /** - * Whether or not the associated rule or policy is in preview mode. - */ preview?: boolean | null; - /** - * The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'. - */ type?: string | null; } - /** - * Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityPosture { - /** - * The name of the updated policy, for example, `projects/{project_id\}/policies/{constraint_name\}`. - */ changedPolicy?: string | null; - /** - * Name of the posture, for example, `CIS-Posture`. - */ name?: string | null; - /** - * The ID of the updated policy, for example, `compute-policy-1`. - */ policy?: string | null; - /** - * The details about a change in an updated policy that violates the deployed posture. - */ policyDriftDetails?: Schema$GoogleCloudSecuritycenterV2PolicyDriftDetails[]; - /** - * The name of the updated policy set, for example, `cis-policyset`. - */ policySet?: string | null; - /** - * The name of the posture deployment, for example, `organizations/{org_id\}/posturedeployments/{posture_deployment_id\}`. - */ postureDeployment?: string | null; - /** - * The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number\}`. - */ postureDeploymentResource?: string | null; - /** - * The version of the posture, for example, `c7cfa2a8`. - */ revisionId?: string | null; } - /** - * Resource value mapping for Sensitive Data Protection findings If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration. - */ export interface Schema$GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping { - /** - * Resource value mapping for high-sensitivity Sensitive Data Protection findings - */ highSensitivityMapping?: string | null; - /** - * Resource value mapping for medium-sensitivity Sensitive Data Protection findings - */ mediumSensitivityMapping?: string | null; } - /** - * Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive. - */ export interface Schema$GoogleCloudSecuritycenterV2SensitivityScore { - /** - * The sensitivity score applied to the resource. - */ score?: string | null; } - /** - * Identity delegation history of an authenticated service account. - */ export interface Schema$GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo { - /** - * The email address of a Google account. - */ principalEmail?: string | null; - /** - * A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name\}/subjects/{subject\}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name\}[{subject\}]` - */ principalSubject?: string | null; } - /** - * Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly. - */ export interface Schema$GoogleCloudSecuritycenterV2StaticMute { - /** - * When the static mute was applied. - */ applyTime?: string | null; - /** - * The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value. - */ state?: string | null; } - /** - * Represents a Kubernetes subject. - */ export interface Schema$GoogleCloudSecuritycenterV2Subject { - /** - * Authentication type for the subject. - */ kind?: string | null; - /** - * Name for the subject. - */ name?: string | null; - /** - * Namespace for the subject. - */ ns?: string | null; } - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ export interface Schema$GoogleCloudSecuritycenterV2TicketInfo { - /** - * The assignee of the ticket in the ticket system. - */ assignee?: string | null; - /** - * The description of the ticket in the ticket system. - */ description?: string | null; - /** - * The identifier of the ticket in the ticket system. - */ id?: string | null; - /** - * The latest status of the ticket, as reported by the ticket system. - */ status?: string | null; - /** - * The time when the ticket was last updated, as reported by the ticket system. - */ updateTime?: string | null; - /** - * The link to the ticket in the ticket system. - */ uri?: string | null; } - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. - */ export interface Schema$GoogleCloudSecuritycenterV2ToxicCombination { - /** - * The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack. - */ attackExposureScore?: number | null; - /** - * List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`. - */ relatedFindings?: string[] | null; } - /** - * Vertex AI-related information associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2VertexAi { - /** - * Datasets associated with the finding. - */ datasets?: Schema$GoogleCloudSecuritycenterV2Dataset[]; - /** - * Pipelines associated with the finding. - */ pipelines?: Schema$GoogleCloudSecuritycenterV2Pipeline[]; } - /** - * Refers to common vulnerability fields e.g. cve, cvss, cwe etc. - */ export interface Schema$GoogleCloudSecuritycenterV2Vulnerability { - /** - * CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ cve?: Schema$GoogleCloudSecuritycenterV2Cve; - /** - * Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability. - */ cwes?: Schema$GoogleCloudSecuritycenterV2Cwe[]; - /** - * The fixed package is relevant to the finding. - */ fixedPackage?: Schema$GoogleCloudSecuritycenterV2Package; - /** - * The offending package is relevant to the finding. - */ offendingPackage?: Schema$GoogleCloudSecuritycenterV2Package; - /** - * Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is. - */ providerRiskScore?: string | null; - /** - * Represents whether the vulnerability is reachable (detected via static analysis) - */ reachable?: boolean | null; - /** - * The security bulletin is relevant to this finding. - */ securityBulletin?: Schema$GoogleCloudSecuritycenterV2SecurityBulletin; } - /** - * A signature corresponding to a YARA rule. - */ export interface Schema$GoogleCloudSecuritycenterV2YaraRuleSignature { - /** - * The name of the YARA rule. - */ yaraRule?: string | null; } - /** - * Request message for grouping by assets. - */ export interface Schema$GroupAssetsRequest { - /** - * When compare_duration is set, the GroupResult's "state_change" property is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at reference_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at reference_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and reference_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. If this field is set then `state_change` must be a specified field in `group_by`. - */ compareDuration?: string | null; - /** - * Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` - */ filter?: string | null; - /** - * Required. Expression that defines what assets fields to use for grouping. The string value should follow SQL syntax: comma separated list of fields. For example: "security_center_properties.resource_project,security_center_properties.project". The following fields are supported when compare_duration is not set: * security_center_properties.resource_project * security_center_properties.resource_project_display_name * security_center_properties.resource_type * security_center_properties.resource_parent * security_center_properties.resource_parent_display_name The following fields are supported when compare_duration is set: * security_center_properties.resource_type * security_center_properties.resource_project_display_name * security_center_properties.resource_parent_display_name - */ groupBy?: string | null; - /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. - */ pageSize?: number | null; - /** - * The value returned by the last `GroupAssetsResponse`; indicates that this is a continuation of a prior `GroupAssets` call, and that the system should return the next page of data. - */ pageToken?: string | null; - /** - * Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. - */ readTime?: string | null; } - /** - * Response message for grouping by assets. - */ export interface Schema$GroupAssetsResponse { - /** - * Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear. - */ groupByResults?: Schema$GroupResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the groupBy request. - */ readTime?: string | null; - /** - * The total number of results matching the query. - */ totalSize?: number | null; } - /** - * Request message for grouping by findings. - */ export interface Schema$GroupFindingsRequest { - /** - * When compare_duration is set, the GroupResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. If this field is set then `state_change` must be a specified field in `group_by`. - */ compareDuration?: string | null; - /** - * Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` - */ filter?: string | null; - /** - * Required. Expression that defines what assets fields to use for grouping (including `state_change`). The string value should follow SQL syntax: comma separated list of fields. For example: "parent,resource_name". The following fields are supported when compare_duration is set: * state_change - */ groupBy?: string | null; - /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. - */ pageSize?: number | null; - /** - * The value returned by the last `GroupFindingsResponse`; indicates that this is a continuation of a prior `GroupFindings` call, and that the system should return the next page of data. - */ pageToken?: string | null; - /** - * Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. - */ readTime?: string | null; } - /** - * Response message for group by findings. - */ export interface Schema$GroupFindingsResponse { - /** - * Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear. - */ groupByResults?: Schema$GroupResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the groupBy request. - */ readTime?: string | null; - /** - * The total number of results matching the query. - */ totalSize?: number | null; } - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. - */ export interface Schema$GroupMembership { - /** - * ID of the group. - */ groupId?: string | null; - /** - * Type of group. - */ groupType?: string | null; } - /** - * Result containing the properties and count of a groupBy request. - */ export interface Schema$GroupResult { - /** - * Total count of resources for the given properties. - */ count?: string | null; - /** - * Properties matching the groupBy fields in the request. - */ properties?: {[key: string]: any} | null; } - /** - * The http response returned by the web application. - */ export interface Schema$HttpResponse { - /** - * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". - */ path?: string | null; - /** - * The http response code returned by the web application, for example, 200. - */ statusCode?: string | null; } - /** - * Represents a particular IAM binding, which captures a member's role addition, removal, or state. - */ export interface Schema$IamBinding { - /** - * The action that was performed on a Binding. - */ action?: string | null; - /** - * A single identity requesting access for a Cloud Platform resource, for example, "foo@google.com". - */ member?: string | null; - /** - * Role that is assigned to "members". For example, "roles/viewer", "roles/editor", or "roles/owner". - */ role?: string | null; } - /** - * Cloud IAM Policy information associated with the Google Cloud resource described by the Security Command Center asset. This information is managed and defined by the Google Cloud resource and cannot be modified by the user. - */ export interface Schema$IamPolicy { - /** - * The JSON representation of the Policy associated with the asset. See https://cloud.google.com/iam/reference/rest/v1/Policy for format details. - */ policyBlob?: string | null; } - /** - * Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ export interface Schema$Indicator { - /** - * List of domains associated to the Finding. - */ domains?: string[] | null; - /** - * The list of IP addresses that are associated with the finding. - */ ipAddresses?: string[] | null; - /** - * The list of matched signatures indicating that the given process is present in the environment. - */ signatures?: Schema$ProcessSignature[]; - /** - * The list of URIs associated to the Findings. - */ uris?: string[] | null; } - /** - * Type of information detected by the API. - */ export interface Schema$InfoType { - /** - * Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64\}`. - */ name?: string | null; - /** - * Optional custom sensitivity for this InfoType. This only applies to data profiling. - */ sensitivityScore?: Schema$SensitivityScore; - /** - * Optional version name for this InfoType. - */ version?: string | null; } - /** - * IP rule information. - */ export interface Schema$IpRule { - /** - * Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number. - */ portRanges?: Schema$PortRange[]; - /** - * The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value. - */ protocol?: string | null; } - /** - * IP rules associated with the finding. - */ export interface Schema$IpRules { - /** - * Tuple with allowed rules. - */ allowed?: Schema$Allowed; - /** - * Tuple with denied rules. - */ denied?: Schema$Denied; - /** - * If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ destinationIpRanges?: string[] | null; - /** - * The direction that the rule is applicable to, one of ingress or egress. - */ direction?: string | null; - /** - * Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml. - */ exposedServices?: string[] | null; - /** - * If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ sourceIpRanges?: string[] | null; } - /** - * Describes a job - */ export interface Schema$Job { - /** - * Optional. If the job did not complete successfully, this field describes why. - */ errorCode?: number | null; - /** - * Optional. Gives the location where the job ran, such as `US` or `europe-west1` - */ location?: string | null; - /** - * The fully-qualified name for a job. e.g. `projects//jobs/` - */ name?: string | null; - /** - * Output only. State of the job, such as `RUNNING` or `PENDING`. - */ state?: string | null; } - /** - * Kernel mode rootkit signatures. - */ export interface Schema$KernelRootkit { - /** - * Rootkit name, when available. - */ name?: string | null; - /** - * True if unexpected modifications of kernel code memory are present. - */ unexpectedCodeModification?: boolean | null; - /** - * True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedFtraceHandler?: boolean | null; - /** - * True if interrupt handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedInterruptHandler?: boolean | null; - /** - * True if kernel code pages that are not in the expected kernel or module code regions are present. - */ unexpectedKernelCodePages?: boolean | null; - /** - * True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedKprobeHandler?: boolean | null; - /** - * True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list. - */ unexpectedProcessesInRunqueue?: boolean | null; - /** - * True if unexpected modifications of kernel read-only data memory are present. - */ unexpectedReadOnlyDataModification?: boolean | null; - /** - * True if system call handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedSystemCallHandler?: boolean | null; } - /** - * Kubernetes-related attributes. - */ export interface Schema$Kubernetes { - /** - * Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding. - */ accessReviews?: Schema$AccessReview[]; - /** - * Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ bindings?: Schema$GoogleCloudSecuritycenterV1Binding[]; - /** - * GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available. - */ nodePools?: Schema$NodePool[]; - /** - * Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information. - */ nodes?: Schema$Node[]; - /** - * Kubernetes objects related to the finding. - */ objects?: Schema$Object[]; - /** - * Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod. - */ pods?: Schema$Pod[]; - /** - * Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ roles?: Schema$Role[]; } - /** - * Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering). - */ export interface Schema$Label { - /** - * Name of the label. - */ name?: string | null; - /** - * Value that corresponds to the label's name. - */ value?: string | null; } - /** - * Response message for listing assets. - */ export interface Schema$ListAssetsResponse { - /** - * Assets matching the list request. - */ listAssetsResults?: Schema$ListAssetsResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the list request. - */ readTime?: string | null; - /** - * The total number of assets matching the query. - */ totalSize?: number | null; } - /** - * Result containing the Asset and its State. - */ export interface Schema$ListAssetsResult { - /** - * Asset matching the search request. - */ asset?: Schema$Asset; - /** - * State change of the asset between the points in time. - */ stateChange?: string | null; } - /** - * Response message for listing the attack paths for a given simulation or valued resource. - */ export interface Schema$ListAttackPathsResponse { - /** - * The attack paths that the attack path simulation identified. - */ attackPaths?: Schema$AttackPath[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; } - /** - * Response message for listing BigQuery exports. - */ export interface Schema$ListBigQueryExportsResponse { - /** - * The BigQuery exports from the specified parent. - */ bigQueryExports?: Schema$GoogleCloudSecuritycenterV1BigQueryExport[]; - /** - * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. - */ nextPageToken?: string | null; } - /** - * Response for listing current and descendant resident Event Threat Detection custom modules. - */ export interface Schema$ListDescendantEventThreatDetectionCustomModulesResponse { - /** - * Custom modules belonging to the requested parent. - */ eventThreatDetectionCustomModules?: Schema$EventThreatDetectionCustomModule[]; - /** - * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. - */ nextPageToken?: string | null; } - /** - * Response message for listing descendant Security Health Analytics custom modules. - */ export interface Schema$ListDescendantSecurityHealthAnalyticsCustomModulesResponse { - /** - * If not empty, indicates that there may be more custom modules to be returned. - */ nextPageToken?: string | null; - /** - * Custom modules belonging to the requested parent and its descendants. - */ securityHealthAnalyticsCustomModules?: Schema$GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule[]; } - /** - * Response for listing EffectiveEventThreatDetectionCustomModules. - */ export interface Schema$ListEffectiveEventThreatDetectionCustomModulesResponse { - /** - * Effective custom modules belonging to the requested parent. - */ effectiveEventThreatDetectionCustomModules?: Schema$EffectiveEventThreatDetectionCustomModule[]; - /** - * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. - */ nextPageToken?: string | null; } - /** - * Response message for listing effective Security Health Analytics custom modules. - */ export interface Schema$ListEffectiveSecurityHealthAnalyticsCustomModulesResponse { - /** - * Effective custom modules belonging to the requested parent. - */ effectiveSecurityHealthAnalyticsCustomModules?: Schema$GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule[]; - /** - * If not empty, indicates that there may be more effective custom modules to be returned. - */ nextPageToken?: string | null; } - /** - * Response for listing Event Threat Detection custom modules. - */ export interface Schema$ListEventThreatDetectionCustomModulesResponse { - /** - * Custom modules belonging to the requested parent. - */ eventThreatDetectionCustomModules?: Schema$EventThreatDetectionCustomModule[]; - /** - * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. - */ nextPageToken?: string | null; } - /** - * Response message for listing findings. - */ export interface Schema$ListFindingsResponse { - /** - * Findings matching the list request. - */ listFindingsResults?: Schema$ListFindingsResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the list request. - */ readTime?: string | null; - /** - * The total number of findings matching the query. - */ totalSize?: number | null; } - /** - * Result containing the Finding and its StateChange. - */ export interface Schema$ListFindingsResult { - /** - * Finding matching the search request. - */ finding?: Schema$Finding; - /** - * Output only. Resource that is associated with this finding. - */ resource?: Schema$Resource; - /** - * State change of the finding between the points in time. - */ stateChange?: string | null; } - /** - * Response message for listing mute configs. - */ export interface Schema$ListMuteConfigsResponse { - /** - * The mute configs from the specified parent. - */ muteConfigs?: Schema$GoogleCloudSecuritycenterV1MuteConfig[]; - /** - * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. - */ nextPageToken?: string | null; } - /** - * Response message for listing notification configs. - */ export interface Schema$ListNotificationConfigsResponse { - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Notification configs belonging to the requested parent. - */ notificationConfigs?: Schema$NotificationConfig[]; } - /** - * 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[]; - /** - * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. - */ unreachable?: string[] | null; } - /** - * Response message to list resource value configs - */ export interface Schema$ListResourceValueConfigsResponse { - /** - * A token, which can be sent as `page_token` to retrieve the next page. If this field is empty, there are no subsequent pages. - */ nextPageToken?: string | null; - /** - * The resource value configs from the specified parent. - */ resourceValueConfigs?: Schema$GoogleCloudSecuritycenterV1ResourceValueConfig[]; } - /** - * Response message for listing Security Health Analytics custom modules. - */ export interface Schema$ListSecurityHealthAnalyticsCustomModulesResponse { - /** - * If not empty, indicates that there may be more custom modules to be returned. - */ nextPageToken?: string | null; - /** - * Custom modules belonging to the requested parent. - */ securityHealthAnalyticsCustomModules?: Schema$GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule[]; } - /** - * Response message for listing sources. - */ export interface Schema$ListSourcesResponse { - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Sources belonging to the requested parent. - */ sources?: Schema$Source[]; } - /** - * Response message for listing the valued resources for a given simulation. - */ export interface Schema$ListValuedResourcesResponse { - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * The estimated total number of results matching the query. - */ totalSize?: number | null; - /** - * The valued resources that the attack path simulation identified. - */ valuedResources?: Schema$ValuedResource[]; } - /** - * Contains information related to the load balancer associated with the finding. - */ export interface Schema$LoadBalancer { - /** - * The name of the load balancer associated with the finding. - */ name?: string | null; } - /** - * An individual entry in a log. - */ export interface Schema$LogEntry { - /** - * An individual entry in a log stored in Cloud Logging. - */ cloudLoggingEntry?: Schema$CloudLoggingEntry; } - /** - * A signature corresponding to memory page hashes. - */ export interface Schema$MemoryHashSignature { - /** - * The binary family. - */ binaryFamily?: string | null; - /** - * The list of memory hash detections contributing to the binary family match. - */ detections?: Schema$Detection[]; } - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ export interface Schema$MitreAttack { - /** - * Additional MITRE ATT&CK tactics related to this finding, if any. - */ additionalTactics?: string[] | null; - /** - * Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques. - */ additionalTechniques?: string[] | null; - /** - * The MITRE ATT&CK tactic most closely represented by this finding, if any. - */ primaryTactic?: string | null; - /** - * The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`). - */ primaryTechniques?: string[] | null; - /** - * The MITRE ATT&CK version referenced by the above fields. E.g. "8". - */ version?: string | null; } - /** - * Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules. - */ export interface Schema$MuteInfo { - /** - * The list of dynamic mute rules that currently match the finding. - */ dynamicMuteRecords?: Schema$DynamicMuteRecord[]; - /** - * If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute. - */ staticMute?: Schema$StaticMute; } - /** - * Contains information about a VPC network associated with the finding. - */ export interface Schema$Network { - /** - * The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`. - */ name?: string | null; } - /** - * Kubernetes nodes associated with the finding. - */ export interface Schema$Node { - /** - * [Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node. - */ name?: string | null; } - /** - * Provides GKE node pool information. - */ export interface Schema$NodePool { - /** - * Kubernetes node pool name. - */ name?: string | null; - /** - * Nodes associated with the finding. - */ nodes?: Schema$Node[]; } - /** - * Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding. - */ export interface Schema$Notebook { - /** - * The user ID of the latest author to modify the notebook. - */ lastAuthor?: string | null; - /** - * The name of the notebook. - */ name?: string | null; - /** - * The most recent time the notebook was updated. - */ notebookUpdateTime?: string | null; - /** - * The source notebook service, for example, "Colab Enterprise". - */ service?: string | null; } - /** - * Cloud Security Command Center (Cloud SCC) notification configs. A notification config is a Cloud SCC resource that contains the configuration to send notifications for create/update events of findings, assets and etc. - */ export interface Schema$NotificationConfig { - /** - * The description of the notification config (max of 1024 characters). - */ description?: string | null; - /** - * The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". - */ name?: string | null; - /** - * The Pub/Sub topic to send notifications to. Its format is "projects/[project_id]/topics/[topic]". - */ pubsubTopic?: string | null; - /** - * Output only. The service account that needs "pubsub.topics.publish" permission to publish to the Pub/Sub topic. - */ serviceAccount?: string | null; - /** - * The config for triggering streaming-based notifications. - */ streamingConfig?: Schema$StreamingConfig; - } - /** - * Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview. - */ + } export interface Schema$Object { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$Container[]; - /** - * Kubernetes object group, such as "policy.k8s.io/v1". - */ group?: string | null; - /** - * Kubernetes object kind, such as "Namespace". - */ kind?: string | null; - /** - * Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/. - */ name?: string | null; - /** - * Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/. - */ ns?: string | null; } - /** - * 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, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. - */ response?: {[key: string]: any} | null; } - /** - * User specified settings that are attached to the Security Command Center organization. - */ export interface Schema$OrganizationSettings { - /** - * The configuration used for Asset Discovery runs. - */ assetDiscoveryConfig?: Schema$AssetDiscoveryConfig; - /** - * A flag that indicates if Asset Discovery should be enabled. If the flag is set to `true`, then discovery of assets will occur. If it is set to `false`, all historical assets will remain, but discovery of future assets will not occur. - */ enableAssetDiscovery?: boolean | null; - /** - * The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/organizationSettings". - */ name?: string | null; } - /** - * Contains information about the org policies associated with the finding. - */ export interface Schema$OrgPolicy { - /** - * The resource name of the org policy. Example: "organizations/{organization_id\}/policies/{constraint_name\}" - */ name?: string | null; } - /** - * Package is a generic definition of a package. - */ export interface Schema$Package { - /** - * The CPE URI where the vulnerability was detected. - */ cpeUri?: string | null; - /** - * The name of the package where the vulnerability was detected. - */ packageName?: string | null; - /** - * Type of package, for example, os, maven, or go. - */ packageType?: string | null; - /** - * The version of the package. - */ packageVersion?: string | null; } - /** - * A finding that is associated with this node in the attack path. - */ export interface Schema$PathNodeAssociatedFinding { - /** - * Canonical name of the associated findings. Example: `organizations/123/sources/456/findings/789` - */ canonicalFinding?: string | null; - /** - * The additional taxonomy group within findings from a given source. - */ findingCategory?: string | null; - /** - * Full resource name of the finding. - */ name?: string | null; } - /** - * Vertex AI training pipeline associated with the finding. - */ export interface Schema$Pipeline { - /** - * The user defined display name of pipeline, e.g. plants-classification - */ displayName?: string | null; - /** - * Resource name of the pipeline, e.g. projects/{project\}/locations/{location\}/trainingPipelines/5253428229225578496 - */ name?: string | null; } - /** - * A Kubernetes Pod. - */ export interface Schema$Pod { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$Container[]; - /** - * Pod labels. For Kubernetes containers, these are applied to the container. - */ labels?: Schema$Label[]; - /** - * Kubernetes Pod name. - */ name?: string | null; - /** - * Kubernetes Pod namespace. - */ ns?: 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`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] \}, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < 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$Policy { - /** - * Specifies cloud audit logging configuration for this policy. - */ auditConfigs?: Schema$AuditConfig[]; - /** - * Associates a list of `members`, or principals, with 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 principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`. - */ bindings?: Schema$Binding[]; - /** - * `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; } - /** - * The policy field that violates the deployed posture and its expected and detected values. - */ export interface Schema$PolicyDriftDetails { - /** - * The detected value that violates the deployed posture, for example, `false` or `allowed_values={"projects/22831892"\}`. - */ detectedValue?: string | null; - /** - * The value of this field that was configured in a posture, for example, `true` or `allowed_values={"projects/29831892"\}`. - */ expectedValue?: string | null; - /** - * The name of the updated field, for example constraint.implementation.policy_rules[0].enforce - */ field?: string | null; } - /** - * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. - */ export interface Schema$PolicyViolationSummary { - /** - * Total number of child resources that conform to the policy. - */ conformantResourcesCount?: string | null; - /** - * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". - */ evaluationErrorsCount?: string | null; - /** - * Total count of child resources which were not in scope for evaluation. - */ outOfScopeResourcesCount?: string | null; - /** - * Count of child resources in violation of the policy. - */ policyViolationsCount?: string | null; } - /** - * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. - */ export interface Schema$PortRange { - /** - * Maximum port value. - */ max?: string | null; - /** - * Minimum port value. - */ min?: string | null; } - /** - * A position in the uploaded text version of a module. - */ export interface Schema$Position { - /** - * The column number. - */ columnNumber?: number | null; - /** - * The line number. - */ lineNumber?: number | null; } - /** - * Represents an operating system process. - */ export interface Schema$Process { - /** - * Process arguments as JSON encoded strings. - */ args?: string[] | null; - /** - * True if `args` is incomplete. - */ argumentsTruncated?: boolean | null; - /** - * File information for the process executable. - */ binary?: Schema$File; - /** - * Process environment variables. - */ envVariables?: Schema$EnvironmentVariable[]; - /** - * True if `env_variables` is incomplete. - */ envVariablesTruncated?: boolean | null; - /** - * File information for libraries loaded by the process. - */ libraries?: Schema$File[]; - /** - * The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`. - */ name?: string | null; - /** - * The parent process ID. - */ parentPid?: string | null; - /** - * The process ID. - */ pid?: string | null; - /** - * When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter. - */ script?: Schema$File; - /** - * The ID of the user that executed the process. E.g. If this is the root user this will always be 0. - */ userId?: string | null; } - /** - * Indicates what signature matched this process. - */ export interface Schema$ProcessSignature { - /** - * Signature indicating that a binary family was matched. - */ memoryHashSignature?: Schema$MemoryHashSignature; - /** - * Describes the type of resource associated with the signature. - */ signatureType?: string | null; - /** - * Signature indicating that a YARA rule was matched. - */ yaraRuleSignature?: Schema$YaraRuleSignature; } - /** - * Additional Links - */ export interface Schema$Reference { - /** - * Source of the reference e.g. NVD - */ source?: string | null; - /** - * Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527. - */ uri?: string | null; } - /** - * Information about the requests relevant to the finding. - */ export interface Schema$Requests { - /** - * Allowed RPS (requests per second) over the long term. - */ longTermAllowed?: number | null; - /** - * Denied RPS (requests per second) over the long term. - */ longTermDenied?: number | null; - /** - * For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term. - */ ratio?: number | null; - /** - * Allowed RPS (requests per second) in the short term. - */ shortTermAllowed?: number | null; } - /** - * Information related to the Google Cloud resource that is associated with this finding. - */ export interface Schema$Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV1ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$AzureMetadata; - /** - * Indicates which cloud provider the finding is from. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$Folder[]; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Indicates which organization / tenant the finding is for. - */ organization?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of resource's parent. - */ parentName?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ projectName?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `org/{organization_id\}/folder/{folder_id\}/folder/{folder_id\}/project/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The service or resource provider associated with the resource. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * Represents the path of resources leading up to the resource this finding is about. - */ export interface Schema$ResourcePath { - /** - * The list of nodes that make the up resource path, ordered from lowest level to highest level. - */ nodes?: Schema$ResourcePathNode[]; } - /** - * A node within the resource path. Each node represents a resource within the resource hierarchy. - */ export interface Schema$ResourcePathNode { - /** - * The display name of the resource this node represents. - */ displayName?: string | null; - /** - * The ID of the resource this node represents. - */ id?: string | null; - /** - * The type of resource this node represents. - */ nodeType?: string | null; } - /** - * Metadata about a ResourceValueConfig. For example, id and name. - */ export interface Schema$ResourceValueConfigMetadata { - /** - * Resource value config name - */ name?: string | null; } - /** - * Kubernetes Role or ClusterRole. - */ export interface Schema$Role { - /** - * Role type. - */ kind?: string | null; - /** - * Role name. - */ name?: string | null; - /** - * Role namespace. - */ ns?: string | null; } - /** - * Request message for running asset discovery for an organization. - */ export interface Schema$RunAssetDiscoveryRequest {} - /** - * Details about a secret or credential associated with the finding. - */ export interface Schema$Secret { - /** - * The environment variable containing the secret. - */ environmentVariable?: Schema$SecretEnvironmentVariable; - /** - * The file containing the secret. - */ filePath?: Schema$SecretFilePath; - /** - * The status of the secret. - */ status?: Schema$SecretStatus; - /** - * The type of secret, for example, GCP_API_KEY. - */ type?: string | null; } - /** - * Environment variable containing the secret. - */ export interface Schema$SecretEnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content. - */ key?: string | null; } - /** - * File path containing the secret. - */ export interface Schema$SecretFilePath { - /** - * Path to the file. - */ path?: string | null; } - /** - * The status of the secret. - */ export interface Schema$SecretStatus { - /** - * Time that the secret was found. - */ lastUpdatedTime?: string | null; - /** - * The validity of the secret. - */ validity?: string | null; } - /** - * SecurityBulletin are notifications of vulnerabilities of Google products. - */ export interface Schema$SecurityBulletin { - /** - * ID of the bulletin corresponding to the vulnerability. - */ bulletinId?: string | null; - /** - * Submission time of this Security Bulletin. - */ submissionTime?: string | null; - /** - * This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0 - */ suggestedUpgradeVersion?: string | null; } - /** - * Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user. - */ export interface Schema$SecurityCenterProperties { - /** - * Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$Folder[]; - /** - * The user defined display name for this resource. - */ resourceDisplayName?: string | null; - /** - * The full resource name of the Google Cloud resource this asset represents. This field is immutable after create time. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceName?: string | null; - /** - * Owners of the Google Cloud resource. - */ resourceOwners?: string[] | null; - /** - * The full resource name of the immediate parent of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceParent?: string | null; - /** - * The user defined display name for the parent of this resource. - */ resourceParentDisplayName?: string | null; - /** - * The full resource name of the project the resource belongs to. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceProject?: string | null; - /** - * The user defined display name for the project of this resource. - */ resourceProjectDisplayName?: string | null; - /** - * The type of the Google Cloud resource. Examples include: APPLICATION, PROJECT, and ORGANIZATION. This is a case insensitive field defined by Security Command Center and/or the producer of the resource and is immutable after create time. - */ resourceType?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$SecurityMarks { - /** - * The canonical name of the marks. Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "folders/{folder_id\}/assets/{asset_id\}/securityMarks" "projects/{project_number\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ export interface Schema$SecurityPolicy { - /** - * The name of the Google Cloud Armor security policy, for example, "my-security-policy". - */ name?: string | null; - /** - * Whether or not the associated rule or policy is in preview mode. - */ preview?: boolean | null; - /** - * The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'. - */ type?: string | null; } - /** - * Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud. - */ export interface Schema$SecurityPosture { - /** - * The name of the updated policy, for example, `projects/{project_id\}/policies/{constraint_name\}`. - */ changedPolicy?: string | null; - /** - * Name of the posture, for example, `CIS-Posture`. - */ name?: string | null; - /** - * The ID of the updated policy, for example, `compute-policy-1`. - */ policy?: string | null; - /** - * The details about a change in an updated policy that violates the deployed posture. - */ policyDriftDetails?: Schema$PolicyDriftDetails[]; - /** - * The name of the updated policyset, for example, `cis-policyset`. - */ policySet?: string | null; - /** - * The name of the posture deployment, for example, `organizations/{org_id\}/posturedeployments/{posture_deployment_id\}`. - */ postureDeployment?: string | null; - /** - * The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number\}`. - */ postureDeploymentResource?: string | null; - /** - * The version of the posture, for example, `c7cfa2a8`. - */ revisionId?: string | null; } - /** - * Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive. - */ export interface Schema$SensitivityScore { - /** - * The sensitivity score applied to the resource. - */ score?: string | null; } - /** - * Identity delegation history of an authenticated service account. - */ export interface Schema$ServiceAccountDelegationInfo { - /** - * The email address of a Google account. - */ principalEmail?: string | null; - /** - * A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name\}/subjects/{subject\}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name\}[{subject\}]` - */ principalSubject?: string | null; } - /** - * Request message for updating a finding's state. - */ export interface Schema$SetFindingStateRequest { - /** - * Optional. The time at which the updated state takes effect. If unset, defaults to the request time. - */ startTime?: string | null; - /** - * Required. The desired State of the finding. - */ state?: string | null; } - /** - * Request message for `SetIamPolicy` method. - */ export interface Schema$SetIamPolicyRequest { - /** - * REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them. - */ policy?: Schema$Policy; - /** - * 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 updating a finding's mute status. - */ export interface Schema$SetMuteRequest { - /** - * Required. The desired state of the Mute. - */ mute?: string | null; } - /** - * Manually constructed resource name. If the custom module evaluates against only the resource data, you can omit the `iam_policy_data` field. If it evaluates only the `iam_policy_data` field, you can omit the resource data. - */ export interface Schema$SimulatedResource { - /** - * Optional. A representation of the IAM policy. - */ iamPolicyData?: Schema$Policy; - /** - * Optional. A representation of the Google Cloud resource. Should match the Google Cloud resource JSON format. - */ resourceData?: {[key: string]: any} | null; - /** - * Required. The type of the resource, for example, `compute.googleapis.com/Disk`. - */ resourceType?: string | null; } - /** - * Possible test result. - */ export interface Schema$SimulatedResult { - /** - * Error encountered during the test. - */ error?: Schema$Status; - /** - * Finding that would be published for the test case, if a violation is detected. - */ finding?: Schema$Finding; - /** - * Indicates that the test case does not trigger any violation. - */ noViolation?: Schema$Empty; } - /** - * Request message to simulate a CustomConfig against a given test resource. Maximum size of the request is 4 MB by default. - */ export interface Schema$SimulateSecurityHealthAnalyticsCustomModuleRequest { - /** - * Required. The custom configuration that you need to test. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * Required. Resource data to simulate custom module against. - */ resource?: Schema$SimulatedResource; } - /** - * Response message for simulating a `SecurityHealthAnalyticsCustomModule` against a given resource. - */ export interface Schema$SimulateSecurityHealthAnalyticsCustomModuleResponse { - /** - * Result for test case in the corresponding request. - */ result?: Schema$SimulatedResult; } - /** - * Attack path simulation - */ export interface Schema$Simulation { - /** - * Indicates which cloud provider was used in this simulation. - */ cloudProvider?: string | null; - /** - * Output only. Time simulation was created - */ createTime?: string | null; - /** - * Full resource name of the Simulation: `organizations/123/simulations/456` - */ name?: string | null; - /** - * Resource value configurations' metadata used in this simulation. Maximum of 100. - */ resourceValueConfigsMetadata?: Schema$ResourceValueConfigMetadata[]; } - /** - * Security Command Center finding source. A finding source is an entity or a mechanism that can produce a finding. A source is like a container of findings that come from the same scanner, logger, monitor, and other tools. - */ export interface Schema$Source { - /** - * The canonical name of the finding source. It's either "organizations/{organization_id\}/sources/{source_id\}", "folders/{folder_id\}/sources/{source_id\}", or "projects/{project_number\}/sources/{source_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The description of the source (max of 1024 characters). Example: "Web Security Scanner is a web security scanner for common vulnerabilities in App Engine applications. It can automatically scan and detect four common vulnerabilities, including cross-site-scripting (XSS), Flash injection, mixed content (HTTP in HTTPS), and outdated or insecure libraries." - */ description?: string | null; - /** - * The source's display name. A source's display name must be unique amongst its siblings, for example, two sources with the same parent can't share the same display name. The display name must have a length between 1 and 64 characters (inclusive). - */ displayName?: string | null; - /** - * The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}" - */ name?: string | null; } - /** - * Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly. - */ export interface Schema$StaticMute { - /** - * When the static mute was applied. - */ applyTime?: string | null; - /** - * The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value. - */ state?: 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; } - /** - * The config for streaming-based notifications, which send each event as soon as it is detected. - */ export interface Schema$StreamingConfig { - /** - * Expression that defines the filter to apply across create/update events of assets or findings as specified by the event type. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; } - /** - * Represents a Kubernetes subject. - */ export interface Schema$Subject { - /** - * Authentication type for the subject. - */ kind?: string | null; - /** - * Name for the subject. - */ name?: string | null; - /** - * Namespace for the subject. - */ ns?: string | null; } - /** - * Request message for `TestIamPermissions` method. - */ export interface Schema$TestIamPermissionsRequest { - /** - * 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$TestIamPermissionsResponse { - /** - * A subset of `TestPermissionsRequest.permissions` that the caller is allowed. - */ permissions?: string[] | null; } - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ export interface Schema$TicketInfo { - /** - * The assignee of the ticket in the ticket system. - */ assignee?: string | null; - /** - * The description of the ticket in the ticket system. - */ description?: string | null; - /** - * The identifier of the ticket in the ticket system. - */ id?: string | null; - /** - * The latest status of the ticket, as reported by the ticket system. - */ status?: string | null; - /** - * The time when the ticket was last updated, as reported by the ticket system. - */ updateTime?: string | null; - /** - * The link to the ticket in the ticket system. - */ uri?: string | null; } - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. - */ export interface Schema$ToxicCombination { - /** - * The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack. - */ attackExposureScore?: number | null; - /** - * List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`. - */ relatedFindings?: string[] | null; } - /** - * Request to validate an Event Threat Detection custom module. - */ export interface Schema$ValidateEventThreatDetectionCustomModuleRequest { - /** - * Required. The raw text of the module's contents. Used to generate error messages. - */ rawText?: string | null; - /** - * Required. The type of the module (e.g. CONFIGURABLE_BAD_IP). - */ type?: string | null; } - /** - * Response to validating an Event Threat Detection custom module. - */ export interface Schema$ValidateEventThreatDetectionCustomModuleResponse { - /** - * A list of errors returned by the validator. If the list is empty, there were no errors. - */ errors?: Schema$CustomModuleValidationErrors; } - /** - * A resource that is determined to have value to a user's system - */ export interface Schema$ValuedResource { - /** - * Human-readable name of the valued resource. - */ displayName?: string | null; - /** - * Exposed score for this valued resource. A value of 0 means no exposure was detected exposure. - */ exposedScore?: number | null; - /** - * Valued resource name, for example, e.g.: `organizations/123/simulations/456/valuedResources/789` - */ name?: string | null; - /** - * The [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name) of the valued resource. - */ resource?: string | null; - /** - * The [resource type](https://cloud.google.com/asset-inventory/docs/supported-asset-types) of the valued resource. - */ resourceType?: string | null; - /** - * How valuable this resource is. - */ resourceValue?: string | null; - /** - * List of resource value configurations' metadata used to determine the value of this resource. Maximum of 100. - */ resourceValueConfigsUsed?: Schema$ResourceValueConfigMetadata[]; } - /** - * Vertex AI-related information associated with the finding. - */ export interface Schema$VertexAi { - /** - * Datasets associated with the finding. - */ datasets?: Schema$Dataset[]; - /** - * Pipelines associated with the finding. - */ pipelines?: Schema$Pipeline[]; } - /** - * Refers to common vulnerability fields e.g. cve, cvss, cwe etc. - */ export interface Schema$Vulnerability { - /** - * CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ cve?: Schema$Cve; - /** - * Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability. - */ cwes?: Schema$Cwe[]; - /** - * The fixed package is relevant to the finding. - */ fixedPackage?: Schema$Package; - /** - * The offending package is relevant to the finding. - */ offendingPackage?: Schema$Package; - /** - * Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is. - */ providerRiskScore?: string | null; - /** - * Represents whether the vulnerability is reachable (detected via static analysis) - */ reachable?: boolean | null; - /** - * The security bulletin is relevant to this finding. - */ securityBulletin?: Schema$SecurityBulletin; } - /** - * Vulnerability count by severity. - */ export interface Schema$VulnerabilityCountBySeverity { - /** - * Key is the Severity enum. - */ severityToFindingCount?: {[key: string]: string} | null; } - /** - * Result containing the properties and count of a VulnerabilitySnapshot request. - */ export interface Schema$VulnerabilitySnapshot { - /** - * The cloud provider for the vulnerability snapshot. - */ cloudProvider?: string | null; - /** - * The vulnerability count by severity. - */ findingCount?: Schema$VulnerabilityCountBySeverity; - /** - * Identifier. The vulnerability snapshot name. Format: //locations//vulnerabilitySnapshots/ - */ name?: string | null; - /** - * The time that the snapshot was taken. - */ snapshotTime?: string | null; } - /** - * A signature corresponding to a YARA rule. - */ export interface Schema$YaraRuleSignature { - /** - * The name of the YARA rule. - */ yaraRule?: string | null; } @@ -7776,7 +2346,6 @@ export namespace securitycenter_v1 { } /** - * Filters an organization's assets and groups them by their specified properties. * @example * ```js * // Before running the sample: @@ -7806,7 +2375,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.assets.group({ - * // Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. * parent: 'folders/my-folder', * * // Request body metadata @@ -7930,7 +2498,6 @@ export namespace securitycenter_v1 { } /** - * Lists an organization's assets. * @example * ```js * // Before running the sample: @@ -7960,21 +2527,20 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.assets.list({ - * // When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. * compareDuration: 'placeholder-value', - * // A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'folders/my-folder', - * // Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -8085,7 +2651,6 @@ export namespace securitycenter_v1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -8115,11 +2680,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.assets.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'folders/my-folder/assets/my-asset/securityMarks', - * // The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -8240,7 +2804,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Assets$Group extends StandardParameters { /** - * Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -8251,49 +2815,49 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Assets$List extends StandardParameters { /** - * When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. + * */ compareDuration?: string; /** - * A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; /** - * Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Folders$Assets$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * */ updateMask?: string; @@ -8310,7 +2874,6 @@ export namespace securitycenter_v1 { } /** - * Creates a BigQuery export. * @example * ```js * // Before running the sample: @@ -8340,9 +2903,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.bigQueryExports.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. * bigQueryExportId: 'placeholder-value', - * // Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'folders/my-folder', * * // Request body metadata @@ -8482,7 +3044,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing BigQuery export. * @example * ```js * // Before running the sample: @@ -8512,7 +3073,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.bigQueryExports.delete({ - * // Required. The name of the BigQuery export to delete. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` * name: 'folders/my-folder/bigQueryExports/my-bigQueryExport', * }); * console.log(res.data); @@ -8615,7 +3175,6 @@ export namespace securitycenter_v1 { } /** - * Gets a BigQuery export. * @example * ```js * // Before running the sample: @@ -8645,7 +3204,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.bigQueryExports.get({ - * // Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` * name: 'folders/my-folder/bigQueryExports/my-bigQueryExport', * }); * console.log(res.data); @@ -8767,7 +3325,6 @@ export namespace securitycenter_v1 { } /** - * Lists BigQuery exports. Note that when requesting BigQuery exports at a given level all exports under that level are also returned e.g. if requesting BigQuery exports under a folder, then all BigQuery exports immediately under the folder plus the ones created under the projects within the folder are returned. * @example * ```js * // Before running the sample: @@ -8797,11 +3354,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.bigQueryExports.list({ - * // The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * * parent: 'folders/my-folder', * }); * console.log(res.data); @@ -8914,7 +3470,6 @@ export namespace securitycenter_v1 { } /** - * Updates a BigQuery export. * @example * ```js * // Before running the sample: @@ -8944,9 +3499,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.bigQueryExports.patch({ - * // The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. * name: 'folders/my-folder/bigQueryExports/my-bigQueryExport', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -9085,11 +3639,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Bigqueryexports$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. + * */ bigQueryExportId?: string; /** - * Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -9100,37 +3654,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Bigqueryexports$Delete extends StandardParameters { /** - * Required. The name of the BigQuery export to delete. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` + * */ name?: string; } export interface Params$Resource$Folders$Bigqueryexports$Get extends StandardParameters { /** - * Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` + * */ name?: string; } export interface Params$Resource$Folders$Bigqueryexports$List extends StandardParameters { /** - * The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Folders$Bigqueryexports$Patch extends StandardParameters { /** - * The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -9157,7 +3711,6 @@ export namespace securitycenter_v1 { } /** - * Validates the given Event Threat Detection custom module. * @example * ```js * // Before running the sample: @@ -9189,7 +3742,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.validateCustomModule( * { - * // Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. * parent: 'folders/my-folder/eventThreatDetectionSettings', * * // Request body metadata @@ -9320,7 +3872,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Eventthreatdetectionsettings$Validatecustommodule extends StandardParameters { /** - * Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; @@ -9337,7 +3889,6 @@ export namespace securitycenter_v1 { } /** - * Creates a resident Event Threat Detection custom module at the scope of the given Resource Manager parent, and also creates inherited custom modules for all descendants of the given parent. These modules are enabled by default. * @example * ```js * // Before running the sample: @@ -9369,7 +3920,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.customModules.create( * { - * // Required. The new custom module's parent. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. * parent: 'folders/my-folder/eventThreatDetectionSettings', * * // Request body metadata @@ -9515,7 +4065,6 @@ export namespace securitycenter_v1 { } /** - * Deletes the specified Event Threat Detection custom module and all of its descendants in the Resource Manager hierarchy. This method is only supported for resident custom modules. * @example * ```js * // Before running the sample: @@ -9547,7 +4096,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.customModules.delete( * { - * // Required. Name of the custom module to delete. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'folders/my-folder/eventThreatDetectionSettings/customModules/my-customModule', * }, * ); @@ -9652,7 +4200,6 @@ export namespace securitycenter_v1 { } /** - * Gets an Event Threat Detection custom module. * @example * ```js * // Before running the sample: @@ -9684,7 +4231,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.customModules.get( * { - * // Required. Name of the custom module to get. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'folders/my-folder/eventThreatDetectionSettings/customModules/my-customModule', * }, * ); @@ -9810,7 +4356,6 @@ export namespace securitycenter_v1 { } /** - * Lists all Event Threat Detection custom modules for the given Resource Manager parent. This includes resident modules defined at the scope of the parent along with modules inherited from ancestors. * @example * ```js * // Before running the sample: @@ -9842,11 +4387,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.customModules.list( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'folders/my-folder/eventThreatDetectionSettings', * }, * ); @@ -9967,7 +4511,6 @@ export namespace securitycenter_v1 { } /** - * Lists all resident Event Threat Detection custom modules under the given Resource Manager parent and its descendants. * @example * ```js * // Before running the sample: @@ -9999,11 +4542,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.customModules.listDescendant( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'folders/my-folder/eventThreatDetectionSettings', * }, * ); @@ -10123,7 +4665,6 @@ export namespace securitycenter_v1 { } /** - * Updates the Event Threat Detection custom module with the given name based on the given update mask. Updating the enablement state is supported for both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name or configuration of a module is supported for resident modules only. The type of a module cannot be changed. * @example * ```js * // Before running the sample: @@ -10155,9 +4696,8 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.customModules.patch( * { - * // Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'folders/my-folder/eventThreatDetectionSettings/customModules/my-customModule', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -10302,7 +4842,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Eventthreatdetectionsettings$Custommodules$Create extends StandardParameters { /** - * Required. The new custom module's parent. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; @@ -10313,51 +4853,51 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Eventthreatdetectionsettings$Custommodules$Delete extends StandardParameters { /** - * Required. Name of the custom module to delete. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Folders$Eventthreatdetectionsettings$Custommodules$Get extends StandardParameters { /** - * Required. Name of the custom module to get. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Folders$Eventthreatdetectionsettings$Custommodules$List extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } export interface Params$Resource$Folders$Eventthreatdetectionsettings$Custommodules$Listdescendant extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } export interface Params$Resource$Folders$Eventthreatdetectionsettings$Custommodules$Patch extends StandardParameters { /** - * Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -10374,7 +4914,6 @@ export namespace securitycenter_v1 { } /** - * Gets an effective Event Threat Detection custom module at the given level. * @example * ```js * // Before running the sample: @@ -10406,7 +4945,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.effectiveCustomModules.get( * { - * // Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * name: 'folders/my-folder/eventThreatDetectionSettings/effectiveCustomModules/my-effectiveCustomModule', * }, * ); @@ -10529,7 +5067,6 @@ export namespace securitycenter_v1 { } /** - * Lists all effective Event Threat Detection custom modules for the given parent. This includes resident modules defined at the scope of the parent along with modules inherited from its ancestors. * @example * ```js * // Before running the sample: @@ -10561,11 +5098,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.eventThreatDetectionSettings.effectiveCustomModules.list( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'folders/my-folder/eventThreatDetectionSettings', * }, * ); @@ -10688,21 +5224,21 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Eventthreatdetectionsettings$Effectivecustommodules$Get extends StandardParameters { /** - * Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Folders$Eventthreatdetectionsettings$Effectivecustommodules$List extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } @@ -10714,7 +5250,6 @@ export namespace securitycenter_v1 { } /** - * Kicks off an LRO to bulk mute findings for a parent based on a filter. The parent can be either an organization, folder or project. The findings matched by the filter will be muted after the LRO is done. * @example * ```js * // Before running the sample: @@ -10744,7 +5279,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.findings.bulkMute({ - * // Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. * parent: 'folders/my-folder', * * // Request body metadata @@ -10868,7 +5402,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Findings$Bulkmute extends StandardParameters { /** - * Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; @@ -10896,7 +5430,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing mute config. * @example * ```js * // Before running the sample: @@ -10926,7 +5459,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.locations.muteConfigs.delete({ - * // Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'folders/my-folder/locations/my-location/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -11029,7 +5561,6 @@ export namespace securitycenter_v1 { } /** - * Gets a mute config. * @example * ```js * // Before running the sample: @@ -11059,7 +5590,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.locations.muteConfigs.get({ - * // Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'folders/my-folder/locations/my-location/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -11182,7 +5712,6 @@ export namespace securitycenter_v1 { } /** - * Updates a mute config. * @example * ```js * // Before running the sample: @@ -11212,9 +5741,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.locations.muteConfigs.patch({ - * // This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` * name: 'folders/my-folder/locations/my-location/muteConfigs/my-muteConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -11355,23 +5883,23 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Locations$Muteconfigs$Delete extends StandardParameters { /** - * Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Folders$Locations$Muteconfigs$Get extends StandardParameters { /** - * Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Folders$Locations$Muteconfigs$Patch extends StandardParameters { /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -11388,7 +5916,6 @@ export namespace securitycenter_v1 { } /** - * Creates a mute config. * @example * ```js * // Before running the sample: @@ -11418,9 +5945,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.muteConfigs.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. * muteConfigId: 'placeholder-value', - * // Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'folders/my-folder', * * // Request body metadata @@ -11562,7 +6088,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing mute config. * @example * ```js * // Before running the sample: @@ -11592,7 +6117,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.muteConfigs.delete({ - * // Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'folders/my-folder/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -11695,7 +6219,6 @@ export namespace securitycenter_v1 { } /** - * Gets a mute config. * @example * ```js * // Before running the sample: @@ -11725,7 +6248,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.muteConfigs.get({ - * // Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'folders/my-folder/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -11848,7 +6370,6 @@ export namespace securitycenter_v1 { } /** - * Lists mute configs. * @example * ```js * // Before running the sample: @@ -11878,11 +6399,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.muteConfigs.list({ - * // The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * * parent: 'folders/my-folder', * }); * console.log(res.data); @@ -11993,7 +6513,6 @@ export namespace securitycenter_v1 { } /** - * Updates a mute config. * @example * ```js * // Before running the sample: @@ -12023,9 +6542,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.muteConfigs.patch({ - * // This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` * name: 'folders/my-folder/muteConfigs/my-muteConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -12166,11 +6684,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Muteconfigs$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. + * */ muteConfigId?: string; /** - * Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -12181,37 +6699,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Muteconfigs$Delete extends StandardParameters { /** - * Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Folders$Muteconfigs$Get extends StandardParameters { /** - * Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Folders$Muteconfigs$List extends StandardParameters { /** - * The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Folders$Muteconfigs$Patch extends StandardParameters { /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -12228,7 +6746,6 @@ export namespace securitycenter_v1 { } /** - * Creates a notification config. * @example * ```js * // Before running the sample: @@ -12258,9 +6775,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.notificationConfigs.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only. * configId: 'placeholder-value', - * // Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'folders/my-folder', * * // Request body metadata @@ -12384,7 +6900,6 @@ export namespace securitycenter_v1 { } /** - * Deletes a notification config. * @example * ```js * // Before running the sample: @@ -12414,7 +6929,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.notificationConfigs.delete({ - * // Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. * name: 'folders/my-folder/notificationConfigs/my-notificationConfig', * }); * console.log(res.data); @@ -12517,7 +7031,6 @@ export namespace securitycenter_v1 { } /** - * Gets a notification config. * @example * ```js * // Before running the sample: @@ -12547,7 +7060,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.notificationConfigs.get({ - * // Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. * name: 'folders/my-folder/notificationConfigs/my-notificationConfig', * }); * console.log(res.data); @@ -12656,7 +7168,6 @@ export namespace securitycenter_v1 { } /** - * Lists notification configs. * @example * ```js * // Before running the sample: @@ -12686,11 +7197,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.notificationConfigs.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. The name of the parent in which to list the notification configurations. Its format is "organizations/[organization_id]", "folders/[folder_id]", or "projects/[project_id]". + * * parent: 'folders/my-folder', * }); * console.log(res.data); @@ -12805,7 +7315,6 @@ export namespace securitycenter_v1 { } /** - * Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter * @example * ```js * // Before running the sample: @@ -12835,9 +7344,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.notificationConfigs.patch({ - * // The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". * name: 'folders/my-folder/notificationConfigs/my-notificationConfig', - * // The FieldMask to use when updating the notification config. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -12960,11 +7468,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Notificationconfigs$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only. + * */ configId?: string; /** - * Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -12975,37 +7483,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Notificationconfigs$Delete extends StandardParameters { /** - * Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. + * */ name?: string; } export interface Params$Resource$Folders$Notificationconfigs$Get extends StandardParameters { /** - * Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. + * */ name?: string; } export interface Params$Resource$Folders$Notificationconfigs$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. The name of the parent in which to list the notification configurations. Its format is "organizations/[organization_id]", "folders/[folder_id]", or "projects/[project_id]". + * */ parent?: string; } export interface Params$Resource$Folders$Notificationconfigs$Patch extends StandardParameters { /** - * The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". + * */ name?: string; /** - * The FieldMask to use when updating the notification config. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -13039,7 +7547,6 @@ export namespace securitycenter_v1 { } /** - * Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the given CRM parent, and also creates inherited SecurityHealthAnalyticsCustomModules for all CRM descendants of the given parent. These modules are enabled by default. * @example * ```js * // Before running the sample: @@ -13071,7 +7578,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.create( * { - * // Required. Resource name of the new custom module's parent. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` * parent: 'folders/my-folder/securityHealthAnalyticsSettings', * * // Request body metadata @@ -13213,7 +7719,6 @@ export namespace securitycenter_v1 { } /** - * Deletes the specified SecurityHealthAnalyticsCustomModule and all of its descendants in the CRM hierarchy. This method is only supported for resident custom modules. * @example * ```js * // Before running the sample: @@ -13245,7 +7750,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.delete( * { - * // Required. Name of the custom module to delete. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` * name: 'folders/my-folder/securityHealthAnalyticsSettings/customModules/my-customModule', * }, * ); @@ -13350,7 +7854,6 @@ export namespace securitycenter_v1 { } /** - * Retrieves a SecurityHealthAnalyticsCustomModule. * @example * ```js * // Before running the sample: @@ -13382,7 +7885,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.get( * { - * // Required. Name of the custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` * name: 'folders/my-folder/securityHealthAnalyticsSettings/customModules/my-customModule', * }, * ); @@ -13506,7 +8008,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all SecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors. * @example * ```js * // Before running the sample: @@ -13538,11 +8039,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.list( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'folders/my-folder/securityHealthAnalyticsSettings', * }, * ); @@ -13663,7 +8163,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all resident SecurityHealthAnalyticsCustomModules under the given CRM parent and all of the parent’s CRM descendants. * @example * ```js * // Before running the sample: @@ -13695,11 +8194,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.listDescendant( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'folders/my-folder/securityHealthAnalyticsSettings', * }, * ); @@ -13819,7 +8317,6 @@ export namespace securitycenter_v1 { } /** - * Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask. Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name and custom config of a module is supported on resident modules only. * @example * ```js * // Before running the sample: @@ -13851,9 +8348,8 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.patch( * { - * // Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. * name: 'folders/my-folder/securityHealthAnalyticsSettings/customModules/my-customModule', - * // The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -13992,7 +8488,6 @@ export namespace securitycenter_v1 { } /** - * Simulates a given SecurityHealthAnalyticsCustomModule and Resource. * @example * ```js * // Before running the sample: @@ -14024,7 +8519,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.customModules.simulate( * { - * // Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id\}` * parent: 'folders/my-folder/securityHealthAnalyticsSettings', * * // Request body metadata @@ -14155,7 +8649,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$Create extends StandardParameters { /** - * Required. Resource name of the new custom module's parent. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; @@ -14166,51 +8660,51 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$Delete extends StandardParameters { /** - * Required. Name of the custom module to delete. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$Get extends StandardParameters { /** - * Required. Name of the custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$Listdescendant extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$Patch extends StandardParameters { /** - * Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. + * */ name?: string; /** - * The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated. + * */ updateMask?: string; @@ -14221,7 +8715,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Custommodules$Simulate extends StandardParameters { /** - * Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id\}` + * */ parent?: string; @@ -14238,7 +8732,6 @@ export namespace securitycenter_v1 { } /** - * Retrieves an EffectiveSecurityHealthAnalyticsCustomModule. * @example * ```js * // Before running the sample: @@ -14270,7 +8763,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.effectiveCustomModules.get( * { - * // Required. Name of the effective custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}` * name: 'folders/my-folder/securityHealthAnalyticsSettings/effectiveCustomModules/my-effectiveCustomModule', * }, * ); @@ -14391,7 +8883,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors. * @example * ```js * // Before running the sample: @@ -14423,11 +8914,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.effectiveCustomModules.list( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list effective custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'folders/my-folder/securityHealthAnalyticsSettings', * }, * ); @@ -14550,21 +9040,21 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Securityhealthanalyticssettings$Effectivecustommodules$Get extends StandardParameters { /** - * Required. Name of the effective custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Folders$Securityhealthanalyticssettings$Effectivecustommodules$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list effective custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } @@ -14578,7 +9068,6 @@ export namespace securitycenter_v1 { } /** - * Lists all sources belonging to an organization. * @example * ```js * // Before running the sample: @@ -14608,11 +9097,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.sources.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'folders/my-folder', * }); * console.log(res.data); @@ -14723,15 +9211,15 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Sources$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; } @@ -14746,7 +9234,6 @@ export namespace securitycenter_v1 { } /** - * Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id\}/sources/-/findings, /v1/folders/{folder_id\}/sources/-/findings, /v1/projects/{project_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -14776,7 +9263,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.sources.findings.group({ - * // Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-, folders/{folder_id\}/sources/-`, or `projects/{project_id\}/sources/-` * parent: 'folders/my-folder/sources/my-source', * * // Request body metadata @@ -14902,7 +9388,6 @@ export namespace securitycenter_v1 { } /** - * Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -14932,21 +9417,20 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.sources.findings.list({ - * // When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. * compareDuration: 'placeholder-value', - * // A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:` + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-`, `folders/{folder_id\}/sources/-` or `projects/{projects_id\}/sources/-` + * * parent: 'folders/my-folder/sources/my-source', - * // Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -15059,7 +9543,6 @@ export namespace securitycenter_v1 { } /** - * Creates or updates a finding. The corresponding source must exist for a finding creation to succeed. * @example * ```js * // Before running the sample: @@ -15089,9 +9572,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.sources.findings.patch({ - * // The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". * name: 'folders/my-folder/sources/my-source/findings/my-finding', - * // The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -15338,7 +9820,6 @@ export namespace securitycenter_v1 { } /** - * Updates the mute state of a finding. * @example * ```js * // Before running the sample: @@ -15368,7 +9849,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.sources.findings.setMute({ - * // Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. * name: 'folders/my-folder/sources/my-source/findings/my-finding', * * // Request body metadata @@ -15551,7 +10031,6 @@ export namespace securitycenter_v1 { } /** - * Updates the state of a finding. * @example * ```js * // Before running the sample: @@ -15581,7 +10060,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.folders.sources.findings.setState({ - * // Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. * name: 'folders/my-folder/sources/my-source/findings/my-finding', * * // Request body metadata @@ -15765,7 +10243,6 @@ export namespace securitycenter_v1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -15796,11 +10273,10 @@ export namespace securitycenter_v1 { * // Do the magic * const res = await securitycenter.folders.sources.findings.updateSecurityMarks( * { - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'folders/my-folder/sources/my-source/findings/my-finding/securityMarks', - * // The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -15923,7 +10399,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Sources$Findings$Group extends StandardParameters { /** - * Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-, folders/{folder_id\}/sources/-`, or `projects/{project_id\}/sources/-` + * */ parent?: string; @@ -15934,45 +10410,45 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Sources$Findings$List extends StandardParameters { /** - * When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. + * */ compareDuration?: string; /** - * A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:` + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-`, `folders/{folder_id\}/sources/-` or `projects/{projects_id\}/sources/-` + * */ parent?: string; /** - * Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Folders$Sources$Findings$Patch extends StandardParameters { /** - * The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". + * */ name?: string; /** - * The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask. + * */ updateMask?: string; @@ -15983,7 +10459,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Sources$Findings$Setmute extends StandardParameters { /** - * Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. + * */ name?: string; @@ -15994,7 +10470,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Sources$Findings$Setstate extends StandardParameters { /** - * Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. + * */ name?: string; @@ -16005,15 +10481,15 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Folders$Sources$Findings$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * */ updateMask?: string; @@ -16030,7 +10506,6 @@ export namespace securitycenter_v1 { } /** - * Updates external system. This is for a given finding. * @example * ```js * // Before running the sample: @@ -16061,9 +10536,8 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.folders.sources.findings.externalSystems.patch({ - * // Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" * name: 'folders/my-folder/sources/my-source/findings/my-finding/externalSystems/my-externalSystem', - * // The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -16209,11 +10683,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Folders$Sources$Findings$Externalsystems$Patch extends StandardParameters { /** - * Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" + * */ name?: string; /** - * The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -16269,7 +10743,6 @@ export namespace securitycenter_v1 { } /** - * Gets the settings for an organization. * @example * ```js * // Before running the sample: @@ -16299,7 +10772,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.getOrganizationSettings({ - * // Required. Name of the organization to get organization settings for. Its format is `organizations/[organization_id]/organizationSettings`. * name: 'organizations/my-organization/organizationSettings', * }); * console.log(res.data); @@ -16410,7 +10882,6 @@ export namespace securitycenter_v1 { } /** - * Updates an organization's settings. * @example * ```js * // Before running the sample: @@ -16440,9 +10911,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.updateOrganizationSettings({ - * // The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/organizationSettings". * name: 'organizations/my-organization/organizationSettings', - * // The FieldMask to use when updating the settings resource. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -16565,17 +11035,17 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Getorganizationsettings extends StandardParameters { /** - * Required. Name of the organization to get organization settings for. Its format is `organizations/[organization_id]/organizationSettings`. + * */ name?: string; } export interface Params$Resource$Organizations$Updateorganizationsettings extends StandardParameters { /** - * The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/organizationSettings". + * */ name?: string; /** - * The FieldMask to use when updating the settings resource. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -16592,7 +11062,6 @@ export namespace securitycenter_v1 { } /** - * Filters an organization's assets and groups them by their specified properties. * @example * ```js * // Before running the sample: @@ -16622,7 +11091,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.assets.group({ - * // Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. * parent: 'organizations/my-organization', * * // Request body metadata @@ -16746,7 +11214,6 @@ export namespace securitycenter_v1 { } /** - * Lists an organization's assets. * @example * ```js * // Before running the sample: @@ -16776,21 +11243,20 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.assets.list({ - * // When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. * compareDuration: 'placeholder-value', - * // A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'organizations/my-organization', - * // Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -16901,7 +11367,6 @@ export namespace securitycenter_v1 { } /** - * Runs asset discovery. The discovery is tracked with a long-running operation. This API can only be called with limited frequency for an organization. If it is called too frequently the caller will receive a TOO_MANY_REQUESTS error. * @example * ```js * // Before running the sample: @@ -16931,7 +11396,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.assets.runDiscovery({ - * // Required. Name of the organization to run asset discovery for. Its format is `organizations/[organization_id]`. * parent: 'organizations/my-organization', * * // Request body metadata @@ -17049,7 +11513,6 @@ export namespace securitycenter_v1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -17079,11 +11542,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.assets.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'organizations/my-organization/assets/my-asset/securityMarks', - * // The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -17204,7 +11666,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Assets$Group extends StandardParameters { /** - * Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -17215,41 +11677,41 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Assets$List extends StandardParameters { /** - * When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. + * */ compareDuration?: string; /** - * A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; /** - * Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Organizations$Assets$Rundiscovery extends StandardParameters { /** - * Required. Name of the organization to run asset discovery for. Its format is `organizations/[organization_id]`. + * */ parent?: string; @@ -17260,15 +11722,15 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Assets$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * */ updateMask?: string; @@ -17285,7 +11747,6 @@ export namespace securitycenter_v1 { } /** - * Lists the attack paths for a set of simulation results or valued resources and filter. * @example * ```js * // Before running the sample: @@ -17315,13 +11776,12 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.attackPaths.list({ - * // The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = * filter: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -17434,19 +11894,19 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Attackpaths$List extends StandardParameters { /** - * The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = + * */ filter?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * */ parent?: string; } @@ -17458,7 +11918,6 @@ export namespace securitycenter_v1 { } /** - * Creates a BigQuery export. * @example * ```js * // Before running the sample: @@ -17488,9 +11947,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.bigQueryExports.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. * bigQueryExportId: 'placeholder-value', - * // Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'organizations/my-organization', * * // Request body metadata @@ -17630,7 +12088,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing BigQuery export. * @example * ```js * // Before running the sample: @@ -17660,7 +12117,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.bigQueryExports.delete({ - * // Required. The name of the BigQuery export to delete. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` * name: 'organizations/my-organization/bigQueryExports/my-bigQueryExport', * }); * console.log(res.data); @@ -17763,7 +12219,6 @@ export namespace securitycenter_v1 { } /** - * Gets a BigQuery export. * @example * ```js * // Before running the sample: @@ -17793,7 +12248,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.bigQueryExports.get({ - * // Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` * name: 'organizations/my-organization/bigQueryExports/my-bigQueryExport', * }); * console.log(res.data); @@ -17915,7 +12369,6 @@ export namespace securitycenter_v1 { } /** - * Lists BigQuery exports. Note that when requesting BigQuery exports at a given level all exports under that level are also returned e.g. if requesting BigQuery exports under a folder, then all BigQuery exports immediately under the folder plus the ones created under the projects within the folder are returned. * @example * ```js * // Before running the sample: @@ -17945,11 +12398,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.bigQueryExports.list({ - * // The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -18062,7 +12514,6 @@ export namespace securitycenter_v1 { } /** - * Updates a BigQuery export. * @example * ```js * // Before running the sample: @@ -18092,9 +12543,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.bigQueryExports.patch({ - * // The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. * name: 'organizations/my-organization/bigQueryExports/my-bigQueryExport', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -18233,11 +12683,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Bigqueryexports$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. + * */ bigQueryExportId?: string; /** - * Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -18248,37 +12698,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Bigqueryexports$Delete extends StandardParameters { /** - * Required. The name of the BigQuery export to delete. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` + * */ name?: string; } export interface Params$Resource$Organizations$Bigqueryexports$Get extends StandardParameters { /** - * Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` + * */ name?: string; } export interface Params$Resource$Organizations$Bigqueryexports$List extends StandardParameters { /** - * The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Organizations$Bigqueryexports$Patch extends StandardParameters { /** - * The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -18305,7 +12755,6 @@ export namespace securitycenter_v1 { } /** - * Validates the given Event Threat Detection custom module. * @example * ```js * // Before running the sample: @@ -18337,7 +12786,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.validateCustomModule( * { - * // Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. * parent: 'organizations/my-organization/eventThreatDetectionSettings', * * // Request body metadata @@ -18468,7 +12916,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Validatecustommodule extends StandardParameters { /** - * Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; @@ -18485,7 +12933,6 @@ export namespace securitycenter_v1 { } /** - * Creates a resident Event Threat Detection custom module at the scope of the given Resource Manager parent, and also creates inherited custom modules for all descendants of the given parent. These modules are enabled by default. * @example * ```js * // Before running the sample: @@ -18517,7 +12964,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.customModules.create( * { - * // Required. The new custom module's parent. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. * parent: 'organizations/my-organization/eventThreatDetectionSettings', * * // Request body metadata @@ -18663,7 +13109,6 @@ export namespace securitycenter_v1 { } /** - * Deletes the specified Event Threat Detection custom module and all of its descendants in the Resource Manager hierarchy. This method is only supported for resident custom modules. * @example * ```js * // Before running the sample: @@ -18695,7 +13140,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.customModules.delete( * { - * // Required. Name of the custom module to delete. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'organizations/my-organization/eventThreatDetectionSettings/customModules/my-customModule', * }, * ); @@ -18800,7 +13244,6 @@ export namespace securitycenter_v1 { } /** - * Gets an Event Threat Detection custom module. * @example * ```js * // Before running the sample: @@ -18832,7 +13275,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.customModules.get( * { - * // Required. Name of the custom module to get. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'organizations/my-organization/eventThreatDetectionSettings/customModules/my-customModule', * }, * ); @@ -18958,7 +13400,6 @@ export namespace securitycenter_v1 { } /** - * Lists all Event Threat Detection custom modules for the given Resource Manager parent. This includes resident modules defined at the scope of the parent along with modules inherited from ancestors. * @example * ```js * // Before running the sample: @@ -18990,11 +13431,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.customModules.list( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'organizations/my-organization/eventThreatDetectionSettings', * }, * ); @@ -19115,7 +13555,6 @@ export namespace securitycenter_v1 { } /** - * Lists all resident Event Threat Detection custom modules under the given Resource Manager parent and its descendants. * @example * ```js * // Before running the sample: @@ -19147,11 +13586,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.customModules.listDescendant( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'organizations/my-organization/eventThreatDetectionSettings', * }, * ); @@ -19271,7 +13709,6 @@ export namespace securitycenter_v1 { } /** - * Updates the Event Threat Detection custom module with the given name based on the given update mask. Updating the enablement state is supported for both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name or configuration of a module is supported for resident modules only. The type of a module cannot be changed. * @example * ```js * // Before running the sample: @@ -19303,9 +13740,8 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.customModules.patch( * { - * // Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'organizations/my-organization/eventThreatDetectionSettings/customModules/my-customModule', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -19450,7 +13886,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Custommodules$Create extends StandardParameters { /** - * Required. The new custom module's parent. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; @@ -19461,51 +13897,51 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Custommodules$Delete extends StandardParameters { /** - * Required. Name of the custom module to delete. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Custommodules$Get extends StandardParameters { /** - * Required. Name of the custom module to get. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Custommodules$List extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Custommodules$Listdescendant extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Custommodules$Patch extends StandardParameters { /** - * Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -19522,7 +13958,6 @@ export namespace securitycenter_v1 { } /** - * Gets an effective Event Threat Detection custom module at the given level. * @example * ```js * // Before running the sample: @@ -19554,7 +13989,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.effectiveCustomModules.get( * { - * // Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * name: 'organizations/my-organization/eventThreatDetectionSettings/effectiveCustomModules/my-effectiveCustomModule', * }, * ); @@ -19677,7 +14111,6 @@ export namespace securitycenter_v1 { } /** - * Lists all effective Event Threat Detection custom modules for the given parent. This includes resident modules defined at the scope of the parent along with modules inherited from its ancestors. * @example * ```js * // Before running the sample: @@ -19709,11 +14142,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.eventThreatDetectionSettings.effectiveCustomModules.list( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'organizations/my-organization/eventThreatDetectionSettings', * }, * ); @@ -19836,21 +14268,21 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Effectivecustommodules$Get extends StandardParameters { /** - * Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Effectivecustommodules$List extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } @@ -19862,7 +14294,6 @@ export namespace securitycenter_v1 { } /** - * Kicks off an LRO to bulk mute findings for a parent based on a filter. The parent can be either an organization, folder or project. The findings matched by the filter will be muted after the LRO is done. * @example * ```js * // Before running the sample: @@ -19892,7 +14323,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.findings.bulkMute({ - * // Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. * parent: 'organizations/my-organization', * * // Request body metadata @@ -20016,7 +14446,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Findings$Bulkmute extends StandardParameters { /** - * Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; @@ -20044,7 +14474,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing mute config. * @example * ```js * // Before running the sample: @@ -20074,7 +14503,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.locations.muteConfigs.delete({ - * // Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'organizations/my-organization/locations/my-location/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -20178,7 +14606,6 @@ export namespace securitycenter_v1 { } /** - * Gets a mute config. * @example * ```js * // Before running the sample: @@ -20208,7 +14635,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.locations.muteConfigs.get({ - * // Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'organizations/my-organization/locations/my-location/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -20331,7 +14757,6 @@ export namespace securitycenter_v1 { } /** - * Updates a mute config. * @example * ```js * // Before running the sample: @@ -20361,9 +14786,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.locations.muteConfigs.patch({ - * // This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` * name: 'organizations/my-organization/locations/my-location/muteConfigs/my-muteConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -20505,23 +14929,23 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Locations$Muteconfigs$Delete extends StandardParameters { /** - * Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Locations$Muteconfigs$Get extends StandardParameters { /** - * Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Locations$Muteconfigs$Patch extends StandardParameters { /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -20538,7 +14962,6 @@ export namespace securitycenter_v1 { } /** - * Creates a mute config. * @example * ```js * // Before running the sample: @@ -20568,9 +14991,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.muteConfigs.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. * muteConfigId: 'placeholder-value', - * // Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'organizations/my-organization', * * // Request body metadata @@ -20712,7 +15134,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing mute config. * @example * ```js * // Before running the sample: @@ -20742,7 +15163,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.muteConfigs.delete({ - * // Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'organizations/my-organization/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -20845,7 +15265,6 @@ export namespace securitycenter_v1 { } /** - * Gets a mute config. * @example * ```js * // Before running the sample: @@ -20875,7 +15294,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.muteConfigs.get({ - * // Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'organizations/my-organization/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -20998,7 +15416,6 @@ export namespace securitycenter_v1 { } /** - * Lists mute configs. * @example * ```js * // Before running the sample: @@ -21028,11 +15445,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.muteConfigs.list({ - * // The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -21143,7 +15559,6 @@ export namespace securitycenter_v1 { } /** - * Updates a mute config. * @example * ```js * // Before running the sample: @@ -21173,9 +15588,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.muteConfigs.patch({ - * // This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` * name: 'organizations/my-organization/muteConfigs/my-muteConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -21316,11 +15730,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Muteconfigs$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. + * */ muteConfigId?: string; /** - * Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -21331,37 +15745,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Muteconfigs$Delete extends StandardParameters { /** - * Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Muteconfigs$Get extends StandardParameters { /** - * Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Muteconfigs$List extends StandardParameters { /** - * The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Organizations$Muteconfigs$Patch extends StandardParameters { /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -21378,7 +15792,6 @@ export namespace securitycenter_v1 { } /** - * Creates a notification config. * @example * ```js * // Before running the sample: @@ -21408,9 +15821,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.notificationConfigs.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only. * configId: 'placeholder-value', - * // Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'organizations/my-organization', * * // Request body metadata @@ -21534,7 +15946,6 @@ export namespace securitycenter_v1 { } /** - * Deletes a notification config. * @example * ```js * // Before running the sample: @@ -21564,7 +15975,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.notificationConfigs.delete({ - * // Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. * name: 'organizations/my-organization/notificationConfigs/my-notificationConfig', * }); * console.log(res.data); @@ -21667,7 +16077,6 @@ export namespace securitycenter_v1 { } /** - * Gets a notification config. * @example * ```js * // Before running the sample: @@ -21697,7 +16106,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.notificationConfigs.get({ - * // Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. * name: 'organizations/my-organization/notificationConfigs/my-notificationConfig', * }); * console.log(res.data); @@ -21806,7 +16214,6 @@ export namespace securitycenter_v1 { } /** - * Lists notification configs. * @example * ```js * // Before running the sample: @@ -21836,11 +16243,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.notificationConfigs.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. The name of the parent in which to list the notification configurations. Its format is "organizations/[organization_id]", "folders/[folder_id]", or "projects/[project_id]". + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -21955,7 +16361,6 @@ export namespace securitycenter_v1 { } /** - * Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter * @example * ```js * // Before running the sample: @@ -21985,9 +16390,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.notificationConfigs.patch({ - * // The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". * name: 'organizations/my-organization/notificationConfigs/my-notificationConfig', - * // The FieldMask to use when updating the notification config. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -22110,11 +16514,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Notificationconfigs$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only. + * */ configId?: string; /** - * Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -22125,37 +16529,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Notificationconfigs$Delete extends StandardParameters { /** - * Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. + * */ name?: string; } export interface Params$Resource$Organizations$Notificationconfigs$Get extends StandardParameters { /** - * Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. + * */ name?: string; } export interface Params$Resource$Organizations$Notificationconfigs$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. The name of the parent in which to list the notification configurations. Its format is "organizations/[organization_id]", "folders/[folder_id]", or "projects/[project_id]". + * */ parent?: string; } export interface Params$Resource$Organizations$Notificationconfigs$Patch extends StandardParameters { /** - * The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". + * */ name?: string; /** - * The FieldMask to use when updating the notification config. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -22172,7 +16576,6 @@ export namespace securitycenter_v1 { } /** - * 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: @@ -22202,7 +16605,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.operations.cancel({ - * // The name of the operation resource to be cancelled. * name: 'organizations/my-organization/operations/my-operation', * }); * console.log(res.data); @@ -22305,7 +16707,6 @@ export namespace securitycenter_v1 { } /** - * 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: @@ -22335,7 +16736,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.operations.delete({ - * // The name of the operation resource to be deleted. * name: 'organizations/my-organization/operations/my-operation', * }); * console.log(res.data); @@ -22438,7 +16838,6 @@ export namespace securitycenter_v1 { } /** - * 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: @@ -22468,7 +16867,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.operations.get({ - * // The name of the operation resource. * name: 'organizations/my-organization/operations/my-operation', * }); * console.log(res.data); @@ -22577,7 +16975,6 @@ export namespace securitycenter_v1 { } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -22607,15 +17004,14 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.operations.list({ - * // The standard list filter. * filter: 'placeholder-value', - * // The name of the operation's parent resource. + * * name: 'organizations/my-organization/operations', - * // The standard list page size. + * * pageSize: 'placeholder-value', - * // The standard list page token. + * * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); @@ -22726,41 +17122,41 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Operations$Cancel extends StandardParameters { /** - * The name of the operation resource to be cancelled. + * */ name?: string; } export interface Params$Resource$Organizations$Operations$Delete extends StandardParameters { /** - * The name of the operation resource to be deleted. + * */ name?: string; } export interface Params$Resource$Organizations$Operations$Get extends StandardParameters { /** - * The name of the operation resource. + * */ name?: string; } export interface Params$Resource$Organizations$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; /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * */ returnPartialSuccess?: boolean; } @@ -22772,7 +17168,6 @@ export namespace securitycenter_v1 { } /** - * Creates a ResourceValueConfig for an organization. Maps user's tags to difference resource values for use by the attack path simulation. * @example * ```js * // Before running the sample: @@ -22803,7 +17198,6 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.organizations.resourceValueConfigs.batchCreate({ - * // Required. Resource name of the new ResourceValueConfig's parent. The parent field in the CreateResourceValueConfigRequest messages must either be empty or match this field. * parent: 'organizations/my-organization', * * // Request body metadata @@ -22929,7 +17323,6 @@ export namespace securitycenter_v1 { } /** - * Deletes a ResourceValueConfig. * @example * ```js * // Before running the sample: @@ -22959,7 +17352,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.resourceValueConfigs.delete({ - * // Required. Name of the ResourceValueConfig to delete * name: 'organizations/my-organization/resourceValueConfigs/my-resourceValueConfig', * }); * console.log(res.data); @@ -23063,7 +17455,6 @@ export namespace securitycenter_v1 { } /** - * Gets a ResourceValueConfig. * @example * ```js * // Before running the sample: @@ -23093,7 +17484,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.resourceValueConfigs.get({ - * // Required. Name of the resource value config to retrieve. Its format is `organizations/{organization\}/resourceValueConfigs/{config_id\}`. * name: 'organizations/my-organization/resourceValueConfigs/my-resourceValueConfig', * }); * console.log(res.data); @@ -23218,7 +17608,6 @@ export namespace securitycenter_v1 { } /** - * Lists all ResourceValueConfigs. * @example * ```js * // Before running the sample: @@ -23248,11 +17637,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.resourceValueConfigs.list({ - * // The number of results to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListResourceValueConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListResourceValueConfigs` must match the call that provided the page token. page_size can be specified, and the new page_size will be used. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of resource value configs. Its format is `organizations/[organization_id]` + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -23371,7 +17759,6 @@ export namespace securitycenter_v1 { } /** - * Updates an existing ResourceValueConfigs with new rules. * @example * ```js * // Before running the sample: @@ -23401,9 +17788,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.resourceValueConfigs.patch({ - * // Name for the resource value configuration * name: 'organizations/my-organization/resourceValueConfigs/my-resourceValueConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -23548,7 +17934,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Resourcevalueconfigs$Batchcreate extends StandardParameters { /** - * Required. Resource name of the new ResourceValueConfig's parent. The parent field in the CreateResourceValueConfigRequest messages must either be empty or match this field. + * */ parent?: string; @@ -23559,37 +17945,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Resourcevalueconfigs$Delete extends StandardParameters { /** - * Required. Name of the ResourceValueConfig to delete + * */ name?: string; } export interface Params$Resource$Organizations$Resourcevalueconfigs$Get extends StandardParameters { /** - * Required. Name of the resource value config to retrieve. Its format is `organizations/{organization\}/resourceValueConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Organizations$Resourcevalueconfigs$List extends StandardParameters { /** - * The number of results to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListResourceValueConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListResourceValueConfigs` must match the call that provided the page token. page_size can be specified, and the new page_size will be used. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of resource value configs. Its format is `organizations/[organization_id]` + * */ parent?: string; } export interface Params$Resource$Organizations$Resourcevalueconfigs$Patch extends StandardParameters { /** - * Name for the resource value configuration + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -23623,7 +18009,6 @@ export namespace securitycenter_v1 { } /** - * Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the given CRM parent, and also creates inherited SecurityHealthAnalyticsCustomModules for all CRM descendants of the given parent. These modules are enabled by default. * @example * ```js * // Before running the sample: @@ -23655,7 +18040,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.create( * { - * // Required. Resource name of the new custom module's parent. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` * parent: 'organizations/my-organization/securityHealthAnalyticsSettings', * * // Request body metadata @@ -23797,7 +18181,6 @@ export namespace securitycenter_v1 { } /** - * Deletes the specified SecurityHealthAnalyticsCustomModule and all of its descendants in the CRM hierarchy. This method is only supported for resident custom modules. * @example * ```js * // Before running the sample: @@ -23829,7 +18212,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.delete( * { - * // Required. Name of the custom module to delete. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` * name: 'organizations/my-organization/securityHealthAnalyticsSettings/customModules/my-customModule', * }, * ); @@ -23934,7 +18316,6 @@ export namespace securitycenter_v1 { } /** - * Retrieves a SecurityHealthAnalyticsCustomModule. * @example * ```js * // Before running the sample: @@ -23966,7 +18347,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.get( * { - * // Required. Name of the custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` * name: 'organizations/my-organization/securityHealthAnalyticsSettings/customModules/my-customModule', * }, * ); @@ -24090,7 +18470,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all SecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors. * @example * ```js * // Before running the sample: @@ -24122,11 +18501,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.list( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'organizations/my-organization/securityHealthAnalyticsSettings', * }, * ); @@ -24247,7 +18625,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all resident SecurityHealthAnalyticsCustomModules under the given CRM parent and all of the parent’s CRM descendants. * @example * ```js * // Before running the sample: @@ -24279,11 +18656,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.listDescendant( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'organizations/my-organization/securityHealthAnalyticsSettings', * }, * ); @@ -24403,7 +18779,6 @@ export namespace securitycenter_v1 { } /** - * Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask. Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name and custom config of a module is supported on resident modules only. * @example * ```js * // Before running the sample: @@ -24435,9 +18810,8 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.patch( * { - * // Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. * name: 'organizations/my-organization/securityHealthAnalyticsSettings/customModules/my-customModule', - * // The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -24576,7 +18950,6 @@ export namespace securitycenter_v1 { } /** - * Simulates a given SecurityHealthAnalyticsCustomModule and Resource. * @example * ```js * // Before running the sample: @@ -24608,7 +18981,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.customModules.simulate( * { - * // Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id\}` * parent: 'organizations/my-organization/securityHealthAnalyticsSettings', * * // Request body metadata @@ -24739,7 +19111,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$Create extends StandardParameters { /** - * Required. Resource name of the new custom module's parent. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; @@ -24750,51 +19122,51 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$Delete extends StandardParameters { /** - * Required. Name of the custom module to delete. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$Get extends StandardParameters { /** - * Required. Name of the custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$Listdescendant extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$Patch extends StandardParameters { /** - * Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. + * */ name?: string; /** - * The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated. + * */ updateMask?: string; @@ -24805,7 +19177,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Custommodules$Simulate extends StandardParameters { /** - * Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id\}` + * */ parent?: string; @@ -24822,7 +19194,6 @@ export namespace securitycenter_v1 { } /** - * Retrieves an EffectiveSecurityHealthAnalyticsCustomModule. * @example * ```js * // Before running the sample: @@ -24854,7 +19225,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.effectiveCustomModules.get( * { - * // Required. Name of the effective custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}` * name: 'organizations/my-organization/securityHealthAnalyticsSettings/effectiveCustomModules/my-effectiveCustomModule', * }, * ); @@ -24975,7 +19345,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors. * @example * ```js * // Before running the sample: @@ -25007,11 +19376,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.effectiveCustomModules.list( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list effective custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'organizations/my-organization/securityHealthAnalyticsSettings', * }, * ); @@ -25134,21 +19502,21 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Effectivecustommodules$Get extends StandardParameters { /** - * Required. Name of the effective custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Effectivecustommodules$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list effective custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } @@ -25172,7 +19540,6 @@ export namespace securitycenter_v1 { } /** - * Get the simulation by name or the latest simulation for the given organization. * @example * ```js * // Before running the sample: @@ -25202,7 +19569,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.simulations.get({ - * // Required. The organization name or simulation name of this simulation Valid format: `organizations/{organization\}/simulations/latest` `organizations/{organization\}/simulations/{simulation\}` * name: 'organizations/my-organization/simulations/my-simulation', * }); * console.log(res.data); @@ -25312,7 +19678,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Simulations$Get extends StandardParameters { /** - * Required. The organization name or simulation name of this simulation Valid format: `organizations/{organization\}/simulations/latest` `organizations/{organization\}/simulations/{simulation\}` + * */ name?: string; } @@ -25341,7 +19707,6 @@ export namespace securitycenter_v1 { } /** - * Lists the attack paths for a set of simulation results or valued resources and filter. * @example * ```js * // Before running the sample: @@ -25373,13 +19738,12 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.simulations.attackExposureResults.attackPaths.list( * { - * // The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = * filter: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * * parent: * 'organizations/my-organization/simulations/my-simulation/attackExposureResults/my-attackExposureResult', * }, @@ -25495,19 +19859,19 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Simulations$Attackexposureresults$Attackpaths$List extends StandardParameters { /** - * The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = + * */ filter?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * */ parent?: string; } @@ -25519,7 +19883,6 @@ export namespace securitycenter_v1 { } /** - * Lists the valued resources for a set of simulation results and filter. * @example * ```js * // Before running the sample: @@ -25551,15 +19914,14 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.simulations.attackExposureResults.valuedResources.list( * { - * // The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports = * filter: 'placeholder-value', - * // Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`. + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list valued resources. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` + * * parent: * 'organizations/my-organization/simulations/my-simulation/attackExposureResults/my-attackExposureResult', * }, @@ -25678,23 +20040,23 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Simulations$Attackexposureresults$Valuedresources$List extends StandardParameters { /** - * The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports = + * */ filter?: string; /** - * Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`. + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list valued resources. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` + * */ parent?: string; } @@ -25706,7 +20068,6 @@ export namespace securitycenter_v1 { } /** - * Lists the attack paths for a set of simulation results or valued resources and filter. * @example * ```js * // Before running the sample: @@ -25736,13 +20097,12 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.simulations.attackPaths.list({ - * // The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = * filter: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * * parent: 'organizations/my-organization/simulations/my-simulation', * }); * console.log(res.data); @@ -25856,19 +20216,19 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Simulations$Attackpaths$List extends StandardParameters { /** - * The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = + * */ filter?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * */ parent?: string; } @@ -25885,7 +20245,6 @@ export namespace securitycenter_v1 { } /** - * Get the valued resource by name * @example * ```js * // Before running the sample: @@ -25916,7 +20275,6 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.organizations.simulations.valuedResources.get({ - * // Required. The name of this valued resource Valid format: `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` * name: 'organizations/my-organization/simulations/my-simulation/valuedResources/my-valuedResource', * }); * console.log(res.data); @@ -26028,7 +20386,6 @@ export namespace securitycenter_v1 { } /** - * Lists the valued resources for a set of simulation results and filter. * @example * ```js * // Before running the sample: @@ -26059,15 +20416,14 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.organizations.simulations.valuedResources.list({ - * // The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports = * filter: 'placeholder-value', - * // Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`. + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list valued resources. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` + * * parent: 'organizations/my-organization/simulations/my-simulation', * }); * console.log(res.data); @@ -26184,29 +20540,29 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Simulations$Valuedresources$Get extends StandardParameters { /** - * Required. The name of this valued resource Valid format: `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * */ name?: string; } export interface Params$Resource$Organizations$Simulations$Valuedresources$List extends StandardParameters { /** - * The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports = + * */ filter?: string; /** - * Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`. + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list valued resources. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` + * */ parent?: string; } @@ -26218,7 +20574,6 @@ export namespace securitycenter_v1 { } /** - * Lists the attack paths for a set of simulation results or valued resources and filter. * @example * ```js * // Before running the sample: @@ -26250,13 +20605,12 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.organizations.simulations.valuedResources.attackPaths.list( * { - * // The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = * filter: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * * parent: * 'organizations/my-organization/simulations/my-simulation/valuedResources/my-valuedResource', * }, @@ -26372,19 +20726,19 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Simulations$Valuedresources$Attackpaths$List extends StandardParameters { /** - * The filter expression that filters the attack path in the response. Supported fields: * `valued_resources` supports = + * */ filter?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAttackPathsResponse`; indicates that this is a continuation of a prior `ListAttackPaths` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list attack paths. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` `organizations/{organization\}/simulations/{simulation\}/valuedResources/{valued_resource\}` + * */ parent?: string; } @@ -26398,7 +20752,6 @@ export namespace securitycenter_v1 { } /** - * Creates a source. * @example * ```js * // Before running the sample: @@ -26428,7 +20781,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.create({ - * // Required. Resource name of the new source's parent. Its format should be `organizations/[organization_id]`. * parent: 'organizations/my-organization', * * // Request body metadata @@ -26550,7 +20902,6 @@ export namespace securitycenter_v1 { } /** - * Gets a source. * @example * ```js * // Before running the sample: @@ -26580,7 +20931,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.get({ - * // Required. Relative resource name of the source. Its format is `organizations/[organization_id]/source/[source_id]`. * name: 'organizations/my-organization/sources/my-source', * }); * console.log(res.data); @@ -26688,7 +21038,6 @@ export namespace securitycenter_v1 { } /** - * Gets the access control policy on the specified Source. * @example * ```js * // Before running the sample: @@ -26718,7 +21067,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.getIamPolicy({ - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -26837,7 +21185,6 @@ export namespace securitycenter_v1 { } /** - * Lists all sources belonging to an organization. * @example * ```js * // Before running the sample: @@ -26867,11 +21214,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -26980,7 +21326,6 @@ export namespace securitycenter_v1 { } /** - * Updates a source. * @example * ```js * // Before running the sample: @@ -27010,9 +21355,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.patch({ - * // The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}" * name: 'organizations/my-organization/sources/my-source', - * // The FieldMask to use when updating the source resource. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -27131,7 +21475,6 @@ export namespace securitycenter_v1 { } /** - * Sets the access control policy on the specified Source. * @example * ```js * // Before running the sample: @@ -27161,7 +21504,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -27281,7 +21623,6 @@ export namespace securitycenter_v1 { } /** - * Returns the permissions that a caller has on the specified source. * @example * ```js * // Before running the sample: @@ -27311,7 +21652,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -27433,7 +21773,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Sources$Create extends StandardParameters { /** - * Required. Resource name of the new source's parent. Its format should be `organizations/[organization_id]`. + * */ parent?: string; @@ -27444,13 +21784,13 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Get extends StandardParameters { /** - * Required. Relative resource name of the source. Its format is `organizations/[organization_id]/source/[source_id]`. + * */ name?: string; } export interface Params$Resource$Organizations$Sources$Getiampolicy extends StandardParameters { /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * */ resource?: string; @@ -27461,25 +21801,25 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Organizations$Sources$Patch extends StandardParameters { /** - * The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}" + * */ name?: string; /** - * The FieldMask to use when updating the source resource. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -27490,7 +21830,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Setiampolicy extends StandardParameters { /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * */ resource?: string; @@ -27501,7 +21841,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Testiampermissions extends StandardParameters { /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * */ resource?: string; @@ -27523,7 +21863,6 @@ export namespace securitycenter_v1 { } /** - * Creates a finding. The corresponding source must exist for finding creation to succeed. * @example * ```js * // Before running the sample: @@ -27553,9 +21892,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length. * findingId: 'placeholder-value', - * // Required. Resource name of the new finding's parent. Its format should be `organizations/[organization_id]/sources/[source_id]`. + * * parent: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -27805,7 +22143,6 @@ export namespace securitycenter_v1 { } /** - * Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id\}/sources/-/findings, /v1/folders/{folder_id\}/sources/-/findings, /v1/projects/{project_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -27835,7 +22172,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.group({ - * // Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-, folders/{folder_id\}/sources/-`, or `projects/{project_id\}/sources/-` * parent: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -27961,7 +22297,6 @@ export namespace securitycenter_v1 { } /** - * Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -27991,21 +22326,20 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.list({ - * // When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. * compareDuration: 'placeholder-value', - * // A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:` + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-`, `folders/{folder_id\}/sources/-` or `projects/{projects_id\}/sources/-` + * * parent: 'organizations/my-organization/sources/my-source', - * // Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -28118,7 +22452,6 @@ export namespace securitycenter_v1 { } /** - * Creates or updates a finding. The corresponding source must exist for a finding creation to succeed. * @example * ```js * // Before running the sample: @@ -28148,9 +22481,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.patch({ - * // The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". * name: 'organizations/my-organization/sources/my-source/findings/my-finding', - * // The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -28397,7 +22729,6 @@ export namespace securitycenter_v1 { } /** - * Updates the mute state of a finding. * @example * ```js * // Before running the sample: @@ -28427,7 +22758,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.setMute({ - * // Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. * name: 'organizations/my-organization/sources/my-source/findings/my-finding', * * // Request body metadata @@ -28610,7 +22940,6 @@ export namespace securitycenter_v1 { } /** - * Updates the state of a finding. * @example * ```js * // Before running the sample: @@ -28640,7 +22969,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.setState({ - * // Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. * name: 'organizations/my-organization/sources/my-source/findings/my-finding', * * // Request body metadata @@ -28824,7 +23152,6 @@ export namespace securitycenter_v1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -28855,11 +23182,10 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.organizations.sources.findings.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'organizations/my-organization/sources/my-source/findings/my-finding/securityMarks', - * // The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -28981,11 +23307,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Sources$Findings$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length. + * */ findingId?: string; /** - * Required. Resource name of the new finding's parent. Its format should be `organizations/[organization_id]/sources/[source_id]`. + * */ parent?: string; @@ -28996,7 +23322,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Findings$Group extends StandardParameters { /** - * Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-, folders/{folder_id\}/sources/-`, or `projects/{project_id\}/sources/-` + * */ parent?: string; @@ -29007,45 +23333,45 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Findings$List extends StandardParameters { /** - * When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. + * */ compareDuration?: string; /** - * A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:` + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-`, `folders/{folder_id\}/sources/-` or `projects/{projects_id\}/sources/-` + * */ parent?: string; /** - * Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Organizations$Sources$Findings$Patch extends StandardParameters { /** - * The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". + * */ name?: string; /** - * The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask. + * */ updateMask?: string; @@ -29056,7 +23382,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Findings$Setmute extends StandardParameters { /** - * Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. + * */ name?: string; @@ -29067,7 +23393,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Findings$Setstate extends StandardParameters { /** - * Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. + * */ name?: string; @@ -29078,15 +23404,15 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Organizations$Sources$Findings$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * */ updateMask?: string; @@ -29103,7 +23429,6 @@ export namespace securitycenter_v1 { } /** - * Updates external system. This is for a given finding. * @example * ```js * // Before running the sample: @@ -29134,9 +23459,8 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.organizations.sources.findings.externalSystems.patch({ - * // Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" * name: 'organizations/my-organization/sources/my-source/findings/my-finding/externalSystems/my-externalSystem', - * // The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -29282,11 +23606,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Sources$Findings$Externalsystems$Patch extends StandardParameters { /** - * Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" + * */ name?: string; /** - * The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -29303,7 +23627,6 @@ export namespace securitycenter_v1 { } /** - * Lists the valued resources for a set of simulation results and filter. * @example * ```js * // Before running the sample: @@ -29333,15 +23656,14 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.organizations.valuedResources.list({ - * // The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports = * filter: 'placeholder-value', - * // Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`. + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list valued resources. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -29457,23 +23779,23 @@ export namespace securitycenter_v1 { export interface Params$Resource$Organizations$Valuedresources$List extends StandardParameters { /** - * The filter expression that filters the valued resources in the response. Supported fields: * `resource_value` supports = * `resource_type` supports = + * */ filter?: string; /** - * Optional. The fields by which to order the valued resources response. Supported fields: * `exposed_score` * `resource_value` * `resource_type` * `resource` * `display_name` Values should be a comma separated list of fields. For example: `exposed_score,resource_value`. The default sorting order is descending. To specify ascending or descending order for a field, append a ` ASC` or a ` DESC` suffix, respectively; for example: `exposed_score DESC`. + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListValuedResourcesResponse`; indicates that this is a continuation of a prior `ListValuedResources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of parent to list valued resources. Valid formats: `organizations/{organization\}`, `organizations/{organization\}/simulations/{simulation\}` `organizations/{organization\}/simulations/{simulation\}/attackExposureResults/{attack_exposure_result_v2\}` + * */ parent?: string; } @@ -29516,7 +23838,6 @@ export namespace securitycenter_v1 { } /** - * Filters an organization's assets and groups them by their specified properties. * @example * ```js * // Before running the sample: @@ -29546,7 +23867,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.assets.group({ - * // Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. * parent: 'projects/my-project', * * // Request body metadata @@ -29670,7 +23990,6 @@ export namespace securitycenter_v1 { } /** - * Lists an organization's assets. * @example * ```js * // Before running the sample: @@ -29700,21 +24019,20 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.assets.list({ - * // When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. * compareDuration: 'placeholder-value', - * // A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'projects/my-project', - * // Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -29825,7 +24143,6 @@ export namespace securitycenter_v1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -29855,11 +24172,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.assets.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'projects/my-project/assets/my-asset/securityMarks', - * // The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -29980,7 +24296,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Assets$Group extends StandardParameters { /** - * Required. The name of the parent to group the assets by. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -29991,49 +24307,49 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Assets$List extends StandardParameters { /** - * When compare_duration is set, the ListAssetsResult's "state_change" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state_change" values when compare_duration is specified: * "ADDED": indicates that the asset was not present at the start of compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all assets present at read_time. + * */ compareDuration?: string; /** - * A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following are the allowed field and operator combinations: * name: `=` * update_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `update_time = "2019-06-10T16:07:18-07:00"` `update_time = 1560208038000` * create_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `create_time = "2019-06-10T16:07:18-07:00"` `create_time = 1560208038000` * iam_policy.policy_blob: `=`, `:` * resource_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` * security_marks.marks: `=`, `:` * security_center_properties.resource_name: `=`, `:` * security_center_properties.resource_display_name: `=`, `:` * security_center_properties.resource_type: `=`, `:` * security_center_properties.resource_parent: `=`, `:` * security_center_properties.resource_parent_display_name: `=`, `:` * security_center_properties.resource_project: `=`, `:` * security_center_properties.resource_project_display_name: `=`, `:` * security_center_properties.resource_owners: `=`, `:` For example, `resource_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `resource_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-resource_properties.my_property : ""` + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. The following fields are supported: name update_time resource_properties security_marks.marks security_center_properties.resource_name security_center_properties.resource_display_name security_center_properties.resource_parent security_center_properties.resource_parent_display_name security_center_properties.resource_project security_center_properties.resource_project_display_name security_center_properties.resource_type + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. The name of the parent resource that contains the assets. The value that you can specify on parent depends on the method in which you specify parent. You can specify one of the following values: `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; /** - * Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Projects$Assets$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * */ updateMask?: string; @@ -30050,7 +24366,6 @@ export namespace securitycenter_v1 { } /** - * Creates a BigQuery export. * @example * ```js * // Before running the sample: @@ -30080,9 +24395,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.bigQueryExports.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. * bigQueryExportId: 'placeholder-value', - * // Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'projects/my-project', * * // Request body metadata @@ -30222,7 +24536,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing BigQuery export. * @example * ```js * // Before running the sample: @@ -30252,7 +24565,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.bigQueryExports.delete({ - * // Required. The name of the BigQuery export to delete. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` * name: 'projects/my-project/bigQueryExports/my-bigQueryExport', * }); * console.log(res.data); @@ -30355,7 +24667,6 @@ export namespace securitycenter_v1 { } /** - * Gets a BigQuery export. * @example * ```js * // Before running the sample: @@ -30385,7 +24696,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.bigQueryExports.get({ - * // Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` * name: 'projects/my-project/bigQueryExports/my-bigQueryExport', * }); * console.log(res.data); @@ -30507,7 +24817,6 @@ export namespace securitycenter_v1 { } /** - * Lists BigQuery exports. Note that when requesting BigQuery exports at a given level all exports under that level are also returned e.g. if requesting BigQuery exports under a folder, then all BigQuery exports immediately under the folder plus the ones created under the projects within the folder are returned. * @example * ```js * // Before running the sample: @@ -30537,11 +24846,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.bigQueryExports.list({ - * // The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * * parent: 'projects/my-project', * }); * console.log(res.data); @@ -30654,7 +24962,6 @@ export namespace securitycenter_v1 { } /** - * Updates a BigQuery export. * @example * ```js * // Before running the sample: @@ -30684,9 +24991,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.bigQueryExports.patch({ - * // The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. * name: 'projects/my-project/bigQueryExports/my-bigQueryExport', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -30825,11 +25131,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Bigqueryexports$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. + * */ bigQueryExportId?: string; /** - * Required. The name of the parent resource of the new BigQuery export. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -30840,37 +25146,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Bigqueryexports$Delete extends StandardParameters { /** - * Required. The name of the BigQuery export to delete. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` + * */ name?: string; } export interface Params$Resource$Projects$Bigqueryexports$Get extends StandardParameters { /** - * Required. Name of the BigQuery export to retrieve. Its format is `organizations/{organization\}/bigQueryExports/{export_id\}`, `folders/{folder\}/bigQueryExports/{export_id\}`, or `projects/{project\}/bigQueryExports/{export_id\}` + * */ name?: string; } export interface Params$Resource$Projects$Bigqueryexports$List extends StandardParameters { /** - * The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListBigQueryExports` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBigQueryExports` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of BigQuery exports. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Projects$Bigqueryexports$Patch extends StandardParameters { /** - * The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -30897,7 +25203,6 @@ export namespace securitycenter_v1 { } /** - * Validates the given Event Threat Detection custom module. * @example * ```js * // Before running the sample: @@ -30929,7 +25234,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.validateCustomModule( * { - * // Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. * parent: 'projects/my-project/eventThreatDetectionSettings', * * // Request body metadata @@ -31060,7 +25364,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Eventthreatdetectionsettings$Validatecustommodule extends StandardParameters { /** - * Required. Resource name of the parent to validate the Custom Module under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; @@ -31077,7 +25381,6 @@ export namespace securitycenter_v1 { } /** - * Creates a resident Event Threat Detection custom module at the scope of the given Resource Manager parent, and also creates inherited custom modules for all descendants of the given parent. These modules are enabled by default. * @example * ```js * // Before running the sample: @@ -31109,7 +25412,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.customModules.create( * { - * // Required. The new custom module's parent. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. * parent: 'projects/my-project/eventThreatDetectionSettings', * * // Request body metadata @@ -31255,7 +25557,6 @@ export namespace securitycenter_v1 { } /** - * Deletes the specified Event Threat Detection custom module and all of its descendants in the Resource Manager hierarchy. This method is only supported for resident custom modules. * @example * ```js * // Before running the sample: @@ -31287,7 +25588,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.customModules.delete( * { - * // Required. Name of the custom module to delete. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'projects/my-project/eventThreatDetectionSettings/customModules/my-customModule', * }, * ); @@ -31392,7 +25692,6 @@ export namespace securitycenter_v1 { } /** - * Gets an Event Threat Detection custom module. * @example * ```js * // Before running the sample: @@ -31424,7 +25723,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.customModules.get( * { - * // Required. Name of the custom module to get. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'projects/my-project/eventThreatDetectionSettings/customModules/my-customModule', * }, * ); @@ -31550,7 +25848,6 @@ export namespace securitycenter_v1 { } /** - * Lists all Event Threat Detection custom modules for the given Resource Manager parent. This includes resident modules defined at the scope of the parent along with modules inherited from ancestors. * @example * ```js * // Before running the sample: @@ -31582,11 +25879,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.customModules.list( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'projects/my-project/eventThreatDetectionSettings', * }, * ); @@ -31707,7 +26003,6 @@ export namespace securitycenter_v1 { } /** - * Lists all resident Event Threat Detection custom modules under the given Resource Manager parent and its descendants. * @example * ```js * // Before running the sample: @@ -31739,11 +26034,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.customModules.listDescendant( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'projects/my-project/eventThreatDetectionSettings', * }, * ); @@ -31863,7 +26157,6 @@ export namespace securitycenter_v1 { } /** - * Updates the Event Threat Detection custom module with the given name based on the given update mask. Updating the enablement state is supported for both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name or configuration of a module is supported for resident modules only. The type of a module cannot be changed. * @example * ```js * // Before running the sample: @@ -31895,9 +26188,8 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.customModules.patch( * { - * // Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. * name: 'projects/my-project/eventThreatDetectionSettings/customModules/my-customModule', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -32042,7 +26334,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Eventthreatdetectionsettings$Custommodules$Create extends StandardParameters { /** - * Required. The new custom module's parent. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; @@ -32053,51 +26345,51 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Eventthreatdetectionsettings$Custommodules$Delete extends StandardParameters { /** - * Required. Name of the custom module to delete. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Projects$Eventthreatdetectionsettings$Custommodules$Get extends StandardParameters { /** - * Required. Name of the custom module to get. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Projects$Eventthreatdetectionsettings$Custommodules$List extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } export interface Params$Resource$Projects$Eventthreatdetectionsettings$Custommodules$Listdescendant extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListDescendantEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDescendantEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules under. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } export interface Params$Resource$Projects$Eventthreatdetectionsettings$Custommodules$Patch extends StandardParameters { /** - * Immutable. The resource name of the Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/customModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/customModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/customModules/{module\}`. + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -32114,7 +26406,6 @@ export namespace securitycenter_v1 { } /** - * Gets an effective Event Threat Detection custom module at the given level. * @example * ```js * // Before running the sample: @@ -32146,7 +26437,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.effectiveCustomModules.get( * { - * // Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * name: 'projects/my-project/eventThreatDetectionSettings/effectiveCustomModules/my-effectiveCustomModule', * }, * ); @@ -32269,7 +26559,6 @@ export namespace securitycenter_v1 { } /** - * Lists all effective Event Threat Detection custom modules for the given parent. This includes resident modules defined at the scope of the parent along with modules inherited from its ancestors. * @example * ```js * // Before running the sample: @@ -32301,11 +26590,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.eventThreatDetectionSettings.effectiveCustomModules.list( * { - * // The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * * parent: 'projects/my-project/eventThreatDetectionSettings', * }, * ); @@ -32428,21 +26716,21 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Eventthreatdetectionsettings$Effectivecustommodules$Get extends StandardParameters { /** - * Required. The resource name of the effective Event Threat Detection custom module. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `folders/{folder\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. * `projects/{project\}/eventThreatDetectionSettings/effectiveCustomModules/{module\}`. + * */ name?: string; } export interface Params$Resource$Projects$Eventthreatdetectionsettings$Effectivecustommodules$List extends StandardParameters { /** - * The maximum number of modules to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListEffectiveEventThreatDetectionCustomModules` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListEffectiveEventThreatDetectionCustomModules` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. Name of the parent to list custom modules for. Its format is: * `organizations/{organization\}/eventThreatDetectionSettings`. * `folders/{folder\}/eventThreatDetectionSettings`. * `projects/{project\}/eventThreatDetectionSettings`. + * */ parent?: string; } @@ -32454,7 +26742,6 @@ export namespace securitycenter_v1 { } /** - * Kicks off an LRO to bulk mute findings for a parent based on a filter. The parent can be either an organization, folder or project. The findings matched by the filter will be muted after the LRO is done. * @example * ```js * // Before running the sample: @@ -32484,7 +26771,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.findings.bulkMute({ - * // Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. * parent: 'projects/my-project', * * // Request body metadata @@ -32608,7 +26894,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Findings$Bulkmute extends StandardParameters { /** - * Required. The parent, at which bulk action needs to be applied. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; @@ -32636,7 +26922,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing mute config. * @example * ```js * // Before running the sample: @@ -32666,7 +26951,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.locations.muteConfigs.delete({ - * // Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'projects/my-project/locations/my-location/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -32769,7 +27053,6 @@ export namespace securitycenter_v1 { } /** - * Gets a mute config. * @example * ```js * // Before running the sample: @@ -32799,7 +27082,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.locations.muteConfigs.get({ - * // Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'projects/my-project/locations/my-location/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -32922,7 +27204,6 @@ export namespace securitycenter_v1 { } /** - * Updates a mute config. * @example * ```js * // Before running the sample: @@ -32952,9 +27233,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.locations.muteConfigs.patch({ - * // This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` * name: 'projects/my-project/locations/my-location/muteConfigs/my-muteConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -33095,23 +27375,23 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Locations$Muteconfigs$Delete extends StandardParameters { /** - * Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Projects$Locations$Muteconfigs$Get extends StandardParameters { /** - * Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Projects$Locations$Muteconfigs$Patch extends StandardParameters { /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -33128,7 +27408,6 @@ export namespace securitycenter_v1 { } /** - * Creates a mute config. * @example * ```js * // Before running the sample: @@ -33158,9 +27437,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.muteConfigs.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. * muteConfigId: 'placeholder-value', - * // Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'projects/my-project', * * // Request body metadata @@ -33302,7 +27580,6 @@ export namespace securitycenter_v1 { } /** - * Deletes an existing mute config. * @example * ```js * // Before running the sample: @@ -33332,7 +27609,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.muteConfigs.delete({ - * // Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'projects/my-project/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -33435,7 +27711,6 @@ export namespace securitycenter_v1 { } /** - * Gets a mute config. * @example * ```js * // Before running the sample: @@ -33465,7 +27740,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.muteConfigs.get({ - * // Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. * name: 'projects/my-project/muteConfigs/my-muteConfig', * }); * console.log(res.data); @@ -33588,7 +27862,6 @@ export namespace securitycenter_v1 { } /** - * Lists mute configs. * @example * ```js * // Before running the sample: @@ -33618,11 +27891,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.muteConfigs.list({ - * // The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. * pageSize: 'placeholder-value', - * // A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token. + * * pageToken: 'placeholder-value', - * // Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * * parent: 'projects/my-project', * }); * console.log(res.data); @@ -33733,7 +28005,6 @@ export namespace securitycenter_v1 { } /** - * Updates a mute config. * @example * ```js * // Before running the sample: @@ -33763,9 +28034,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.muteConfigs.patch({ - * // This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` * name: 'projects/my-project/muteConfigs/my-muteConfig', - * // The list of fields to be updated. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -33906,11 +28176,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Muteconfigs$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must consist of only lowercase letters, numbers, and hyphens, must start with a letter, must end with either a letter or a number, and must be 63 characters or less. + * */ muteConfigId?: string; /** - * Required. Resource name of the new mute configs's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -33921,37 +28191,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Muteconfigs$Delete extends StandardParameters { /** - * Required. Name of the mute config to delete. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Projects$Muteconfigs$Get extends StandardParameters { /** - * Required. Name of the mute config to retrieve. Its format is `organizations/{organization\}/muteConfigs/{config_id\}`, `folders/{folder\}/muteConfigs/{config_id\}`, `projects/{project\}/muteConfigs/{config_id\}`, `organizations/{organization\}/locations/global/muteConfigs/{config_id\}`, `folders/{folder\}/locations/global/muteConfigs/{config_id\}`, or `projects/{project\}/locations/global/muteConfigs/{config_id\}`. + * */ name?: string; } export interface Params$Resource$Projects$Muteconfigs$List extends StandardParameters { /** - * The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 10 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000. + * */ pageSize?: number; /** - * A page token, received from a previous `ListMuteConfigs` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMuteConfigs` must match the call that provided the page token. + * */ pageToken?: string; /** - * Required. The parent, which owns the collection of mute configs. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, `projects/[project_id]`. + * */ parent?: string; } export interface Params$Resource$Projects$Muteconfigs$Patch extends StandardParameters { /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` + * */ name?: string; /** - * The list of fields to be updated. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -33968,7 +28238,6 @@ export namespace securitycenter_v1 { } /** - * Creates a notification config. * @example * ```js * // Before running the sample: @@ -33998,9 +28267,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.notificationConfigs.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only. * configId: 'placeholder-value', - * // Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'projects/my-project', * * // Request body metadata @@ -34124,7 +28392,6 @@ export namespace securitycenter_v1 { } /** - * Deletes a notification config. * @example * ```js * // Before running the sample: @@ -34154,7 +28421,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.notificationConfigs.delete({ - * // Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. * name: 'projects/my-project/notificationConfigs/my-notificationConfig', * }); * console.log(res.data); @@ -34257,7 +28523,6 @@ export namespace securitycenter_v1 { } /** - * Gets a notification config. * @example * ```js * // Before running the sample: @@ -34287,7 +28552,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.notificationConfigs.get({ - * // Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. * name: 'projects/my-project/notificationConfigs/my-notificationConfig', * }); * console.log(res.data); @@ -34396,7 +28660,6 @@ export namespace securitycenter_v1 { } /** - * Lists notification configs. * @example * ```js * // Before running the sample: @@ -34426,11 +28689,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.notificationConfigs.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. The name of the parent in which to list the notification configurations. Its format is "organizations/[organization_id]", "folders/[folder_id]", or "projects/[project_id]". + * * parent: 'projects/my-project', * }); * console.log(res.data); @@ -34545,7 +28807,6 @@ export namespace securitycenter_v1 { } /** - * Updates a notification config. The following update fields are allowed: description, pubsub_topic, streaming_config.filter * @example * ```js * // Before running the sample: @@ -34575,9 +28836,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.notificationConfigs.patch({ - * // The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". * name: 'projects/my-project/notificationConfigs/my-notificationConfig', - * // The FieldMask to use when updating the notification config. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -34700,11 +28960,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Notificationconfigs$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must be between 1 and 128 characters and contain alphanumeric characters, underscores, or hyphens only. + * */ configId?: string; /** - * Required. Resource name of the new notification config's parent. Its format is `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; @@ -34715,37 +28975,37 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Notificationconfigs$Delete extends StandardParameters { /** - * Required. Name of the notification config to delete. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. + * */ name?: string; } export interface Params$Resource$Projects$Notificationconfigs$Get extends StandardParameters { /** - * Required. Name of the notification config to get. Its format is `organizations/[organization_id]/notificationConfigs/[config_id]`, `folders/[folder_id]/notificationConfigs/[config_id]`, or `projects/[project_id]/notificationConfigs/[config_id]`. + * */ name?: string; } export interface Params$Resource$Projects$Notificationconfigs$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListNotificationConfigsResponse`; indicates that this is a continuation of a prior `ListNotificationConfigs` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. The name of the parent in which to list the notification configurations. Its format is "organizations/[organization_id]", "folders/[folder_id]", or "projects/[project_id]". + * */ parent?: string; } export interface Params$Resource$Projects$Notificationconfigs$Patch extends StandardParameters { /** - * The relative resource name of this notification config. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/notificationConfigs/notify_public_bucket", "folders/{folder_id\}/notificationConfigs/notify_public_bucket", or "projects/{project_id\}/notificationConfigs/notify_public_bucket". + * */ name?: string; /** - * The FieldMask to use when updating the notification config. If empty all mutable fields will be updated. + * */ updateMask?: string; @@ -34779,7 +29039,6 @@ export namespace securitycenter_v1 { } /** - * Creates a resident SecurityHealthAnalyticsCustomModule at the scope of the given CRM parent, and also creates inherited SecurityHealthAnalyticsCustomModules for all CRM descendants of the given parent. These modules are enabled by default. * @example * ```js * // Before running the sample: @@ -34811,7 +29070,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.create( * { - * // Required. Resource name of the new custom module's parent. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` * parent: 'projects/my-project/securityHealthAnalyticsSettings', * * // Request body metadata @@ -34953,7 +29211,6 @@ export namespace securitycenter_v1 { } /** - * Deletes the specified SecurityHealthAnalyticsCustomModule and all of its descendants in the CRM hierarchy. This method is only supported for resident custom modules. * @example * ```js * // Before running the sample: @@ -34985,7 +29242,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.delete( * { - * // Required. Name of the custom module to delete. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` * name: 'projects/my-project/securityHealthAnalyticsSettings/customModules/my-customModule', * }, * ); @@ -35090,7 +29346,6 @@ export namespace securitycenter_v1 { } /** - * Retrieves a SecurityHealthAnalyticsCustomModule. * @example * ```js * // Before running the sample: @@ -35122,7 +29377,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.get( * { - * // Required. Name of the custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` * name: 'projects/my-project/securityHealthAnalyticsSettings/customModules/my-customModule', * }, * ); @@ -35246,7 +29500,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all SecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors. * @example * ```js * // Before running the sample: @@ -35278,11 +29531,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.list( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'projects/my-project/securityHealthAnalyticsSettings', * }, * ); @@ -35403,7 +29655,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all resident SecurityHealthAnalyticsCustomModules under the given CRM parent and all of the parent’s CRM descendants. * @example * ```js * // Before running the sample: @@ -35435,11 +29686,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.listDescendant( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'projects/my-project/securityHealthAnalyticsSettings', * }, * ); @@ -35559,7 +29809,6 @@ export namespace securitycenter_v1 { } /** - * Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask. Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name and custom config of a module is supported on resident modules only. * @example * ```js * // Before running the sample: @@ -35591,9 +29840,8 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.patch( * { - * // Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. * name: 'projects/my-project/securityHealthAnalyticsSettings/customModules/my-customModule', - * // The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -35732,7 +29980,6 @@ export namespace securitycenter_v1 { } /** - * Simulates a given SecurityHealthAnalyticsCustomModule and Resource. * @example * ```js * // Before running the sample: @@ -35764,7 +30011,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.customModules.simulate( * { - * // Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id\}` * parent: 'projects/my-project/securityHealthAnalyticsSettings', * * // Request body metadata @@ -35895,7 +30141,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$Create extends StandardParameters { /** - * Required. Resource name of the new custom module's parent. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; @@ -35906,51 +30152,51 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$Delete extends StandardParameters { /** - * Required. Name of the custom module to delete. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$Get extends StandardParameters { /** - * Required. Name of the custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$Listdescendant extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list descendant custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$Patch extends StandardParameters { /** - * Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. + * */ name?: string; /** - * The list of fields to be updated. The only fields that can be updated are `enablement_state` and `custom_config`. If empty or set to the wildcard value `*`, both `enablement_state` and `custom_config` are updated. + * */ updateMask?: string; @@ -35961,7 +30207,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Custommodules$Simulate extends StandardParameters { /** - * Required. The relative resource name of the organization, project, or folder. For more information about relative resource names, see [Relative Resource Name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) Example: `organizations/{organization_id\}` + * */ parent?: string; @@ -35978,7 +30224,6 @@ export namespace securitycenter_v1 { } /** - * Retrieves an EffectiveSecurityHealthAnalyticsCustomModule. * @example * ```js * // Before running the sample: @@ -36010,7 +30255,6 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.effectiveCustomModules.get( * { - * // Required. Name of the effective custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}` * name: 'projects/my-project/securityHealthAnalyticsSettings/effectiveCustomModules/my-effectiveCustomModule', * }, * ); @@ -36131,7 +30375,6 @@ export namespace securitycenter_v1 { } /** - * Returns a list of all EffectiveSecurityHealthAnalyticsCustomModules for the given parent. This includes resident modules defined at the scope of the parent, and inherited modules, inherited from CRM ancestors. * @example * ```js * // Before running the sample: @@ -36163,11 +30406,10 @@ export namespace securitycenter_v1 { * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.effectiveCustomModules.list( * { - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last call indicating a continuation + * * pageToken: 'placeholder-value', - * // Required. Name of parent to list effective custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * * parent: 'projects/my-project/securityHealthAnalyticsSettings', * }, * ); @@ -36290,21 +30532,21 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Securityhealthanalyticssettings$Effectivecustommodules$Get extends StandardParameters { /** - * Required. Name of the effective custom module to get. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, `folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}`, or `projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}` + * */ name?: string; } export interface Params$Resource$Projects$Securityhealthanalyticssettings$Effectivecustommodules$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last call indicating a continuation + * */ pageToken?: string; /** - * Required. Name of parent to list effective custom modules. Its format is `organizations/{organization\}/securityHealthAnalyticsSettings`, `folders/{folder\}/securityHealthAnalyticsSettings`, or `projects/{project\}/securityHealthAnalyticsSettings` + * */ parent?: string; } @@ -36318,7 +30560,6 @@ export namespace securitycenter_v1 { } /** - * Lists all sources belonging to an organization. * @example * ```js * // Before running the sample: @@ -36348,11 +30589,10 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.sources.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * * parent: 'projects/my-project', * }); * console.log(res.data); @@ -36463,15 +30703,15 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Sources$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Resource name of the parent of sources to list. Its format should be `organizations/[organization_id]`, `folders/[folder_id]`, or `projects/[project_id]`. + * */ parent?: string; } @@ -36486,7 +30726,6 @@ export namespace securitycenter_v1 { } /** - * Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id\}/sources/-/findings, /v1/folders/{folder_id\}/sources/-/findings, /v1/projects/{project_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -36516,7 +30755,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.sources.findings.group({ - * // Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-, folders/{folder_id\}/sources/-`, or `projects/{project_id\}/sources/-` * parent: 'projects/my-project/sources/my-source', * * // Request body metadata @@ -36642,7 +30880,6 @@ export namespace securitycenter_v1 { } /** - * Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1/organizations/{organization_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -36672,21 +30909,20 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.sources.findings.list({ - * // When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. * compareDuration: 'placeholder-value', - * // A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:` + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-`, `folders/{folder_id\}/sources/-` or `projects/{projects_id\}/sources/-` + * * parent: 'projects/my-project/sources/my-source', - * // Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -36799,7 +31035,6 @@ export namespace securitycenter_v1 { } /** - * Creates or updates a finding. The corresponding source must exist for a finding creation to succeed. * @example * ```js * // Before running the sample: @@ -36829,9 +31064,8 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.sources.findings.patch({ - * // The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". * name: 'projects/my-project/sources/my-source/findings/my-finding', - * // The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -37078,7 +31312,6 @@ export namespace securitycenter_v1 { } /** - * Updates the mute state of a finding. * @example * ```js * // Before running the sample: @@ -37108,7 +31341,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.sources.findings.setMute({ - * // Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. * name: 'projects/my-project/sources/my-source/findings/my-finding', * * // Request body metadata @@ -37291,7 +31523,6 @@ export namespace securitycenter_v1 { } /** - * Updates the state of a finding. * @example * ```js * // Before running the sample: @@ -37321,7 +31552,6 @@ export namespace securitycenter_v1 { * * // Do the magic * const res = await securitycenter.projects.sources.findings.setState({ - * // Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. * name: 'projects/my-project/sources/my-source/findings/my-finding', * * // Request body metadata @@ -37505,7 +31735,6 @@ export namespace securitycenter_v1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -37536,11 +31765,10 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.projects.sources.findings.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'projects/my-project/sources/my-source/findings/my-finding/securityMarks', - * // The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -37662,7 +31890,7 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Sources$Findings$Group extends StandardParameters { /** - * Required. Name of the source to groupBy. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To groupBy across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-, folders/{folder_id\}/sources/-`, or `projects/{project_id\}/sources/-` + * */ parent?: string; @@ -37673,45 +31901,45 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Sources$Findings$List extends StandardParameters { /** - * When compare_duration is set, the ListFindingsResult's "state_change" attribute is updated to indicate whether the finding had its state changed, the finding's state remained unchanged, or if the finding was added in any state during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state_change value is derived based on the presence and state of the finding at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the finding is made inactive and then active again. Possible "state_change" values when compare_duration is specified: * "CHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration, but changed its state at read_time. * "UNCHANGED": indicates that the finding was present and matched the given filter at the start of compare_duration and did not change state at read_time. * "ADDED": indicates that the finding did not match the given filter or was not present at the start of compare_duration, but was present at read_time. * "REMOVED": indicates that the finding was present and matched the filter at the start of compare_duration, but did not match the filter at read_time. If compare_duration is not specified, then the only possible state_change is "UNUSED", which will be the state_change set for all findings present at read_time. + * */ compareDuration?: string; /** - * A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. The following field and operator combinations are supported: * name: `=` * parent: `=`, `:` * resource_name: `=`, `:` * state: `=`, `:` * category: `=`, `:` * external_uri: `=`, `:` * event_time: `=`, `\>`, `<`, `\>=`, `<=` Usage: This should be milliseconds since epoch or an RFC3339 string. Examples: `event_time = "2019-06-10T16:07:18-07:00"` `event_time = 1560208038000` * severity: `=`, `:` * workflow_state: `=`, `:` * security_marks.marks: `=`, `:` * source_properties: `=`, `:`, `\>`, `<`, `\>=`, `<=` For example, `source_properties.size = 100` is a valid filter string. Use a partial match on the empty string to filter based on a property existing: `source_properties.my_property : ""` Use a negated partial match on the empty string to filter based on a property not existing: `-source_properties.my_property : ""` * resource: * resource.name: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.type: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.display_name: `=`, `:` + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. The following fields are supported: name parent state category resource_name event_time source_properties security_marks.marks + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of the source the findings belong to. Its format is `organizations/[organization_id]/sources/[source_id]`, `folders/[folder_id]/sources/[source_id]`, or `projects/[project_id]/sources/[source_id]`. To list across all sources provide a source_id of `-`. For example: `organizations/{organization_id\}/sources/-`, `folders/{folder_id\}/sources/-` or `projects/{projects_id\}/sources/-` + * */ parent?: string; /** - * Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Projects$Sources$Findings$Patch extends StandardParameters { /** - * The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". + * */ name?: string; /** - * The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. When updating a finding, an empty mask is treated as updating all mutable fields and replacing source_properties. Individual source_properties can be added/updated by using "source_properties." in the field mask. + * */ updateMask?: string; @@ -37722,7 +31950,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Sources$Findings$Setmute extends StandardParameters { /** - * Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. + * */ name?: string; @@ -37733,7 +31961,7 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Sources$Findings$Setstate extends StandardParameters { /** - * Required. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}`, `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}`, `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}`. + * */ name?: string; @@ -37744,15 +31972,15 @@ export namespace securitycenter_v1 { } export interface Params$Resource$Projects$Sources$Findings$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. If not set uses current server time. Updates will be applied to the SecurityMarks that are active immediately preceding this time. Must be earlier or equal to the server time. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. The field mask must not contain duplicate fields. If empty or set to "marks", all marks will be replaced. Individual marks can be updated using "marks.". + * */ updateMask?: string; @@ -37769,7 +31997,6 @@ export namespace securitycenter_v1 { } /** - * Updates external system. This is for a given finding. * @example * ```js * // Before running the sample: @@ -37800,9 +32027,8 @@ export namespace securitycenter_v1 { * // Do the magic * const res = * await securitycenter.projects.sources.findings.externalSystems.patch({ - * // Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" * name: 'projects/my-project/sources/my-source/findings/my-finding/externalSystems/my-externalSystem', - * // The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -37948,11 +32174,11 @@ export namespace securitycenter_v1 { export interface Params$Resource$Projects$Sources$Findings$Externalsystems$Patch extends StandardParameters { /** - * Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" + * */ name?: string; /** - * The FieldMask to use when updating the external system resource. If empty all mutable fields will be updated. + * */ updateMask?: string; diff --git a/src/apis/securitycenter/v1beta1.ts b/src/apis/securitycenter/v1beta1.ts index f35e1458d8..68bb36330e 100644 --- a/src/apis/securitycenter/v1beta1.ts +++ b/src/apis/securitycenter/v1beta1.ts @@ -124,6908 +124,1979 @@ export namespace securitycenter_v1beta1 { } } - /** - * Represents an access event. - */ export interface Schema$Access { - /** - * Caller's IP address, such as "1.1.1.1". - */ callerIp?: string | null; - /** - * The caller IP's geolocation, which identifies where the call came from. - */ callerIpGeo?: Schema$Geolocation; - /** - * The method that the service account called, e.g. "SetIamPolicy". - */ methodName?: string | null; - /** - * Associated email, such as "foo@google.com". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). - */ principalEmail?: string | null; - /** - * A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name\}/subject/{subject\}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name\}[{subject\}]`. - */ principalSubject?: string | null; - /** - * The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. - */ serviceAccountDelegationInfo?: Schema$ServiceAccountDelegationInfo[]; - /** - * The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/{PROJECT_ID\}/serviceAccounts/{ACCOUNT\}/keys/{key\}". - */ serviceAccountKeyName?: string | null; - /** - * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" - */ serviceName?: string | null; - /** - * The caller's user agent string associated with the finding. - */ userAgent?: string | null; - /** - * Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application. - */ userAgentFamily?: string | null; - /** - * A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username. - */ userName?: string | null; } - /** - * Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding. - */ export interface Schema$AccessReview { - /** - * The API group of the resource. "*" means all. - */ group?: string | null; - /** - * The name of the resource being requested. Empty means all. - */ name?: string | null; - /** - * Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by "" (empty). - */ ns?: string | null; - /** - * The optional resource type requested. "*" means all. - */ resource?: string | null; - /** - * The optional subresource type. - */ subresource?: string | null; - /** - * A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. "*" means all. - */ verb?: string | null; - /** - * The API version of the resource. "*" means all. - */ version?: string | null; } - /** - * Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection). - */ export interface Schema$AdaptiveProtection { - /** - * A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation. - */ confidence?: number | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$AdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$AdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$AdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Details about resources affected by this finding. - */ export interface Schema$AffectedResources { - /** - * The count of resources affected by the finding. - */ count?: string | null; } - /** - * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. - */ export interface Schema$AgentDataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The agent principal that accessed the data. - */ principalSubject?: string | null; } - /** - * Contains information about the AI model associated with the finding. - */ export interface Schema$AiModel { - /** - * The platform on which the model is deployed. - */ deploymentPlatform?: string | null; - /** - * The user defined display name of model. Ex. baseline-classification-model - */ displayName?: string | null; - /** - * The domain of the model, for example, “image-classification”. - */ domain?: string | null; - /** - * The name of the model library, for example, “transformers”. - */ library?: string | null; - /** - * The region in which the model is used, for example, “us-central1”. - */ location?: string | null; - /** - * The name of the AI model, for example, "gemini:1.0.0". - */ name?: string | null; - /** - * The publisher of the model, for example, “google” or “nvidia”. - */ publisher?: string | null; - /** - * The purpose of the model, for example, "Inteference" or "Training". - */ usageCategory?: string | null; } - /** - * Allowed IP rule. - */ export interface Schema$Allowed { - /** - * Optional. Optional list of allowed IP rules. - */ ipRules?: Schema$IpRule[]; } - /** - * Represents an application associated with a finding. - */ export interface Schema$Application { - /** - * The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`. - */ baseUri?: string | null; - /** - * The full URI with payload that can be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`. - */ fullUri?: string | null; } - /** - * Represents the result of evaluating artifact guard policies. - */ export interface Schema$ArtifactGuardPolicies { - /** - * A list of failing policies. - */ failingPolicies?: Schema$ArtifactGuardPolicy[]; - /** - * The ID of the resource that has policies configured for it. - */ resourceId?: string | null; } - /** - * Represents an artifact guard policy. - */ export interface Schema$ArtifactGuardPolicy { - /** - * The reason for the policy failure, for example, "severity=HIGH AND max_vuln_count=2". - */ failureReason?: string | null; - /** - * The ID of the failing policy, for example, "organizations/3392779/locations/global/policies/prod-policy". - */ policyId?: string | null; - /** - * The type of the policy evaluation. - */ type?: string | null; } - /** - * Security Command Center representation of a Google Cloud resource. The Asset is a Security Command Center resource that captures information about a single Google Cloud resource. All modifications to an Asset are only within the context of Security Command Center and don't affect the referenced Google Cloud resource. - */ export interface Schema$Asset { - /** - * The time at which the asset was created in Security Command Center. - */ createTime?: string | null; - /** - * The relative resource name of this asset. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/assets/{asset_id\}". - */ name?: string | null; - /** - * Resource managed properties. These properties are managed and defined by the Google Cloud resource and cannot be modified by the user. - */ resourceProperties?: {[key: string]: any} | null; - /** - * Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user. - */ securityCenterProperties?: Schema$SecurityCenterProperties; - /** - * User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the asset. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV1beta1SecurityMarks; - /** - * The time at which the asset was last updated, added, or deleted in Security Command Center. - */ updateTime?: string | null; } - /** - * The configuration used for Asset Discovery runs. - */ export interface Schema$AssetDiscoveryConfig { - /** - * The mode to use for filtering asset discovery. - */ inclusionMode?: string | null; - /** - * The project ids to use for filtering asset discovery. - */ projectIds?: string[] | null; } - /** - * Information about DDoS attack volume and classification. - */ export interface Schema$Attack { - /** - * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'. - */ classification?: string | null; - /** - * Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead. - */ volumeBps?: number | null; - /** - * Total BPS (bytes per second) volume of attack. - */ volumeBpsLong?: string | null; - /** - * Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead. - */ volumePps?: number | null; - /** - * Total PPS (packets per second) volume of attack. - */ volumePpsLong?: string | null; } - /** - * An attack exposure contains the results of an attack path simulation run. - */ export interface Schema$AttackExposure { - /** - * The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789` - */ attackExposureResult?: string | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedHighValueResourcesCount?: number | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedLowValueResourcesCount?: number | null; - /** - * The number of medium value resources that are exposed as a result of this finding. - */ exposedMediumValueResourcesCount?: number | null; - /** - * The most recent time the attack exposure was updated on this finding. - */ latestCalculationTime?: string | null; - /** - * A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate. - */ score?: number | null; - /** - * What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not. - */ state?: 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$AuditConfig { - /** - * The configuration for logging of each type of permission. - */ auditLogConfigs?: Schema$AuditLogConfig[]; - /** - * 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$AuditLogConfig { - /** - * 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; } - /** - * An AWS account that is a member of an organization. - */ export interface Schema$AwsAccount { - /** - * The unique identifier (ID) of the account, containing exactly 12 digits. - */ id?: string | null; - /** - * The friendly name of this account. - */ name?: string | null; } - /** - * AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services. - */ export interface Schema$AwsMetadata { - /** - * The AWS account associated with the resource. - */ account?: Schema$AwsAccount; - /** - * The AWS organization associated with the resource. - */ organization?: Schema$AwsOrganization; - /** - * A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level. - */ organizationalUnits?: Schema$AwsOrganizationalUnit[]; } - /** - * An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies. - */ export interface Schema$AwsOrganization { - /** - * The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires "o-" followed by from 10 to 32 lowercase letters or digits. - */ id?: string | null; } - /** - * An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs. - */ export interface Schema$AwsOrganizationalUnit { - /** - * The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits. For example, "ou-ab12-cd34ef56". - */ id?: string | null; - /** - * The friendly name of the OU. - */ name?: string | null; } - /** - * Represents an Azure management group. - */ export interface Schema$AzureManagementGroup { - /** - * The display name of the Azure management group. - */ displayName?: string | null; - /** - * The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`. - */ id?: string | null; } - /** - * Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure. - */ export interface Schema$AzureMetadata { - /** - * A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level. - */ managementGroups?: Schema$AzureManagementGroup[]; - /** - * The Azure resource group associated with the resource. - */ resourceGroup?: Schema$AzureResourceGroup; - /** - * The Azure subscription associated with the resource. - */ subscription?: Schema$AzureSubscription; - /** - * The Azure Entra tenant associated with the resource. - */ tenant?: Schema$AzureTenant; } - /** - * Represents an Azure resource group. - */ export interface Schema$AzureResourceGroup { - /** - * The ID of the Azure resource group. - */ id?: string | null; - /** - * The name of the Azure resource group. This is not a UUID. - */ name?: string | null; } - /** - * Represents an Azure subscription. - */ export interface Schema$AzureSubscription { - /** - * The display name of the Azure subscription. - */ displayName?: string | null; - /** - * The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`. - */ id?: string | null; } - /** - * Represents a Microsoft Entra tenant. - */ export interface Schema$AzureTenant { - /** - * The display name of the Azure tenant. - */ displayName?: string | null; - /** - * The ID of the Microsoft Entra tenant, for example, "a11aaa11-aa11-1aa1-11aa-1aaa11a". - */ id?: string | null; } - /** - * Information related to Google Cloud Backup and DR Service findings. - */ export interface Schema$BackupDisasterRecovery { - /** - * The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`. - */ appliance?: string | null; - /** - * The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`. - */ applications?: string[] | null; - /** - * The timestamp at which the Backup and DR backup was created. - */ backupCreateTime?: string | null; - /** - * The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`. - */ backupTemplate?: string | null; - /** - * The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`. - */ backupType?: string | null; - /** - * The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`. - */ host?: string | null; - /** - * The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`. - */ policies?: string[] | null; - /** - * The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`. - */ policyOptions?: string[] | null; - /** - * The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`. - */ profile?: string | null; - /** - * The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`. - */ storagePool?: string | null; } - /** - * The destination BigQuery dataset to export findings to. - */ export interface Schema$BigQueryDestination { - /** - * Required. The relative resource name of the destination dataset, in the form projects/{projectId\}/datasets/{datasetId\}. - */ dataset?: string | null; } - /** - * Associates `members`, or principals, with a `role`. - */ export interface Schema$Binding { - /** - * The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ condition?: Schema$Expr; - /** - * Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid\}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid\}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid\}.svc.id.goog[{namespace\}/{kubernetes-sa\}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid\}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain\}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/group/{group_id\}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/x`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/subject/{subject_attribute_value\}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/group/{group_id\}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/attribute.{attribute_name\}/{attribute_value\}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number\}/locations/global/workloadIdentityPools/{pool_id\}/x`: All identities in a workload identity pool. * `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. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id\}/subject/{subject_attribute_value\}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`. - */ members?: string[] | null; - /** - * Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles). - */ role?: string | null; } - /** - * The request message for Operations.CancelOperation. - */ export interface Schema$CancelOperationRequest {} - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). - */ export interface Schema$Chokepoint { - /** - * List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings. - */ relatedFindings?: string[] | null; } - /** - * Fields related to Google Cloud Armor findings. - */ export interface Schema$CloudArmor { - /** - * Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview). - */ adaptiveProtection?: Schema$AdaptiveProtection; - /** - * Information about DDoS attack volume and classification. - */ attack?: Schema$Attack; - /** - * Duration of attack from the start until the current moment (updated every 5 minutes). - */ duration?: string | null; - /** - * Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview). - */ requests?: Schema$Requests; - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ securityPolicy?: Schema$SecurityPolicy; - /** - * Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS attacks, or "L_7" for Layer 7 DDoS attacks. - */ threatVector?: string | null; } - /** - * CloudControl associated with the finding. - */ export interface Schema$CloudControl { - /** - * Name of the CloudControl associated with the finding. - */ cloudControlName?: string | null; - /** - * Policy type of the CloudControl - */ policyType?: string | null; - /** - * Type of cloud control. - */ type?: string | null; - /** - * Version of the Cloud Control - */ version?: number | null; } - /** - * The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding. - */ export interface Schema$CloudDlpDataProfile { - /** - * Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`. - */ dataProfile?: string | null; - /** - * Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type. - */ infoTypes?: Schema$InfoType[]; - /** - * The resource hierarchy level at which the data profile was generated. - */ parentType?: string | null; } - /** - * Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding. - */ export interface Schema$CloudDlpInspection { - /** - * Whether Cloud DLP scanned the complete resource or a sampled subset. - */ fullScan?: boolean | null; - /** - * The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`. - */ infoType?: string | null; - /** - * The number of times Cloud DLP found this infoType within this job and resource. - */ infoTypeCount?: string | null; - /** - * Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`. - */ inspectJob?: string | null; } - /** - * Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) - */ export interface Schema$CloudLoggingEntry { - /** - * A unique identifier for the log entry. - */ insertId?: string | null; - /** - * The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity`. Note that this field is not URL-encoded, unlike the `LOG_ID` field in `LogEntry`. - */ logId?: string | null; - /** - * The organization, folder, or project of the monitored resource that produced this log entry. - */ resourceContainer?: string | null; - /** - * The time the event described by the log entry occurred. - */ timestamp?: string | null; } - /** - * Contains compliance information about a security standard indicating unmet recommendations. - */ export interface Schema$Compliance { - /** - * Policies within the standard or benchmark, for example, A.12.4.1 - */ ids?: string[] | null; - /** - * Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP. - */ standard?: string | null; - /** - * Version of the standard or benchmark, for example, 1.1 - */ version?: string | null; } - /** - * Compliance Details associated with the finding. - */ export interface Schema$ComplianceDetails { - /** - * CloudControl associated with the finding - */ cloudControl?: Schema$CloudControl; - /** - * Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier - */ cloudControlDeploymentNames?: string[] | null; - /** - * Details of Frameworks associated with the finding - */ frameworks?: Schema$Framework[]; } - /** - * Contains information about the IP connection associated with the finding. - */ export interface Schema$Connection { - /** - * Destination IP address. Not present for sockets that are listening and not connected. - */ destinationIp?: string | null; - /** - * Destination port. Not present for sockets that are listening and not connected. - */ destinationPort?: number | null; - /** - * IANA Internet Protocol Number such as TCP(6) and UDP(17). - */ protocol?: string | null; - /** - * Source IP address. - */ sourceIp?: string | null; - /** - * Source port. - */ sourcePort?: number | null; } - /** - * The email address of a contact. - */ export interface Schema$Contact { - /** - * An email address. For example, "`person123@company.com`". - */ email?: string | null; } - /** - * Details about specific contacts - */ export interface Schema$ContactDetails { - /** - * A list of contacts - */ contacts?: Schema$Contact[]; } - /** - * Container associated with the finding. - */ export interface Schema$Container { - /** - * The time that the container was created. - */ createTime?: string | null; - /** - * Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest. - */ imageId?: string | null; - /** - * Container labels, as provided by the container runtime. - */ labels?: Schema$Label[]; - /** - * Name of the container. - */ name?: string | null; - /** - * Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags. - */ uri?: string | null; } - /** - * Compliance control associated with the finding. - */ export interface Schema$Control { - /** - * Name of the Control - */ controlName?: string | null; - /** - * Display name of the control. For example, AU-02. - */ displayName?: string | null; } - /** - * CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability. - */ export interface Schema$Cve { - /** - * Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document - */ cvssv3?: Schema$Cvssv3; - /** - * The exploitation activity of the vulnerability in the wild. - */ exploitationActivity?: string | null; - /** - * Date the first publicly available exploit or PoC was released. - */ exploitReleaseDate?: string | null; - /** - * Date of the earliest known exploitation. - */ firstExploitationDate?: string | null; - /** - * The unique identifier for the vulnerability. e.g. CVE-2021-34527 - */ id?: string | null; - /** - * The potential impact of the vulnerability if it was to be exploited. - */ impact?: string | null; - /** - * Whether or not the vulnerability has been observed in the wild. - */ observedInTheWild?: boolean | null; - /** - * Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527 - */ references?: Schema$Reference[]; - /** - * Whether upstream fix is available for the CVE. - */ upstreamFixAvailable?: boolean | null; - /** - * Whether or not the vulnerability was zero day when the finding was published. - */ zeroDay?: boolean | null; } - /** - * Common Vulnerability Scoring System version 3. - */ export interface Schema$Cvssv3 { - /** - * This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. - */ attackComplexity?: string | null; - /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. - */ attackVector?: string | null; - /** - * This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. - */ availabilityImpact?: string | null; - /** - * The base score is a function of the base metric scores. - */ baseScore?: number | null; - /** - * This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. - */ confidentialityImpact?: string | null; - /** - * This metric measures the impact to integrity of a successfully exploited vulnerability. - */ integrityImpact?: string | null; - /** - * This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. - */ privilegesRequired?: string | null; - /** - * The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. - */ scope?: string | null; - /** - * This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. - */ userInteraction?: string | null; } - /** - * CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/). - */ export interface Schema$Cwe { - /** - * The CWE identifier, e.g. CWE-94 - */ id?: string | null; - /** - * Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html - */ references?: Schema$Reference[]; } - /** - * Details about a data access attempt made by a principal not authorized under applicable data security policy. - */ export interface Schema$DataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; } - /** - * Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided. - */ export interface Schema$Database { - /** - * The human-readable name of the database that the user connected to. - */ displayName?: string | null; - /** - * The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change. - */ grantees?: string[] | null; - /** - * Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory. - */ name?: string | null; - /** - * The SQL statement that is associated with the database access. - */ query?: string | null; - /** - * The username used to connect to the database. The username might not be an IAM principal and does not have a set format. - */ userName?: string | null; - /** - * The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion). - */ version?: string | null; } - /** - * Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy. - */ export interface Schema$DataFlowEvent { - /** - * Unique identifier for data flow event. - */ eventId?: string | null; - /** - * Timestamp of data flow event. - */ eventTime?: string | null; - /** - * The operation performed by the principal for the data flow event. - */ operation?: string | null; - /** - * The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; - /** - * Non-compliant location of the principal or the data destination. - */ violatedLocation?: string | null; } - /** - * Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments. - */ export interface Schema$DataRetentionDeletionEvent { - /** - * Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000. - */ dataObjectCount?: string | null; - /** - * Timestamp indicating when the event was detected. - */ eventDetectionTime?: string | null; - /** - * Type of the DRD event. - */ eventType?: string | null; - /** - * Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days. - */ maxRetentionAllowed?: string | null; - /** - * Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION. - */ minRetentionAllowed?: string | null; } - /** - * Vertex AI dataset associated with the finding. - */ export interface Schema$Dataset { - /** - * The user defined display name of dataset, e.g. plants-dataset - */ displayName?: string | null; - /** - * Resource name of the dataset, e.g. projects/{project\}/locations/{location\}/datasets/2094040236064505856 - */ name?: string | null; - /** - * Data source, such as BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod - */ source?: string | null; } - /** - * Denied IP rule. - */ export interface Schema$Denied { - /** - * Optional. Optional list of denied IP rules. - */ ipRules?: Schema$IpRule[]; } - /** - * Memory hash detection contributing to the binary family match. - */ export interface Schema$Detection { - /** - * The name of the binary associated with the memory hash signature detection. - */ binary?: string | null; - /** - * The percentage of memory page hashes in the signature that were matched. - */ percentPagesMatched?: number | null; } - /** - * Represents discovered, customer managed workload that is not registered with the respective GCP service. - */ export interface Schema$DiscoveredWorkload { - /** - * The confidence in detection of this workload. - */ confidence?: string | null; - /** - * A boolean flag set to true if associated hardware strongly predicts the workload type. - */ detectedRelevantHardware?: boolean | null; - /** - * A boolean flag set to true if associated keywords strongly predict the workload type. - */ detectedRelevantKeywords?: boolean | null; - /** - * A boolean flag set to true if installed packages strongly predict the workload type. - */ detectedRelevantPackages?: boolean | null; - /** - * The type of workload. - */ workloadType?: string | null; } - /** - * Contains information about the disk associated with the finding. - */ export interface Schema$Disk { - /** - * The name of the disk, for example, "https://www.googleapis.com/compute/v1/projects/{project-id\}/zones/{zone-id\}/disks/{disk-id\}". - */ name?: string | null; } - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ export interface Schema$DiskPath { - /** - * UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid) - */ partitionUuid?: string | null; - /** - * Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh - */ relativePath?: string | null; } - /** - * The record of a dynamic mute rule that matches the finding. - */ export interface Schema$DynamicMuteRecord { - /** - * When the dynamic mute rule first matched the finding. - */ matchTime?: string | null; - /** - * The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`. - */ muteConfig?: string | 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); \} - */ export interface Schema$Empty {} - /** - * A name-value pair representing an environment variable used in an operating system process. - */ export interface Schema$EnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. - */ name?: string | null; - /** - * Environment variable value as a JSON encoded string. - */ val?: string | null; } - /** - * Resource where data was exfiltrated from or exfiltrated to. - */ export interface Schema$ExfilResource { - /** - * Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket. - */ components?: string[] | null; - /** - * The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name). - */ name?: string | null; } - /** - * Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to. - */ export interface Schema$Exfiltration { - /** - * If there are multiple sources, then the data is considered "joined" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source. - */ sources?: Schema$ExfilResource[]; - /** - * If there are multiple targets, each target would get a complete copy of the "joined" source data. - */ targets?: Schema$ExfilResource[]; - /** - * Total exfiltrated bytes processed for the entire job. - */ totalExfiltratedBytes?: string | null; } - /** - * The LRO metadata for a ExportFindings request. - */ export interface Schema$ExportFindingsMetadata { - /** - * Required. The destination BigQuery dataset to export findings to. - */ bigQueryDestination?: Schema$BigQueryDestination; - /** - * Optional. Timestamp at which export was started - */ exportStartTime?: string | null; } - /** - * The response to a ExportFindings request. Contains the LRO information. - */ export interface Schema$ExportFindingsResponse {} - /** - * 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; } - /** - * Details about the externally exposed resource associated with the finding. - */ export interface Schema$ExternalExposure { - /** - * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" - */ backendBucket?: string | null; - /** - * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ backendService?: string | null; - /** - * The name and version of the exposed web application, for example, "Jenkins 2.184". - */ exposedApplication?: string | null; - /** - * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” - */ exposedEndpoint?: string | null; - /** - * The name and version of the service, for example, "Jupyter Notebook 6.14.0". - */ exposedService?: string | null; - /** - * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". - */ forwardingRule?: string | null; - /** - * Hostname of the exposed application, for example, "https://test-app.a.run.app/" - */ hostnameUri?: string | null; - /** - * The http response returned by the web application. - */ httpResponse?: Schema$HttpResponse[]; - /** - * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". - */ instanceGroup?: string | null; - /** - * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ internalBackendService?: string | null; - /** - * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ loadBalancerFirewallPolicy?: string | null; - /** - * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". - */ networkEndpointGroup?: string | null; - /** - * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". - */ networkIngressFirewallPolicy?: string | null; - /** - * Private IP address of the exposed endpoint. - */ privateIpAddress?: string | null; - /** - * Port number associated with private IP address. - */ privatePort?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" - */ pscNetworkAttachment?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" - */ pscServiceAttachment?: string | null; - /** - * Public IP address of the exposed endpoint. - */ publicIpAddress?: string | null; - /** - * Public port number of the exposed endpoint. - */ publicPort?: string | null; - /** - * The full resource name of the firewall policy of the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ serviceFirewallPolicy?: string | null; } - /** - * File information about the related binary/library used by an executable, or the script used by a script interpreter - */ export interface Schema$File { - /** - * Prefix of the file contents as a JSON-encoded string. - */ contents?: string | null; - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ diskPath?: Schema$DiskPath; - /** - * The load state of the file. - */ fileLoadState?: string | null; - /** - * The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file. - */ hashedSize?: string | null; - /** - * Operation(s) performed on a file. - */ operations?: Schema$FileOperation[]; - /** - * True when the hash covers only a prefix of the file. - */ partiallyHashed?: boolean | null; - /** - * Absolute path of the file as a JSON encoded string. - */ path?: string | null; - /** - * SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file. - */ sha256?: string | null; - /** - * Size of the file in bytes. - */ size?: string | null; } - /** - * Operation(s) performed on a file. - */ export interface Schema$FileOperation { - /** - * The type of the operation - */ type?: string | null; } - /** - * Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding. - */ export interface Schema$Finding { - /** - * Access details associated with the finding, such as more information on the caller, which method was accessed, and from where. - */ access?: Schema$Access; - /** - * AffectedResources associated with the finding. - */ affectedResources?: Schema$AffectedResources; - /** - * Agent data access events associated with the finding. - */ agentDataAccessEvents?: Schema$AgentDataAccessEvent[]; - /** - * The AI model associated with the finding. - */ aiModel?: Schema$AiModel; - /** - * Represents an application associated with the finding. - */ application?: Schema$Application; - /** - * ArtifactGuardPolicies associated with the finding. - */ artifactGuardPolicies?: Schema$ArtifactGuardPolicies; - /** - * The results of an attack path simulation relevant to this finding. - */ attackExposure?: Schema$AttackExposure; - /** - * Fields related to Backup and DR findings. - */ backupDisasterRecovery?: Schema$BackupDisasterRecovery; - /** - * The canonical name of the finding. It's either "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}" or "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests. - */ chokepoint?: Schema$Chokepoint; - /** - * Fields related to Cloud Armor findings. - */ cloudArmor?: Schema$CloudArmor; - /** - * Cloud DLP data profile that is associated with the finding. - */ cloudDlpDataProfile?: Schema$CloudDlpDataProfile; - /** - * Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding. - */ cloudDlpInspection?: Schema$CloudDlpInspection; - /** - * Details about the compliance implications of the finding. - */ complianceDetails?: Schema$ComplianceDetails; - /** - * Contains compliance information for security standards associated to the finding. - */ compliances?: Schema$Compliance[]; - /** - * Contains information about the IP connection associated with the finding. - */ connections?: Schema$Connection[]; - /** - * Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { "security": { "contacts": [ { "email": "person1@company.com" \}, { "email": "person2@company.com" \} ] \} \} - */ contacts?: {[key: string]: Schema$ContactDetails} | null; - /** - * Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers. - */ containers?: Schema$Container[]; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * Data access events associated with the finding. - */ dataAccessEvents?: Schema$DataAccessEvent[]; - /** - * Database associated with the finding. - */ database?: Schema$Database; - /** - * Data flow events associated with the finding. - */ dataFlowEvents?: Schema$DataFlowEvent[]; - /** - * Data retention deletion events associated with the finding. - */ dataRetentionDeletionEvents?: Schema$DataRetentionDeletionEvent[]; - /** - * Contains more details about the finding. - */ description?: string | null; - /** - * DiscoveredWorkload associated with the finding. - */ discoveredWorkload?: Schema$DiscoveredWorkload; - /** - * Disk associated with the finding. - */ disk?: Schema$Disk; - /** - * The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * Represents exfiltrations associated with the finding. - */ exfiltration?: Schema$Exfiltration; - /** - * External exposure associated with the finding. - */ externalExposure?: Schema$ExternalExposure; - /** - * Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields. - */ externalSystems?: { [key: string]: Schema$GoogleCloudSecuritycenterV1ExternalSystem; } | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * File associated with the finding. - */ files?: Schema$File[]; - /** - * The class of the finding. - */ findingClass?: string | null; - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests. - */ groupMemberships?: Schema$GroupMembership[]; - /** - * Represents IAM bindings associated with the finding. - */ iamBindings?: Schema$IamBinding[]; - /** - * Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ indicator?: Schema$Indicator; - /** - * IP rules associated with the finding. - */ ipRules?: Schema$IpRules; - /** - * Job associated with the finding. - */ job?: Schema$Job; - /** - * Signature of the kernel rootkit. - */ kernelRootkit?: Schema$KernelRootkit; - /** - * Kubernetes resources associated with the finding. - */ kubernetes?: Schema$Kubernetes; - /** - * The load balancers associated with the finding. - */ loadBalancers?: Schema$LoadBalancer[]; - /** - * Log entries that are relevant to the finding. - */ logEntries?: Schema$LogEntry[]; - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ mitreAttack?: Schema$MitreAttack; - /** - * Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885 - */ moduleName?: string | null; - /** - * Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute. - */ mute?: string | null; - /** - * Output only. The mute information regarding this finding. - */ muteInfo?: Schema$MuteInfo; - /** - * Records additional information about the mute operation, for example, the [mute configuration](/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding. - */ muteInitiator?: string | null; - /** - * Output only. The most recent time this finding was muted or unmuted. - */ muteUpdateTime?: string | null; - /** - * The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". - */ name?: string | null; - /** - * Represents the VPC networks that the resource is attached to. - */ networks?: Schema$Network[]; - /** - * Steps to address the finding. - */ nextSteps?: string | null; - /** - * Notebook associated with the finding. - */ notebook?: Schema$Notebook; - /** - * Contains information about the org policies associated with the finding. - */ orgPolicies?: Schema$OrgPolicy[]; - /** - * The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ parent?: string | null; - /** - * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". - */ parentDisplayName?: string | null; - /** - * PolicyViolationSummary associated with the finding. - */ policyViolationSummary?: Schema$PolicyViolationSummary; - /** - * Represents operating system processes associated with the Finding. - */ processes?: Schema$Process[]; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Secret associated with the finding. - */ secret?: Schema$Secret; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$SecurityMarks; - /** - * The security posture associated with the finding. - */ securityPosture?: Schema$SecurityPosture; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests. - */ toxicCombination?: Schema$ToxicCombination; - /** - * VertexAi associated with the finding. - */ vertexAi?: Schema$VertexAi; - /** - * Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ vulnerability?: Schema$Vulnerability; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Compliance framework associated with the finding. - */ export interface Schema$Framework { - /** - * Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads - */ category?: string[] | null; - /** - * The controls associated with the framework. - */ controls?: Schema$Control[]; - /** - * Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework - */ displayName?: string | null; - /** - * Name of the framework associated with the finding - */ name?: string | null; - /** - * Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture) - */ type?: string | null; } - /** - * Google Cloud metadata associated with the resource. Only applicable if the finding's cloud provider is Google Cloud. - */ export interface Schema$GcpMetadata { - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$GoogleCloudSecuritycenterV2Folder[]; - /** - * The name of the organization that the resource belongs to. - */ organization?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; } - /** - * Represents a geographical location for a given access. - */ export interface Schema$Geolocation { - /** - * A CLDR. - */ regionCode?: string | null; } - /** - * Request message for `GetIamPolicy` method. - */ export interface Schema$GetIamPolicyRequest { - /** - * OPTIONAL: A `GetPolicyOptions` object for specifying options to `GetIamPolicy`. - */ options?: Schema$GetPolicyOptions; } - /** - * Encapsulates settings provided to GetIamPolicy. - */ export interface Schema$GetPolicyOptions { - /** - * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). - */ requestedPolicyVersion?: number | null; } - /** - * Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV1beta1Finding { - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. - */ eventTime?: string | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}" - */ - name?: string | null; - /** - * Immutable. The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ + name?: string | null; parent?: string | null; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV1beta1SecurityMarks; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV1beta1SecurityMarks { - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * Configures how to deliver Findings to BigQuery Instance. - */ export interface Schema$GoogleCloudSecuritycenterV1BigQueryExport { - /** - * Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation. - */ createTime?: string | null; - /** - * The dataset to write findings' updates to. Its format is "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). - */ dataset?: string | null; - /** - * The description of the export (max of 1024 characters). - */ description?: string | null; - /** - * Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update. - */ mostRecentEditor?: string | null; - /** - * The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. - */ name?: string | null; - /** - * Output only. The service account that needs permission to create table and upload data to the BigQuery dataset. - */ principal?: string | null; - /** - * Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update. - */ updateTime?: string | null; } - /** - * Represents a Kubernetes RoleBinding or ClusterRoleBinding. - */ export interface Schema$GoogleCloudSecuritycenterV1Binding { - /** - * Name for the binding. - */ name?: string | null; - /** - * Namespace for the binding. - */ ns?: string | null; - /** - * The Role or ClusterRole referenced by the binding. - */ role?: Schema$Role; - /** - * Represents one or more subjects that are bound to the role. Not always available for PATCH requests. - */ subjects?: Schema$Subject[]; } - /** - * The response to a BulkMute request. Contains the LRO information. - */ export interface Schema$GoogleCloudSecuritycenterV1BulkMuteFindingsResponse {} - /** - * Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify. - */ export interface Schema$GoogleCloudSecuritycenterV1CustomConfig { - /** - * Custom output properties. - */ customOutput?: Schema$GoogleCloudSecuritycenterV1CustomOutputSpec; - /** - * Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks. - */ description?: string | null; - /** - * The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated. - */ predicate?: Schema$Expr; - /** - * An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the `nextSteps` property of the finding JSON. - */ recommendation?: string | null; - /** - * The resource types that the custom module operates on. Each custom module can specify up to 5 resource types. - */ resourceSelector?: Schema$GoogleCloudSecuritycenterV1ResourceSelector; - /** - * The severity to assign to findings generated by the module. - */ severity?: string | null; } - /** - * A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under `sourceProperties`. - */ export interface Schema$GoogleCloudSecuritycenterV1CustomOutputSpec { - /** - * A list of custom output properties to add to the finding. - */ properties?: Schema$GoogleCloudSecuritycenterV1Property[]; } - /** - * An EffectiveSecurityHealthAnalyticsCustomModule is the representation of a Security Health Analytics custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective enablement_state for the module in all child folders or projects is also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only. - */ export interface Schema$GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule { - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * Output only. The user-specified configuration for the module. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * Output only. The display name for the custom module. The name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. - */ displayName?: string | null; - /** - * Output only. The effective state of enablement for the module at the given level of the hierarchy. - */ enablementState?: string | null; - /** - * Output only. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}" - */ name?: string | null; } - /** - * Representation of third party SIEM/SOAR fields within SCC. - */ export interface Schema$GoogleCloudSecuritycenterV1ExternalSystem { - /** - * References primary/secondary etc assignees in the external system. - */ assignees?: string[] | null; - /** - * The time when the case was closed, as reported by the external system. - */ caseCloseTime?: string | null; - /** - * The time when the case was created, as reported by the external system. - */ caseCreateTime?: string | null; - /** - * The priority of the finding's corresponding case in the external system. - */ casePriority?: string | null; - /** - * The SLA of the finding's corresponding case in the external system. - */ caseSla?: string | null; - /** - * The link to the finding's corresponding case in the external system. - */ caseUri?: string | null; - /** - * The time when the case was last updated, as reported by the external system. - */ externalSystemUpdateTime?: string | null; - /** - * The identifier that's used to track the finding's corresponding case in the external system. - */ externalUid?: string | null; - /** - * Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" - */ name?: string | null; - /** - * The most recent status of the finding's corresponding case, as reported by the external system. - */ status?: string | null; - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ ticketInfo?: Schema$TicketInfo; } - /** - * A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings. - */ export interface Schema$GoogleCloudSecuritycenterV1MuteConfig { - /** - * Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation. - */ createTime?: string | null; - /** - * A description of the mute config. - */ description?: string | null; - /** - * The human readable name to be displayed for the mute config. - */ displayName?: string | null; - /** - * Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings. - */ expiryTime?: string | null; - /** - * Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:` - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update. - */ mostRecentEditor?: string | null; - /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` - */ name?: string | null; - /** - * Optional. The type of the mute config, which determines what type of mute state the config affects. The static mute state takes precedence over the dynamic mute state. Immutable after creation. STATIC by default if not set during creation. - */ type?: string | null; - /** - * Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update. - */ updateTime?: string | null; } - /** - * Cloud SCC's Notification - */ export interface Schema$GoogleCloudSecuritycenterV1NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to this notification's Finding. - */ resource?: Schema$GoogleCloudSecuritycenterV1Resource; } - /** - * Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Finding { - /** - * The canonical name of the finding. It's either "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}" or "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. Must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}" - */ name?: string | null; - /** - * The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ parent?: string | null; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV1p1beta1SecurityMarks; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Security Command Center's Notification - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$GoogleCloudSecuritycenterV1p1beta1Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to the notification. - */ resource?: Schema$GoogleCloudSecuritycenterV1p1beta1Resource; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Resource { - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$GoogleCloudSecuritycenterV1p1beta1Folder[]; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project id that the resource belongs to. - */ projectDisplayName?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1SecurityMarks { - /** - * The canonical name of the marks. Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "folders/{folder_id\}/assets/{asset_id\}/securityMarks" "projects/{project_number\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * An individual name-value pair that defines a custom source property. - */ export interface Schema$GoogleCloudSecuritycenterV1Property { - /** - * Name of the property for the custom output. - */ name?: string | null; - /** - * The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks. - */ valueExpression?: Schema$Expr; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV1Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV1ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$AzureMetadata; - /** - * Indicates which cloud provider the resource resides in. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$Folder[]; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Indicates which organization or tenant in the cloud provider the finding applies to. - */ organization?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id\}/folders/{folder_id\}/folders/{folder_id\}/projects/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The parent service or product from which the resource is provided, for example, GKE or SNS. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * The App Hub Application associated with the finding's resource. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplication { - /** - * Consumer provided attributes for the application - */ - attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ + attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * Resource for selecting resource type. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceSelector { - /** - * The resource types to run the detector on. - */ resourceTypes?: string[] | null; } - /** - * A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceValueConfig { - /** - * Cloud provider this configuration applies to - */ cloudProvider?: string | null; - /** - * Output only. Timestamp this resource value configuration was created. - */ createTime?: string | null; - /** - * Description of the resource value configuration. - */ description?: string | null; - /** - * Name for the resource value configuration - */ name?: string | null; - /** - * List of resource labels to search for, evaluated with `AND`. For example, `"resource_labels_selector": {"key": "value", "env": "prod"\}` will match resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.com/resource-manager/docs/creating-managing-labels - */ resourceLabelsSelector?: {[key: string]: string} | null; - /** - * Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "storage.googleapis.com/Bucket" resources. - */ resourceType?: string | null; - /** - * Required. Resource value level this expression represents - */ resourceValue?: string | null; - /** - * Project or folder to scope this configuration to. For example, "project/456" would apply this configuration only to resources in "project/456" scope will be checked with `AND` of other resources. - */ scope?: string | null; - /** - * A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. "bigquery.googleapis.com/Dataset". - */ sensitiveDataProtectionMapping?: Schema$GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping; - /** - * Required. Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of "tagValues/123". Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing - */ tagValues?: string[] | null; - /** - * Output only. Timestamp this resource value configuration was last updated. - */ updateTime?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * Represents an instance of a Security Health Analytics custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by the child folders and projects. - */ export interface Schema$GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule { - /** - * Output only. If empty, indicates that the custom module was created in the organization, folder, or project in which you are viewing the custom module. Otherwise, `ancestor_module` specifies the organization or folder from which the custom module is inherited. - */ ancestorModule?: string | null; - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * The user specified custom configuration for the module. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * The display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. - */ displayName?: string | null; - /** - * The enablement state of the custom module. - */ enablementState?: string | null; - /** - * Output only. The editor that last updated the custom module. - */ lastEditor?: string | null; - /** - * Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. - */ name?: string | null; - /** - * Output only. The time at which the custom module was last updated. - */ updateTime?: string | null; } - /** - * Resource value mapping for Sensitive Data Protection findings. If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration. - */ export interface Schema$GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping { - /** - * Resource value mapping for high-sensitivity Sensitive Data Protection findings - */ highSensitivityMapping?: string | null; - /** - * Resource value mapping for medium-sensitivity Sensitive Data Protection findings - */ mediumSensitivityMapping?: string | null; } - /** - * Represents an access event. - */ export interface Schema$GoogleCloudSecuritycenterV2Access { - /** - * Caller's IP address, such as "1.1.1.1". - */ callerIp?: string | null; - /** - * The caller IP's geolocation, which identifies where the call came from. - */ callerIpGeo?: Schema$GoogleCloudSecuritycenterV2Geolocation; - /** - * The method that the service account called, e.g. "SetIamPolicy". - */ methodName?: string | null; - /** - * Associated email, such as "foo@google.com". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). - */ principalEmail?: string | null; - /** - * A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name\}/subject/{subject\}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name\}[{subject\}]`. - */ principalSubject?: string | null; - /** - * The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. - */ serviceAccountDelegationInfo?: Schema$GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo[]; - /** - * The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/{PROJECT_ID\}/serviceAccounts/{ACCOUNT\}/keys/{key\}". - */ serviceAccountKeyName?: string | null; - /** - * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" - */ serviceName?: string | null; - /** - * The caller's user agent string associated with the finding. - */ userAgent?: string | null; - /** - * Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application. - */ userAgentFamily?: string | null; - /** - * A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username. - */ userName?: string | null; } - /** - * Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AccessReview { - /** - * The API group of the resource. "*" means all. - */ group?: string | null; - /** - * The name of the resource being requested. Empty means all. - */ name?: string | null; - /** - * Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by "" (empty). - */ ns?: string | null; - /** - * The optional resource type requested. "*" means all. - */ resource?: string | null; - /** - * The optional subresource type. - */ subresource?: string | null; - /** - * A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. "*" means all. - */ verb?: string | null; - /** - * The API version of the resource. "*" means all. - */ version?: string | null; } - /** - * Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection). - */ export interface Schema$GoogleCloudSecuritycenterV2AdaptiveProtection { - /** - * A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation. - */ confidence?: number | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Details about resources affected by this finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AffectedResources { - /** - * The count of resources affected by the finding. - */ count?: string | null; } - /** - * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The agent principal that accessed the data. - */ principalSubject?: string | null; } - /** - * Contains information about the AI model associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AiModel { - /** - * The platform on which the model is deployed. - */ deploymentPlatform?: string | null; - /** - * The user defined display name of model. Ex. baseline-classification-model - */ displayName?: string | null; - /** - * The domain of the model, for example, “image-classification”. - */ domain?: string | null; - /** - * The name of the model library, for example, “transformers”. - */ library?: string | null; - /** - * The region in which the model is used, for example, “us-central1”. - */ location?: string | null; - /** - * The name of the AI model, for example, "gemini:1.0.0". - */ name?: string | null; - /** - * The publisher of the model, for example, “google” or “nvidia”. - */ publisher?: string | null; - /** - * The purpose of the model, for example, "Inteference" or "Training". - */ usageCategory?: string | null; } - /** - * Allowed IP rule. - */ export interface Schema$GoogleCloudSecuritycenterV2Allowed { - /** - * Optional. Optional list of allowed IP rules. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRule[]; } - /** - * Represents an application associated with a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Application { - /** - * The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`. - */ baseUri?: string | null; - /** - * The full URI with payload that could be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`. - */ fullUri?: string | null; } - /** - * Represents the result of evaluating artifact guard policies. - */ export interface Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicies { - /** - * A list of failing policies. - */ failingPolicies?: Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicy[]; - /** - * The ID of the resource that has policies configured for it. - */ resourceId?: string | null; } - /** - * Represents an artifact guard policy. - */ export interface Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicy { - /** - * The reason for the policy failure, for example, "severity=HIGH AND max_vuln_count=2". - */ failureReason?: string | null; - /** - * The ID of the failing policy, for example, "organizations/3392779/locations/global/policies/prod-policy". - */ policyId?: string | null; - /** - * The type of the policy evaluation. - */ type?: string | null; } - /** - * Information about DDoS attack volume and classification. - */ export interface Schema$GoogleCloudSecuritycenterV2Attack { - /** - * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'. - */ classification?: string | null; - /** - * Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead. - */ volumeBps?: number | null; - /** - * Total BPS (bytes per second) volume of attack. - */ volumeBpsLong?: string | null; - /** - * Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead. - */ volumePps?: number | null; - /** - * Total PPS (packets per second) volume of attack. - */ volumePpsLong?: string | null; } - /** - * An attack exposure contains the results of an attack path simulation run. - */ export interface Schema$GoogleCloudSecuritycenterV2AttackExposure { - /** - * The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789` - */ attackExposureResult?: string | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedHighValueResourcesCount?: number | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedLowValueResourcesCount?: number | null; - /** - * The number of medium value resources that are exposed as a result of this finding. - */ exposedMediumValueResourcesCount?: number | null; - /** - * The most recent time the attack exposure was updated on this finding. - */ latestCalculationTime?: string | null; - /** - * A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate. - */ score?: number | null; - /** - * Output only. What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not. - */ state?: string | null; } - /** - * An AWS account that is a member of an organization. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsAccount { - /** - * The unique identifier (ID) of the account, containing exactly 12 digits. - */ id?: string | null; - /** - * The friendly name of this account. - */ name?: string | null; } - /** - * AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsMetadata { - /** - * The AWS account associated with the resource. - */ account?: Schema$GoogleCloudSecuritycenterV2AwsAccount; - /** - * The AWS organization associated with the resource. - */ organization?: Schema$GoogleCloudSecuritycenterV2AwsOrganization; - /** - * A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level. - */ organizationalUnits?: Schema$GoogleCloudSecuritycenterV2AwsOrganizationalUnit[]; } - /** - * An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsOrganization { - /** - * The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires "o-" followed by from 10 to 32 lowercase letters or digits. - */ id?: string | null; } - /** - * An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsOrganizationalUnit { - /** - * The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits. For example, "ou-ab12-cd34ef56". - */ id?: string | null; - /** - * The friendly name of the OU. - */ name?: string | null; } - /** - * Represents an Azure management group. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureManagementGroup { - /** - * The display name of the Azure management group. - */ - displayName?: string | null; - /** - * The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`. - */ + displayName?: string | null; id?: string | null; } - /** - * Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureMetadata { - /** - * A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level. - */ managementGroups?: Schema$GoogleCloudSecuritycenterV2AzureManagementGroup[]; - /** - * The Azure resource group associated with the resource. - */ resourceGroup?: Schema$GoogleCloudSecuritycenterV2AzureResourceGroup; - /** - * The Azure subscription associated with the resource. - */ subscription?: Schema$GoogleCloudSecuritycenterV2AzureSubscription; - /** - * The Azure Entra tenant associated with the resource. - */ tenant?: Schema$GoogleCloudSecuritycenterV2AzureTenant; } - /** - * Represents an Azure resource group. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureResourceGroup { - /** - * The ID of the Azure resource group. - */ id?: string | null; - /** - * The name of the Azure resource group. This is not a UUID. - */ name?: string | null; } - /** - * Represents an Azure subscription. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureSubscription { - /** - * The display name of the Azure subscription. - */ displayName?: string | null; - /** - * The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`. - */ id?: string | null; } - /** - * Represents a Microsoft Entra tenant. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureTenant { - /** - * The display name of the Azure tenant. - */ displayName?: string | null; - /** - * The ID of the Microsoft Entra tenant, for example, "a11aaa11-aa11-1aa1-11aa-1aaa11a". - */ id?: string | null; } - /** - * Information related to Google Cloud Backup and DR Service findings. - */ export interface Schema$GoogleCloudSecuritycenterV2BackupDisasterRecovery { - /** - * The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`. - */ appliance?: string | null; - /** - * The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`. - */ applications?: string[] | null; - /** - * The timestamp at which the Backup and DR backup was created. - */ backupCreateTime?: string | null; - /** - * The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`. - */ backupTemplate?: string | null; - /** - * The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`. - */ backupType?: string | null; - /** - * The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`. - */ host?: string | null; - /** - * The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`. - */ policies?: string[] | null; - /** - * The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`. - */ policyOptions?: string[] | null; - /** - * The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`. - */ profile?: string | null; - /** - * The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`. - */ storagePool?: string | null; } - /** - * Configures how to deliver Findings to BigQuery Instance. - */ export interface Schema$GoogleCloudSecuritycenterV2BigQueryExport { - /** - * Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation. - */ createTime?: string | null; - /** - * Output only. The resource name of the Cloud KMS `CryptoKey` used to protect this configuration's data, if configured during Security Command Center activation. - */ cryptoKeyName?: string | null; - /** - * The dataset to write findings' updates to. Its format is "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). - */ dataset?: string | null; - /** - * The description of the export (max of 1024 characters). - */ description?: string | null; - /** - * Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update. - */ mostRecentEditor?: string | null; - /** - * Identifier. The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. The following list shows some examples: + `organizations/{organization_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` + `folders/{folder_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` + `projects/{project_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` This field is provided in responses, and is ignored when provided in create requests. - */ name?: string | null; - /** - * Output only. The service account that needs permission to create table and upload data to the BigQuery dataset. - */ principal?: string | null; - /** - * Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update. - */ updateTime?: string | null; } - /** - * Represents a Kubernetes RoleBinding or ClusterRoleBinding. - */ export interface Schema$GoogleCloudSecuritycenterV2Binding { - /** - * Name for the binding. - */ name?: string | null; - /** - * Namespace for the binding. - */ ns?: string | null; - /** - * The Role or ClusterRole referenced by the binding. - */ role?: Schema$GoogleCloudSecuritycenterV2Role; - /** - * Represents one or more subjects that are bound to the role. Not always available for PATCH requests. - */ subjects?: Schema$GoogleCloudSecuritycenterV2Subject[]; } - /** - * The response to a BulkMute request. Contains the LRO information. - */ export interface Schema$GoogleCloudSecuritycenterV2BulkMuteFindingsResponse {} - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). - */ export interface Schema$GoogleCloudSecuritycenterV2Chokepoint { - /** - * List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings. - */ relatedFindings?: string[] | null; } - /** - * Fields related to Google Cloud Armor findings. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudArmor { - /** - * Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview). - */ adaptiveProtection?: Schema$GoogleCloudSecuritycenterV2AdaptiveProtection; - /** - * Information about DDoS attack volume and classification. - */ attack?: Schema$GoogleCloudSecuritycenterV2Attack; - /** - * Duration of attack from the start until the current moment (updated every 5 minutes). - */ duration?: string | null; - /** - * Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview). - */ requests?: Schema$GoogleCloudSecuritycenterV2Requests; - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ securityPolicy?: Schema$GoogleCloudSecuritycenterV2SecurityPolicy; - /** - * Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS attacks, or "L_7" for Layer 7 DDoS attacks. - */ threatVector?: string | null; } - /** - * CloudControl associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudControl { - /** - * Name of the CloudControl associated with the finding. - */ cloudControlName?: string | null; - /** - * Policy type of the CloudControl - */ policyType?: string | null; - /** - * Type of cloud control. - */ type?: string | null; - /** - * Version of the Cloud Control - */ version?: number | null; } - /** - * The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudDlpDataProfile { - /** - * Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`. - */ dataProfile?: string | null; - /** - * Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type. - */ infoTypes?: Schema$GoogleCloudSecuritycenterV2InfoType[]; - /** - * The resource hierarchy level at which the data profile was generated. - */ parentType?: string | null; } - /** - * Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudDlpInspection { - /** - * Whether Cloud DLP scanned the complete resource or a sampled subset. - */ fullScan?: boolean | null; - /** - * The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`. - */ infoType?: string | null; - /** - * The number of times Cloud DLP found this infoType within this job and resource. - */ infoTypeCount?: string | null; - /** - * Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`. - */ inspectJob?: string | null; } - /** - * Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) - */ export interface Schema$GoogleCloudSecuritycenterV2CloudLoggingEntry { - /** - * A unique identifier for the log entry. - */ insertId?: string | null; - /** - * The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity` Note that this field is not URL-encoded, unlike in `LogEntry`. - */ logId?: string | null; - /** - * The organization, folder, or project of the monitored resource that produced this log entry. - */ resourceContainer?: string | null; - /** - * The time the event described by the log entry occurred. - */ timestamp?: string | null; } - /** - * Contains compliance information about a security standard indicating unmet recommendations. - */ export interface Schema$GoogleCloudSecuritycenterV2Compliance { - /** - * Policies within the standard or benchmark, for example, A.12.4.1 - */ ids?: string[] | null; - /** - * Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP. - */ standard?: string | null; - /** - * Version of the standard or benchmark, for example, 1.1 - */ version?: string | null; } - /** - * Compliance Details associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2ComplianceDetails { - /** - * CloudControl associated with the finding - */ cloudControl?: Schema$GoogleCloudSecuritycenterV2CloudControl; - /** - * Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier - */ cloudControlDeploymentNames?: string[] | null; - /** - * Details of Frameworks associated with the finding - */ frameworks?: Schema$GoogleCloudSecuritycenterV2Framework[]; } - /** - * Contains information about the IP connection associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Connection { - /** - * Destination IP address. Not present for sockets that are listening and not connected. - */ destinationIp?: string | null; - /** - * Destination port. Not present for sockets that are listening and not connected. - */ destinationPort?: number | null; - /** - * IANA Internet Protocol Number such as TCP(6) and UDP(17). - */ protocol?: string | null; - /** - * Source IP address. - */ sourceIp?: string | null; - /** - * Source port. - */ sourcePort?: number | null; } - /** - * The email address of a contact. - */ export interface Schema$GoogleCloudSecuritycenterV2Contact { - /** - * An email address. For example, "`person123@company.com`". - */ email?: string | null; } - /** - * Details about specific contacts - */ export interface Schema$GoogleCloudSecuritycenterV2ContactDetails { - /** - * A list of contacts - */ contacts?: Schema$GoogleCloudSecuritycenterV2Contact[]; } - /** - * Container associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Container { - /** - * The time that the container was created. - */ createTime?: string | null; - /** - * Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest. - */ imageId?: string | null; - /** - * Container labels, as provided by the container runtime. - */ labels?: Schema$GoogleCloudSecuritycenterV2Label[]; - /** - * Name of the container. - */ name?: string | null; - /** - * Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags. - */ uri?: string | null; } - /** - * Compliance control associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Control { - /** - * Name of the Control - */ controlName?: string | null; - /** - * Display name of the control. For example, AU-02. - */ displayName?: string | null; } - /** - * CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability. - */ export interface Schema$GoogleCloudSecuritycenterV2Cve { - /** - * Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document - */ cvssv3?: Schema$GoogleCloudSecuritycenterV2Cvssv3; - /** - * The exploitation activity of the vulnerability in the wild. - */ exploitationActivity?: string | null; - /** - * Date the first publicly available exploit or PoC was released. - */ exploitReleaseDate?: string | null; - /** - * Date of the earliest known exploitation. - */ firstExploitationDate?: string | null; - /** - * The unique identifier for the vulnerability. e.g. CVE-2021-34527 - */ id?: string | null; - /** - * The potential impact of the vulnerability if it was to be exploited. - */ impact?: string | null; - /** - * Whether or not the vulnerability has been observed in the wild. - */ observedInTheWild?: boolean | null; - /** - * Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527 - */ references?: Schema$GoogleCloudSecuritycenterV2Reference[]; - /** - * Whether upstream fix is available for the CVE. - */ upstreamFixAvailable?: boolean | null; - /** - * Whether or not the vulnerability was zero day when the finding was published. - */ zeroDay?: boolean | null; } - /** - * Common Vulnerability Scoring System version 3. - */ export interface Schema$GoogleCloudSecuritycenterV2Cvssv3 { - /** - * This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. - */ attackComplexity?: string | null; - /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. - */ attackVector?: string | null; - /** - * This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. - */ availabilityImpact?: string | null; - /** - * The base score is a function of the base metric scores. - */ baseScore?: number | null; - /** - * This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. - */ confidentialityImpact?: string | null; - /** - * This metric measures the impact to integrity of a successfully exploited vulnerability. - */ integrityImpact?: string | null; - /** - * This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. - */ privilegesRequired?: string | null; - /** - * The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. - */ scope?: string | null; - /** - * This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. - */ userInteraction?: string | null; } - /** - * CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/). - */ export interface Schema$GoogleCloudSecuritycenterV2Cwe { - /** - * The CWE identifier, e.g. CWE-94 - */ id?: string | null; - /** - * Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html - */ references?: Schema$GoogleCloudSecuritycenterV2Reference[]; } - /** - * Details about a data access attempt made by a principal not authorized under applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2DataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; } - /** - * Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided. - */ - export interface Schema$GoogleCloudSecuritycenterV2Database { - /** - * The human-readable name of the database that the user connected to. - */ + export interface Schema$GoogleCloudSecuritycenterV2Database { displayName?: string | null; - /** - * The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change. - */ grantees?: string[] | null; - /** - * Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory. - */ name?: string | null; - /** - * The SQL statement that is associated with the database access. - */ query?: string | null; - /** - * The username used to connect to the database. The username might not be an IAM principal and does not have a set format. - */ userName?: string | null; - /** - * The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion). - */ version?: string | null; } - /** - * Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2DataFlowEvent { - /** - * Unique identifier for data flow event. - */ eventId?: string | null; - /** - * Timestamp of data flow event. - */ eventTime?: string | null; - /** - * The operation performed by the principal for the data flow event. - */ operation?: string | null; - /** - * The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; - /** - * Non-compliant location of the principal or the data destination. - */ violatedLocation?: string | null; } - /** - * Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments. - */ export interface Schema$GoogleCloudSecuritycenterV2DataRetentionDeletionEvent { - /** - * Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000. - */ dataObjectCount?: string | null; - /** - * Timestamp indicating when the event was detected. - */ eventDetectionTime?: string | null; - /** - * Type of the DRD event. - */ eventType?: string | null; - /** - * Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days. - */ maxRetentionAllowed?: string | null; - /** - * Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION. - */ minRetentionAllowed?: string | null; } - /** - * Vertex AI dataset associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Dataset { - /** - * The user defined display name of dataset, e.g. plants-dataset - */ displayName?: string | null; - /** - * Resource name of the dataset, e.g. projects/{project\}/locations/{location\}/datasets/2094040236064505856 - */ name?: string | null; - /** - * Data source, such as a BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod - */ source?: string | null; } - /** - * Denied IP rule. - */ export interface Schema$GoogleCloudSecuritycenterV2Denied { - /** - * Optional. Optional list of denied IP rules. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRule[]; } - /** - * Memory hash detection contributing to the binary family match. - */ export interface Schema$GoogleCloudSecuritycenterV2Detection { - /** - * The name of the binary associated with the memory hash signature detection. - */ binary?: string | null; - /** - * The percentage of memory page hashes in the signature that were matched. - */ percentPagesMatched?: number | null; } - /** - * Represents discovered, customer managed workload that is not registered with the respective GCP service. - */ export interface Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload { - /** - * The confidence in detection of this workload. - */ confidence?: string | null; - /** - * A boolean flag set to true if associated hardware strongly predicts the workload type. - */ detectedRelevantHardware?: boolean | null; - /** - * A boolean flag set to true if associated keywords strongly predict the workload type. - */ detectedRelevantKeywords?: boolean | null; - /** - * A boolean flag set to true if installed packages strongly predict the workload type. - */ detectedRelevantPackages?: boolean | null; - /** - * The type of workload. - */ workloadType?: string | null; } - /** - * Contains information about the disk associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Disk { - /** - * The name of the disk, for example, "https://www.googleapis.com/compute/v1/projects/{project-id\}/zones/{zone-id\}/disks/{disk-id\}". - */ name?: string | null; } - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ export interface Schema$GoogleCloudSecuritycenterV2DiskPath { - /** - * UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid) - */ partitionUuid?: string | null; - /** - * Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh - */ relativePath?: string | null; } - /** - * The record of a dynamic mute rule that matches the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2DynamicMuteRecord { - /** - * When the dynamic mute rule first matched the finding. - */ matchTime?: string | null; - /** - * The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`. - */ muteConfig?: string | null; } - /** - * A name-value pair representing an environment variable used in an operating system process. - */ export interface Schema$GoogleCloudSecuritycenterV2EnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. - */ name?: string | null; - /** - * Environment variable value as a JSON encoded string. - */ val?: string | null; } - /** - * Resource where data was exfiltrated from or exfiltrated to. - */ export interface Schema$GoogleCloudSecuritycenterV2ExfilResource { - /** - * Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket. - */ components?: string[] | null; - /** - * The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name). - */ name?: string | null; } - /** - * Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to. - */ export interface Schema$GoogleCloudSecuritycenterV2Exfiltration { - /** - * If there are multiple sources, then the data is considered "joined" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source. - */ sources?: Schema$GoogleCloudSecuritycenterV2ExfilResource[]; - /** - * If there are multiple targets, each target would get a complete copy of the "joined" source data. - */ targets?: Schema$GoogleCloudSecuritycenterV2ExfilResource[]; - /** - * Total exfiltrated bytes processed for the entire job. - */ totalExfiltratedBytes?: string | null; } - /** - * Details about the externally exposed resource associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2ExternalExposure { - /** - * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" - */ backendBucket?: string | null; - /** - * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ backendService?: string | null; - /** - * The name and version of the exposed web application, for example, "Jenkins 2.184". - */ exposedApplication?: string | null; - /** - * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” - */ exposedEndpoint?: string | null; - /** - * The name and version of the service, for example, "Jupyter Notebook 6.14.0". - */ exposedService?: string | null; - /** - * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". - */ forwardingRule?: string | null; - /** - * Hostname of the exposed application, for example, "https://test-app.a.run.app/" - */ hostnameUri?: string | null; - /** - * The http response returned by the web application. - */ httpResponse?: Schema$GoogleCloudSecuritycenterV2HttpResponse[]; - /** - * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". - */ instanceGroup?: string | null; - /** - * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ internalBackendService?: string | null; - /** - * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ loadBalancerFirewallPolicy?: string | null; - /** - * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". - */ networkEndpointGroup?: string | null; - /** - * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". - */ networkIngressFirewallPolicy?: string | null; - /** - * Private IP address of the exposed endpoint. - */ privateIpAddress?: string | null; - /** - * Port number associated with private IP address. - */ privatePort?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" - */ pscNetworkAttachment?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" - */ pscServiceAttachment?: string | null; - /** - * Public IP address of the exposed endpoint. - */ publicIpAddress?: string | null; - /** - * Public port number of the exposed endpoint. - */ publicPort?: string | null; - /** - * The full resource name of the firewall policy of the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ serviceFirewallPolicy?: string | null; } - /** - * Representation of third party SIEM/SOAR fields within SCC. - */ export interface Schema$GoogleCloudSecuritycenterV2ExternalSystem { - /** - * References primary/secondary etc assignees in the external system. - */ assignees?: string[] | null; - /** - * The time when the case was closed, as reported by the external system. - */ caseCloseTime?: string | null; - /** - * The time when the case was created, as reported by the external system. - */ caseCreateTime?: string | null; - /** - * The priority of the finding's corresponding case in the external system. - */ casePriority?: string | null; - /** - * The SLA of the finding's corresponding case in the external system. - */ caseSla?: string | null; - /** - * The link to the finding's corresponding case in the external system. - */ caseUri?: string | null; - /** - * The time when the case was last updated, as reported by the external system. - */ externalSystemUpdateTime?: string | null; - /** - * The identifier that's used to track the finding's corresponding case in the external system. - */ externalUid?: string | null; - /** - * Full resource name of the external system. The following list shows some examples: + `organizations/1234/sources/5678/findings/123456/externalSystems/jira` + `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` - */ name?: string | null; - /** - * The most recent status of the finding's corresponding case, as reported by the external system. - */ status?: string | null; - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ ticketInfo?: Schema$GoogleCloudSecuritycenterV2TicketInfo; } - /** - * File information about the related binary/library used by an executable, or the script used by a script interpreter - */ export interface Schema$GoogleCloudSecuritycenterV2File { - /** - * Prefix of the file contents as a JSON-encoded string. - */ contents?: string | null; - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ diskPath?: Schema$GoogleCloudSecuritycenterV2DiskPath; - /** - * The load state of the file. - */ fileLoadState?: string | null; - /** - * The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file. - */ hashedSize?: string | null; - /** - * Operation(s) performed on a file. - */ operations?: Schema$GoogleCloudSecuritycenterV2FileOperation[]; - /** - * True when the hash covers only a prefix of the file. - */ partiallyHashed?: boolean | null; - /** - * Absolute path of the file as a JSON encoded string. - */ path?: string | null; - /** - * SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file. - */ sha256?: string | null; - /** - * Size of the file in bytes. - */ size?: string | null; } - /** - * Operation(s) performed on a file. - */ export interface Schema$GoogleCloudSecuritycenterV2FileOperation { - /** - * The type of the operation - */ type?: string | null; } - /** - * Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Finding { - /** - * Access details associated with the finding, such as more information on the caller, which method was accessed, and from where. - */ access?: Schema$GoogleCloudSecuritycenterV2Access; - /** - * AffectedResources associated with the finding. - */ affectedResources?: Schema$GoogleCloudSecuritycenterV2AffectedResources; - /** - * Agent data access events associated with the finding. - */ agentDataAccessEvents?: Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent[]; - /** - * The AI model associated with the finding. - */ aiModel?: Schema$GoogleCloudSecuritycenterV2AiModel; - /** - * Represents an application associated with the finding. - */ application?: Schema$GoogleCloudSecuritycenterV2Application; - /** - * ArtifactGuardPolicies associated with the finding. - */ artifactGuardPolicies?: Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicies; - /** - * The results of an attack path simulation relevant to this finding. - */ attackExposure?: Schema$GoogleCloudSecuritycenterV2AttackExposure; - /** - * Fields related to Backup and DR findings. - */ backupDisasterRecovery?: Schema$GoogleCloudSecuritycenterV2BackupDisasterRecovery; - /** - * Output only. The canonical name of the finding. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` The prefix is the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * Immutable. The additional taxonomy group within findings from a given source. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests. - */ chokepoint?: Schema$GoogleCloudSecuritycenterV2Chokepoint; - /** - * Fields related to Cloud Armor findings. - */ cloudArmor?: Schema$GoogleCloudSecuritycenterV2CloudArmor; - /** - * Cloud DLP data profile that is associated with the finding. - */ cloudDlpDataProfile?: Schema$GoogleCloudSecuritycenterV2CloudDlpDataProfile; - /** - * Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding. - */ cloudDlpInspection?: Schema$GoogleCloudSecuritycenterV2CloudDlpInspection; - /** - * Details about the compliance implications of the finding. - */ complianceDetails?: Schema$GoogleCloudSecuritycenterV2ComplianceDetails; - /** - * Contains compliance information for security standards associated to the finding. - */ compliances?: Schema$GoogleCloudSecuritycenterV2Compliance[]; - /** - * Contains information about the IP connection associated with the finding. - */ connections?: Schema$GoogleCloudSecuritycenterV2Connection[]; - /** - * Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { "security": { "contacts": [ { "email": "person1@company.com" \}, { "email": "person2@company.com" \} ] \} \} - */ contacts?: { [key: string]: Schema$GoogleCloudSecuritycenterV2ContactDetails; } | null; - /** - * Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Output only. The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * Output only. The name of the Cloud KMS key used to encrypt this finding, if any. - */ cryptoKeyName?: string | null; - /** - * Data access events associated with the finding. - */ dataAccessEvents?: Schema$GoogleCloudSecuritycenterV2DataAccessEvent[]; - /** - * Database associated with the finding. - */ database?: Schema$GoogleCloudSecuritycenterV2Database; - /** - * Data flow events associated with the finding. - */ dataFlowEvents?: Schema$GoogleCloudSecuritycenterV2DataFlowEvent[]; - /** - * Data retention deletion events associated with the finding. - */ dataRetentionDeletionEvents?: Schema$GoogleCloudSecuritycenterV2DataRetentionDeletionEvent[]; - /** - * Contains more details about the finding. - */ description?: string | null; - /** - * DiscoveredWorkload associated with the finding. - */ discoveredWorkload?: Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload; - /** - * Disk associated with the finding. - */ disk?: Schema$GoogleCloudSecuritycenterV2Disk; - /** - * The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * Represents exfiltrations associated with the finding. - */ - exfiltration?: Schema$GoogleCloudSecuritycenterV2Exfiltration; - /** - * External exposure associated with the finding. - */ + exfiltration?: Schema$GoogleCloudSecuritycenterV2Exfiltration; externalExposure?: Schema$GoogleCloudSecuritycenterV2ExternalExposure; - /** - * Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields. - */ externalSystems?: { [key: string]: Schema$GoogleCloudSecuritycenterV2ExternalSystem; } | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * File associated with the finding. - */ files?: Schema$GoogleCloudSecuritycenterV2File[]; - /** - * The class of the finding. - */ findingClass?: string | null; - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests. - */ groupMemberships?: Schema$GoogleCloudSecuritycenterV2GroupMembership[]; - /** - * Represents IAM bindings associated with the finding. - */ iamBindings?: Schema$GoogleCloudSecuritycenterV2IamBinding[]; - /** - * Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ indicator?: Schema$GoogleCloudSecuritycenterV2Indicator; - /** - * IP rules associated with the finding. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRules; - /** - * Job associated with the finding. - */ job?: Schema$GoogleCloudSecuritycenterV2Job; - /** - * Signature of the kernel rootkit. - */ kernelRootkit?: Schema$GoogleCloudSecuritycenterV2KernelRootkit; - /** - * Kubernetes resources associated with the finding. - */ kubernetes?: Schema$GoogleCloudSecuritycenterV2Kubernetes; - /** - * The load balancers associated with the finding. - */ loadBalancers?: Schema$GoogleCloudSecuritycenterV2LoadBalancer[]; - /** - * Log entries that are relevant to the finding. - */ logEntries?: Schema$GoogleCloudSecuritycenterV2LogEntry[]; - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ mitreAttack?: Schema$GoogleCloudSecuritycenterV2MitreAttack; - /** - * Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885 - */ moduleName?: string | null; - /** - * Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute. - */ mute?: string | null; - /** - * Output only. The mute information regarding this finding. - */ muteInfo?: Schema$GoogleCloudSecuritycenterV2MuteInfo; - /** - * Records additional information about the mute operation, for example, the [mute configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding. - */ muteInitiator?: string | null; - /** - * Output only. The most recent time this finding was muted or unmuted. - */ muteUpdateTime?: string | null; - /** - * Identifier. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` - */ name?: string | null; - /** - * Represents the VPC networks that the resource is attached to. - */ networks?: Schema$GoogleCloudSecuritycenterV2Network[]; - /** - * Steps to address the finding. - */ nextSteps?: string | null; - /** - * Notebook associated with the finding. - */ notebook?: Schema$GoogleCloudSecuritycenterV2Notebook; - /** - * Contains information about the org policies associated with the finding. - */ orgPolicies?: Schema$GoogleCloudSecuritycenterV2OrgPolicy[]; - /** - * The relative resource name of the source and location the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}` + `folders/{folders_id\}/sources/{source_id\}` + `projects/{projects_id\}/sources/{source_id\}` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}` + `folders/{folders_id\}/sources/{source_id\}/locations/{location_id\}` + `projects/{projects_id\}/sources/{source_id\}/locations/{location_id\}` - */ parent?: string | null; - /** - * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". - */ parentDisplayName?: string | null; - /** - * PolicyViolationSummary associated with the finding. - */ policyViolationSummary?: Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary; - /** - * Represents operating system processes associated with the Finding. - */ processes?: Schema$GoogleCloudSecuritycenterV2Process[]; - /** - * Immutable. For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. - */ resourceName?: string | null; - /** - * Secret associated with the finding. - */ secret?: Schema$GoogleCloudSecuritycenterV2Secret; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV2SecurityMarks; - /** - * The security posture associated with the finding. - */ securityPosture?: Schema$GoogleCloudSecuritycenterV2SecurityPosture; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * Output only. The state of the finding. - */ state?: string | null; - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests. - */ toxicCombination?: Schema$GoogleCloudSecuritycenterV2ToxicCombination; - /** - * VertexAi associated with the finding. - */ vertexAi?: Schema$GoogleCloudSecuritycenterV2VertexAi; - /** - * Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ vulnerability?: Schema$GoogleCloudSecuritycenterV2Vulnerability; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$GoogleCloudSecuritycenterV2Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Compliance framework associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Framework { - /** - * Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads - */ category?: string[] | null; - /** - * The controls associated with the framework. - */ controls?: Schema$GoogleCloudSecuritycenterV2Control[]; - /** - * Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework - */ displayName?: string | null; - /** - * Name of the framework associated with the finding - */ name?: string | null; - /** - * Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture) - */ type?: string | null; } - /** - * Represents a geographical location for a given access. - */ export interface Schema$GoogleCloudSecuritycenterV2Geolocation { - /** - * A CLDR. - */ regionCode?: string | null; } - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. - */ export interface Schema$GoogleCloudSecuritycenterV2GroupMembership { - /** - * ID of the group. - */ groupId?: string | null; - /** - * Type of group. - */ groupType?: string | null; } - /** - * The http response returned by the web application. - */ export interface Schema$GoogleCloudSecuritycenterV2HttpResponse { - /** - * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". - */ path?: string | null; - /** - * The http response code returned by the web application, for example, 200. - */ statusCode?: string | null; } - /** - * Represents a particular IAM binding, which captures a member's role addition, removal, or state. - */ export interface Schema$GoogleCloudSecuritycenterV2IamBinding { - /** - * The action that was performed on a Binding. - */ action?: string | null; - /** - * A single identity requesting access for a Cloud Platform resource, for example, "foo@google.com". - */ member?: string | null; - /** - * Role that is assigned to "members". For example, "roles/viewer", "roles/editor", or "roles/owner". - */ role?: string | null; } - /** - * Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ export interface Schema$GoogleCloudSecuritycenterV2Indicator { - /** - * List of domains associated to the Finding. - */ domains?: string[] | null; - /** - * The list of IP addresses that are associated with the finding. - */ ipAddresses?: string[] | null; - /** - * The list of matched signatures indicating that the given process is present in the environment. - */ signatures?: Schema$GoogleCloudSecuritycenterV2ProcessSignature[]; - /** - * The list of URIs associated to the Findings. - */ uris?: string[] | null; } - /** - * Type of information detected by the API. - */ export interface Schema$GoogleCloudSecuritycenterV2InfoType { - /** - * Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64\}`. - */ name?: string | null; - /** - * Optional custom sensitivity for this InfoType. This only applies to data profiling. - */ sensitivityScore?: Schema$GoogleCloudSecuritycenterV2SensitivityScore; - /** - * Optional version name for this InfoType. - */ version?: string | null; } - /** - * IP rule information. - */ export interface Schema$GoogleCloudSecuritycenterV2IpRule { - /** - * Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number. - */ portRanges?: Schema$GoogleCloudSecuritycenterV2PortRange[]; - /** - * The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value. - */ protocol?: string | null; } - /** - * IP rules associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IpRules { - /** - * Tuple with allowed rules. - */ allowed?: Schema$GoogleCloudSecuritycenterV2Allowed; - /** - * Tuple with denied rules. - */ denied?: Schema$GoogleCloudSecuritycenterV2Denied; - /** - * If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ destinationIpRanges?: string[] | null; - /** - * The direction that the rule is applicable to, one of ingress or egress. - */ direction?: string | null; - /** - * Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml. - */ exposedServices?: string[] | null; - /** - * If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ sourceIpRanges?: string[] | null; } - /** - * Security Command Center Issue. - */ export interface Schema$GoogleCloudSecuritycenterV2Issue { - /** - * Output only. The time the issue was created. - */ createTime?: string | null; - /** - * The description of the issue in Markdown format. - */ description?: string | null; - /** - * The finding category or rule name that generated the issue. - */ detection?: string | null; - /** - * The domains of the issue. - */ domains?: Schema$GoogleCloudSecuritycenterV2IssueDomain[]; - /** - * The exposure score of the issue. - */ exposureScore?: number | null; - /** - * The type of the issue. - */ issueType?: string | null; - /** - * The time the issue was last observed. - */ lastObservationTime?: string | null; - /** - * The mute information of the issue. - */ mute?: Schema$GoogleCloudSecuritycenterV2IssueMute; - /** - * Identifier. The name of the issue. Format: organizations/{organization\}/locations/{location\}/issues/{issue\} - */ name?: string | null; - /** - * The primary resource associated with the issue. - */ primaryResource?: Schema$GoogleCloudSecuritycenterV2IssueResource; - /** - * The findings related to the issue. - */ relatedFindings?: Schema$GoogleCloudSecuritycenterV2IssueFinding[]; - /** - * Approaches to remediate the issue in Markdown format. - */ remediations?: string[] | null; - /** - * Additional resources associated with the issue. - */ secondaryResources?: Schema$GoogleCloudSecuritycenterV2IssueResource[]; - /** - * The security context of the issue. - */ securityContexts?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContext[]; - /** - * The severity of the issue. - */ severity?: string | null; - /** - * Output only. The state of the issue. - */ state?: string | null; - /** - * Output only. The time the issue was last updated. - */ updateTime?: string | null; } - /** - * The domains of an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueDomain { - /** - * The domain category of the issue. - */ domainCategory?: string | null; } - /** - * Finding related to an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFinding { - /** - * The CVE of the finding. - */ cve?: Schema$GoogleCloudSecuritycenterV2IssueFindingCve; - /** - * The name of the finding. - */ name?: string | null; - /** - * The security bulletin of the finding. - */ securityBulletin?: Schema$GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin; } - /** - * The CVE of the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFindingCve { - /** - * The CVE name. - */ name?: string | null; } - /** - * The security bulletin of the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin { - /** - * The security bulletin name. - */ name?: string | null; } - /** - * The mute information of the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueMute { - /** - * The email address of the user who last changed the mute state of the issue. - */ muteInitiator?: string | null; - /** - * The user-provided reason for muting the issue. - */ muteReason?: string | null; - /** - * Output only. The mute state of the issue. - */ muteState?: string | null; - /** - * The time the issue was muted. - */ muteUpdateTime?: string | null; } - /** - * A resource associated with the an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision; - /** - * The AppHub application associated with the resource, if any. Only populated for the primary resource. - */ application?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplication; - /** - * The AWS metadata of the resource associated with the issue. Only populated for AWS resources. - */ awsMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadata; - /** - * The Azure metadata of the resource associated with the issue. Only populated for Azure resources. - */ azureMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadata; - /** - * The cloud provider of the resource associated with the issue. - */ cloudProvider?: string | null; - /** - * The resource-type specific display name of the resource associated with the issue. - */ displayName?: string | null; - /** - * The Google Cloud metadata of the resource associated with the issue. Only populated for Google Cloud resources. - */ googleCloudMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata; - /** - * The full resource name of the resource associated with the issue. - */ name?: string | null; - /** - * The type of the resource associated with the issue. - */ type?: string | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; - } - /** - * Represents an ADC template associated with the finding. - */ + } export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * The AppHub application associated with the resource, if any. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * The AWS metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadata { - /** - * The AWS account of the resource associated with the issue. - */ account?: Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount; } - /** - * The AWS account of the resource associated with the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount { - /** - * The AWS account ID of the resource associated with the issue. - */ id?: string | null; - /** - * The AWS account name of the resource associated with the issue. - */ name?: string | null; } - /** - * The Azure metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadata { - /** - * The Azure subscription of the resource associated with the issue. - */ subscription?: Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription; } - /** - * The Azure subscription of the resource associated with the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription { - /** - * The Azure subscription display name of the resource associated with the issue. - */ displayName?: string | null; - /** - * The Azure subscription ID of the resource associated with the issue. - */ id?: string | null; } - /** - * Google Cloud metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata { - /** - * The project ID that the resource associated with the issue belongs to. - */ projectId?: string | null; } - /** - * Security context associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContext { - /** - * The aggregated count of the security context. - */ aggregatedCount?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount; - /** - * The context of the security context. - */ context?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContextContext; } - /** - * Aggregated count of a security context. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount { - /** - * Aggregation key. - */ key?: string | null; - /** - * Aggregation value. - */ value?: number | null; } - /** - * Context of a security context. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContextContext { - /** - * Context type. - */ type?: string | null; - /** - * Context values. - */ values?: string[] | null; } - /** - * Describes a job - */ export interface Schema$GoogleCloudSecuritycenterV2Job { - /** - * Optional. If the job did not complete successfully, this field describes why. - */ errorCode?: number | null; - /** - * Optional. Gives the location where the job ran, such as `US` or `europe-west1` - */ location?: string | null; - /** - * The fully-qualified name for a job. e.g. `projects//jobs/` - */ name?: string | null; - /** - * Output only. State of the job, such as `RUNNING` or `PENDING`. - */ state?: string | null; } - /** - * Kernel mode rootkit signatures. - */ export interface Schema$GoogleCloudSecuritycenterV2KernelRootkit { - /** - * Rootkit name, when available. - */ name?: string | null; - /** - * True if unexpected modifications of kernel code memory are present. - */ unexpectedCodeModification?: boolean | null; - /** - * True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedFtraceHandler?: boolean | null; - /** - * True if interrupt handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedInterruptHandler?: boolean | null; - /** - * True if kernel code pages that are not in the expected kernel or module code regions are present. - */ unexpectedKernelCodePages?: boolean | null; - /** - * True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedKprobeHandler?: boolean | null; - /** - * True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list. - */ unexpectedProcessesInRunqueue?: boolean | null; - /** - * True if unexpected modifications of kernel read-only data memory are present. - */ unexpectedReadOnlyDataModification?: boolean | null; - /** - * True if system call handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedSystemCallHandler?: boolean | null; } - /** - * Kubernetes-related attributes. - */ export interface Schema$GoogleCloudSecuritycenterV2Kubernetes { - /** - * Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding. - */ accessReviews?: Schema$GoogleCloudSecuritycenterV2AccessReview[]; - /** - * Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ bindings?: Schema$GoogleCloudSecuritycenterV2Binding[]; - /** - * GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available. - */ nodePools?: Schema$GoogleCloudSecuritycenterV2NodePool[]; - /** - * Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information. - */ nodes?: Schema$GoogleCloudSecuritycenterV2Node[]; - /** - * Kubernetes objects related to the finding. - */ objects?: Schema$GoogleCloudSecuritycenterV2Object[]; - /** - * Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod. - */ pods?: Schema$GoogleCloudSecuritycenterV2Pod[]; - /** - * Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ roles?: Schema$GoogleCloudSecuritycenterV2Role[]; } - /** - * Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering). - */ export interface Schema$GoogleCloudSecuritycenterV2Label { - /** - * Name of the label. - */ name?: string | null; - /** - * Value that corresponds to the label's name. - */ value?: string | null; } - /** - * Contains information related to the load balancer associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2LoadBalancer { - /** - * The name of the load balancer associated with the finding. - */ name?: string | null; } - /** - * An individual entry in a log. - */ export interface Schema$GoogleCloudSecuritycenterV2LogEntry { - /** - * An individual entry in a log stored in Cloud Logging. - */ cloudLoggingEntry?: Schema$GoogleCloudSecuritycenterV2CloudLoggingEntry; } - /** - * A signature corresponding to memory page hashes. - */ export interface Schema$GoogleCloudSecuritycenterV2MemoryHashSignature { - /** - * The binary family. - */ binaryFamily?: string | null; - /** - * The list of memory hash detections contributing to the binary family match. - */ detections?: Schema$GoogleCloudSecuritycenterV2Detection[]; } - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ export interface Schema$GoogleCloudSecuritycenterV2MitreAttack { - /** - * Additional MITRE ATT&CK tactics related to this finding, if any. - */ additionalTactics?: string[] | null; - /** - * Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques. - */ additionalTechniques?: string[] | null; - /** - * The MITRE ATT&CK tactic most closely represented by this finding, if any. - */ primaryTactic?: string | null; - /** - * The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`). - */ primaryTechniques?: string[] | null; - /** - * The MITRE ATT&CK version referenced by the above fields. E.g. "8". - */ version?: string | null; } - /** - * A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings. - */ export interface Schema$GoogleCloudSecuritycenterV2MuteConfig { - /** - * Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation. - */ createTime?: string | null; - /** - * Output only. The resource name of the Cloud KMS `CryptoKey` used to encrypt this configuration data, if CMEK was enabled during Security Command Center activation. - */ cryptoKeyName?: string | null; - /** - * A description of the mute config. - */ description?: string | null; - /** - * Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings. - */ expiryTime?: string | null; - /** - * Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:` - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update. - */ mostRecentEditor?: string | null; - /** - * Identifier. This field will be ignored if provided on config creation. The following list shows some examples of the format: + `organizations/{organization\}/muteConfigs/{mute_config\}` + `organizations/{organization\}locations/{location\}//muteConfigs/{mute_config\}` + `folders/{folder\}/muteConfigs/{mute_config\}` + `folders/{folder\}/locations/{location\}/muteConfigs/{mute_config\}` + `projects/{project\}/muteConfigs/{mute_config\}` + `projects/{project\}/locations/{location\}/muteConfigs/{mute_config\}` - */ name?: string | null; - /** - * Required. The type of the mute config, which determines what type of mute state the config affects. Immutable after creation. - */ type?: string | null; - /** - * Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update. - */ updateTime?: string | null; } - /** - * Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules. - */ export interface Schema$GoogleCloudSecuritycenterV2MuteInfo { - /** - * The list of dynamic mute rules that currently match the finding. - */ dynamicMuteRecords?: Schema$GoogleCloudSecuritycenterV2DynamicMuteRecord[]; - /** - * If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute. - */ staticMute?: Schema$GoogleCloudSecuritycenterV2StaticMute; } - /** - * Contains information about a VPC network associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Network { - /** - * The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`. - */ name?: string | null; } - /** - * Kubernetes nodes associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Node { - /** - * [Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node. - */ name?: string | null; } - /** - * Provides GKE node pool information. - */ export interface Schema$GoogleCloudSecuritycenterV2NodePool { - /** - * Kubernetes node pool name. - */ name?: string | null; - /** - * Nodes associated with the finding. - */ nodes?: Schema$GoogleCloudSecuritycenterV2Node[]; } - /** - * Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Notebook { - /** - * The user ID of the latest author to modify the notebook. - */ lastAuthor?: string | null; - /** - * The name of the notebook. - */ name?: string | null; - /** - * The most recent time the notebook was updated. - */ notebookUpdateTime?: string | null; - /** - * The source notebook service, for example, "Colab Enterprise". - */ service?: string | null; } - /** - * Cloud SCC's Notification - */ export interface Schema$GoogleCloudSecuritycenterV2NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$GoogleCloudSecuritycenterV2Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to this notification's Finding. - */ resource?: Schema$GoogleCloudSecuritycenterV2Resource; } - /** - * Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview. - */ export interface Schema$GoogleCloudSecuritycenterV2Object { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Kubernetes object group, such as "policy.k8s.io/v1". - */ group?: string | null; - /** - * Kubernetes object kind, such as "Namespace". - */ kind?: string | null; - /** - * Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/. - */ name?: string | null; - /** - * Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/. - */ ns?: string | null; } - /** - * Contains information about the org policies associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2OrgPolicy { - /** - * Identifier. The resource name of the org policy. Example: "organizations/{organization_id\}/policies/{constraint_name\}" - */ name?: string | null; } - /** - * Package is a generic definition of a package. - */ export interface Schema$GoogleCloudSecuritycenterV2Package { - /** - * The CPE URI where the vulnerability was detected. - */ cpeUri?: string | null; - /** - * The name of the package where the vulnerability was detected. - */ packageName?: string | null; - /** - * Type of package, for example, os, maven, or go. - */ packageType?: string | null; - /** - * The version of the package. - */ packageVersion?: string | null; } - /** - * Vertex AI training pipeline associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Pipeline { - /** - * The user-defined display name of pipeline, e.g. plants-classification - */ displayName?: string | null; - /** - * Resource name of the pipeline, e.g. projects/{project\}/locations/{location\}/trainingPipelines/5253428229225578496 - */ name?: string | null; } - /** - * A Kubernetes Pod. - */ export interface Schema$GoogleCloudSecuritycenterV2Pod { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Pod labels. For Kubernetes containers, these are applied to the container. - */ - labels?: Schema$GoogleCloudSecuritycenterV2Label[]; - /** - * Kubernetes Pod name. - */ + labels?: Schema$GoogleCloudSecuritycenterV2Label[]; name?: string | null; - /** - * Kubernetes Pod namespace. - */ ns?: string | null; } - /** - * The policy field that violates the deployed posture and its expected and detected values. - */ export interface Schema$GoogleCloudSecuritycenterV2PolicyDriftDetails { - /** - * The detected value that violates the deployed posture, for example, `false` or `allowed_values={"projects/22831892"\}`. - */ detectedValue?: string | null; - /** - * The value of this field that was configured in a posture, for example, `true` or `allowed_values={"projects/29831892"\}`. - */ expectedValue?: string | null; - /** - * The name of the updated field, for example constraint.implementation.policy_rules[0].enforce - */ field?: string | null; } - /** - * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. - */ export interface Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary { - /** - * Total number of child resources that conform to the policy. - */ conformantResourcesCount?: string | null; - /** - * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". - */ evaluationErrorsCount?: string | null; - /** - * Total count of child resources which were not in scope for evaluation. - */ outOfScopeResourcesCount?: string | null; - /** - * Count of child resources in violation of the policy. - */ policyViolationsCount?: string | null; } - /** - * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. - */ export interface Schema$GoogleCloudSecuritycenterV2PortRange { - /** - * Maximum port value. - */ max?: string | null; - /** - * Minimum port value. - */ min?: string | null; } - /** - * Represents an operating system process. - */ export interface Schema$GoogleCloudSecuritycenterV2Process { - /** - * Process arguments as JSON encoded strings. - */ args?: string[] | null; - /** - * True if `args` is incomplete. - */ argumentsTruncated?: boolean | null; - /** - * File information for the process executable. - */ binary?: Schema$GoogleCloudSecuritycenterV2File; - /** - * Process environment variables. - */ envVariables?: Schema$GoogleCloudSecuritycenterV2EnvironmentVariable[]; - /** - * True if `env_variables` is incomplete. - */ envVariablesTruncated?: boolean | null; - /** - * File information for libraries loaded by the process. - */ libraries?: Schema$GoogleCloudSecuritycenterV2File[]; - /** - * The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`. - */ name?: string | null; - /** - * The parent process ID. - */ parentPid?: string | null; - /** - * The process ID. - */ pid?: string | null; - /** - * When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter. - */ script?: Schema$GoogleCloudSecuritycenterV2File; - /** - * The ID of the user that executed the process. E.g. If this is the root user this will always be 0. - */ userId?: string | null; } - /** - * Indicates what signature matched this process. - */ export interface Schema$GoogleCloudSecuritycenterV2ProcessSignature { - /** - * Signature indicating that a binary family was matched. - */ memoryHashSignature?: Schema$GoogleCloudSecuritycenterV2MemoryHashSignature; - /** - * Describes the type of resource associated with the signature. - */ signatureType?: string | null; - /** - * Signature indicating that a YARA rule was matched. - */ yaraRuleSignature?: Schema$GoogleCloudSecuritycenterV2YaraRuleSignature; } - /** - * Additional Links - */ export interface Schema$GoogleCloudSecuritycenterV2Reference { - /** - * Source of the reference e.g. NVD - */ source?: string | null; - /** - * Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527. - */ uri?: string | null; } - /** - * Information about the requests relevant to the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Requests { - /** - * Allowed RPS (requests per second) over the long term. - */ longTermAllowed?: number | null; - /** - * Denied RPS (requests per second) over the long term. - */ longTermDenied?: number | null; - /** - * For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term. - */ ratio?: number | null; - /** - * Allowed RPS (requests per second) in the short term. - */ shortTermAllowed?: number | null; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV2Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$GoogleCloudSecuritycenterV2AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$GoogleCloudSecuritycenterV2AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV2ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$GoogleCloudSecuritycenterV2AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$GoogleCloudSecuritycenterV2AzureMetadata; - /** - * Indicates which cloud provider the finding is from. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * The Google Cloud metadata associated with the finding. - */ gcpMetadata?: Schema$GcpMetadata; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$GoogleCloudSecuritycenterV2ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id\}/folders/{folder_id\}/folders/{folder_id\}/projects/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The service or resource provider associated with the resource. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * The App Hub Application associated with the finding's resource. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * Represents the path of resources leading up to the resource this finding is about. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourcePath { - /** - * The list of nodes that make the up resource path, ordered from lowest level to highest level. - */ nodes?: Schema$GoogleCloudSecuritycenterV2ResourcePathNode[]; } - /** - * A node within the resource path. Each node represents a resource within the resource hierarchy. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourcePathNode { - /** - * The display name of the resource this node represents. - */ displayName?: string | null; - /** - * The ID of the resource this node represents. - */ id?: string | null; - /** - * The type of resource this node represents. - */ nodeType?: string | null; } - /** - * A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceValueConfig { - /** - * Cloud provider this configuration applies to - */ cloudProvider?: string | null; - /** - * Output only. Timestamp this resource value configuration was created. - */ createTime?: string | null; - /** - * Description of the resource value configuration. - */ description?: string | null; - /** - * Identifier. Name for the resource value configuration - */ name?: string | null; - /** - * List of resource labels to search for, evaluated with `AND`. For example, "resource_labels_selector": {"key": "value", "env": "prod"\} will match resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.com/resource-manager/docs/creating-managing-labels - */ resourceLabelsSelector?: {[key: string]: string} | null; - /** - * Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "storage.googleapis.com/Bucket" resources. - */ resourceType?: string | null; - /** - * Resource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request - */ resourceValue?: string | null; - /** - * Project or folder to scope this configuration to. For example, "project/456" would apply this configuration only to resources in "project/456" scope and will be checked with `AND` of other resources. - */ scope?: string | null; - /** - * A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. "bigquery.googleapis.com/Dataset". - */ sensitiveDataProtectionMapping?: Schema$GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping; - /** - * Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of "tagValues/123". Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing - */ tagValues?: string[] | null; - /** - * Output only. Timestamp this resource value configuration was last updated. - */ updateTime?: string | null; } - /** - * Kubernetes Role or ClusterRole. - */ export interface Schema$GoogleCloudSecuritycenterV2Role { - /** - * Role type. - */ kind?: string | null; - /** - * Role name. - */ name?: string | null; - /** - * Role namespace. - */ ns?: string | null; } - /** - * Details about a secret or credential associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Secret { - /** - * The environment variable containing the secret. - */ environmentVariable?: Schema$GoogleCloudSecuritycenterV2SecretEnvironmentVariable; - /** - * The file containing the secret. - */ filePath?: Schema$GoogleCloudSecuritycenterV2SecretFilePath; - /** - * The status of the secret. - */ status?: Schema$GoogleCloudSecuritycenterV2SecretStatus; - /** - * The type of secret, for example, GCP_API_KEY. - */ type?: string | null; } - /** - * Environment variable containing the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretEnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content. - */ key?: string | null; } - /** - * File path containing the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretFilePath { - /** - * Path to the file. - */ path?: string | null; } - /** - * The status of the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretStatus { - /** - * Time that the secret was found. - */ lastUpdatedTime?: string | null; - /** - * The validity of the secret. - */ validity?: string | null; } - /** - * SecurityBulletin are notifications of vulnerabilities of Google products. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityBulletin { - /** - * ID of the bulletin corresponding to the vulnerability. - */ bulletinId?: string | null; - /** - * Submission time of this Security Bulletin. - */ submissionTime?: string | null; - /** - * This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0 - */ suggestedUpgradeVersion?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityMarks { - /** - * The canonical name of the marks. The following list shows some examples: + `organizations/{organization_id\}/assets/{asset_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` + `folders/{folder_id\}/assets/{asset_id\}/securityMarks` + `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `folders/{folder_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` + `projects/{project_number\}/assets/{asset_id\}/securityMarks` + `projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `projects/{project_number\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name The following list shows some examples: + `organizations/{organization_id\}/assets/{asset_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` - */ name?: string | null; } - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityPolicy { - /** - * The name of the Google Cloud Armor security policy, for example, "my-security-policy". - */ name?: string | null; - /** - * Whether or not the associated rule or policy is in preview mode. - */ preview?: boolean | null; - /** - * The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'. - */ type?: string | null; } - /** - * Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityPosture { - /** - * The name of the updated policy, for example, `projects/{project_id\}/policies/{constraint_name\}`. - */ changedPolicy?: string | null; - /** - * Name of the posture, for example, `CIS-Posture`. - */ name?: string | null; - /** - * The ID of the updated policy, for example, `compute-policy-1`. - */ policy?: string | null; - /** - * The details about a change in an updated policy that violates the deployed posture. - */ policyDriftDetails?: Schema$GoogleCloudSecuritycenterV2PolicyDriftDetails[]; - /** - * The name of the updated policy set, for example, `cis-policyset`. - */ policySet?: string | null; - /** - * The name of the posture deployment, for example, `organizations/{org_id\}/posturedeployments/{posture_deployment_id\}`. - */ postureDeployment?: string | null; - /** - * The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number\}`. - */ postureDeploymentResource?: string | null; - /** - * The version of the posture, for example, `c7cfa2a8`. - */ revisionId?: string | null; } - /** - * Resource value mapping for Sensitive Data Protection findings If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration. - */ export interface Schema$GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping { - /** - * Resource value mapping for high-sensitivity Sensitive Data Protection findings - */ highSensitivityMapping?: string | null; - /** - * Resource value mapping for medium-sensitivity Sensitive Data Protection findings - */ mediumSensitivityMapping?: string | null; - } - /** - * Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive. - */ + } export interface Schema$GoogleCloudSecuritycenterV2SensitivityScore { - /** - * The sensitivity score applied to the resource. - */ score?: string | null; } - /** - * Identity delegation history of an authenticated service account. - */ export interface Schema$GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo { - /** - * The email address of a Google account. - */ principalEmail?: string | null; - /** - * A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name\}/subjects/{subject\}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name\}[{subject\}]` - */ principalSubject?: string | null; } - /** - * Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly. - */ export interface Schema$GoogleCloudSecuritycenterV2StaticMute { - /** - * When the static mute was applied. - */ applyTime?: string | null; - /** - * The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value. - */ state?: string | null; } - /** - * Represents a Kubernetes subject. - */ export interface Schema$GoogleCloudSecuritycenterV2Subject { - /** - * Authentication type for the subject. - */ kind?: string | null; - /** - * Name for the subject. - */ name?: string | null; - /** - * Namespace for the subject. - */ ns?: string | null; } - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ export interface Schema$GoogleCloudSecuritycenterV2TicketInfo { - /** - * The assignee of the ticket in the ticket system. - */ assignee?: string | null; - /** - * The description of the ticket in the ticket system. - */ description?: string | null; - /** - * The identifier of the ticket in the ticket system. - */ id?: string | null; - /** - * The latest status of the ticket, as reported by the ticket system. - */ status?: string | null; - /** - * The time when the ticket was last updated, as reported by the ticket system. - */ updateTime?: string | null; - /** - * The link to the ticket in the ticket system. - */ uri?: string | null; } - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. - */ export interface Schema$GoogleCloudSecuritycenterV2ToxicCombination { - /** - * The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack. - */ attackExposureScore?: number | null; - /** - * List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`. - */ relatedFindings?: string[] | null; } - /** - * Vertex AI-related information associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2VertexAi { - /** - * Datasets associated with the finding. - */ datasets?: Schema$GoogleCloudSecuritycenterV2Dataset[]; - /** - * Pipelines associated with the finding. - */ pipelines?: Schema$GoogleCloudSecuritycenterV2Pipeline[]; } - /** - * Refers to common vulnerability fields e.g. cve, cvss, cwe etc. - */ export interface Schema$GoogleCloudSecuritycenterV2Vulnerability { - /** - * CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ cve?: Schema$GoogleCloudSecuritycenterV2Cve; - /** - * Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability. - */ cwes?: Schema$GoogleCloudSecuritycenterV2Cwe[]; - /** - * The fixed package is relevant to the finding. - */ fixedPackage?: Schema$GoogleCloudSecuritycenterV2Package; - /** - * The offending package is relevant to the finding. - */ offendingPackage?: Schema$GoogleCloudSecuritycenterV2Package; - /** - * Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is. - */ providerRiskScore?: string | null; - /** - * Represents whether the vulnerability is reachable (detected via static analysis) - */ reachable?: boolean | null; - /** - * The security bulletin is relevant to this finding. - */ securityBulletin?: Schema$GoogleCloudSecuritycenterV2SecurityBulletin; } - /** - * A signature corresponding to a YARA rule. - */ export interface Schema$GoogleCloudSecuritycenterV2YaraRuleSignature { - /** - * The name of the YARA rule. - */ yaraRule?: string | null; } - /** - * Request message for grouping by assets. - */ export interface Schema$GroupAssetsRequest { - /** - * When compare_duration is set, the Asset's "state" property is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state" values when compare_duration is specified: * "ADDED": indicates that the asset was not present before compare_duration, but present at reference_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at reference_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and reference_time. This field is ignored if `state` is not a field in `group_by`. - */ compareDuration?: string | null; - /** - * Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `resource_properties.size = 100` is a valid filter string. - */ filter?: string | null; - /** - * Required. Expression that defines what assets fields to use for grouping. The string value should follow SQL syntax: comma separated list of fields. For example: "security_center_properties.resource_project,security_center_properties.project". The following fields are supported when compare_duration is not set: * security_center_properties.resource_project * security_center_properties.resource_type * security_center_properties.resource_parent The following fields are supported when compare_duration is set: * security_center_properties.resource_type - */ groupBy?: string | null; - /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. - */ pageSize?: number | null; - /** - * The value returned by the last `GroupAssetsResponse`; indicates that this is a continuation of a prior `GroupAssets` call, and that the system should return the next page of data. - */ pageToken?: string | null; - /** - * Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. - */ readTime?: string | null; } - /** - * Response message for grouping by assets. - */ export interface Schema$GroupAssetsResponse { - /** - * Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear. - */ groupByResults?: Schema$GroupResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the groupBy request. - */ readTime?: string | null; } - /** - * Request message for grouping by findings. - */ export interface Schema$GroupFindingsRequest { - /** - * Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `source_properties.size = 100` is a valid filter string. - */ filter?: string | null; - /** - * Required. Expression that defines what assets fields to use for grouping (including `state`). The string value should follow SQL syntax: comma separated list of fields. For example: "parent,resource_name". The following fields are supported: * resource_name * category * state * parent - */ groupBy?: string | null; - /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. - */ pageSize?: number | null; - /** - * The value returned by the last `GroupFindingsResponse`; indicates that this is a continuation of a prior `GroupFindings` call, and that the system should return the next page of data. - */ pageToken?: string | null; - /** - * Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. - */ readTime?: string | null; } - /** - * Response message for group by findings. - */ export interface Schema$GroupFindingsResponse { - /** - * Group results. There exists an element for each existing unique combination of property/values. The element contains a count for the number of times those specific property/values appear. - */ groupByResults?: Schema$GroupResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the groupBy request. - */ readTime?: string | null; } - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. - */ export interface Schema$GroupMembership { - /** - * ID of the group. - */ groupId?: string | null; - /** - * Type of group. - */ groupType?: string | null; } - /** - * Result containing the properties and count of a groupBy request. - */ export interface Schema$GroupResult { - /** - * Total count of resources for the given properties. - */ count?: string | null; - /** - * Properties matching the groupBy fields in the request. - */ properties?: {[key: string]: any} | null; } - /** - * The http response returned by the web application. - */ export interface Schema$HttpResponse { - /** - * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". - */ path?: string | null; - /** - * The http response code returned by the web application, for example, 200. - */ statusCode?: string | null; } - /** - * Represents a particular IAM binding, which captures a member's role addition, removal, or state. - */ export interface Schema$IamBinding { - /** - * The action that was performed on a Binding. - */ action?: string | null; - /** - * A single identity requesting access for a Cloud Platform resource, for example, "foo@google.com". - */ member?: string | null; - /** - * Role that is assigned to "members". For example, "roles/viewer", "roles/editor", or "roles/owner". - */ role?: string | null; } - /** - * Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ export interface Schema$Indicator { - /** - * List of domains associated to the Finding. - */ domains?: string[] | null; - /** - * The list of IP addresses that are associated with the finding. - */ ipAddresses?: string[] | null; - /** - * The list of matched signatures indicating that the given process is present in the environment. - */ signatures?: Schema$ProcessSignature[]; - /** - * The list of URIs associated to the Findings. - */ uris?: string[] | null; } - /** - * Type of information detected by the API. - */ export interface Schema$InfoType { - /** - * Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64\}`. - */ name?: string | null; - /** - * Optional custom sensitivity for this InfoType. This only applies to data profiling. - */ sensitivityScore?: Schema$SensitivityScore; - /** - * Optional version name for this InfoType. - */ version?: string | null; } - /** - * IP rule information. - */ export interface Schema$IpRule { - /** - * Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number. - */ portRanges?: Schema$PortRange[]; - /** - * The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value. - */ protocol?: string | null; } - /** - * IP rules associated with the finding. - */ export interface Schema$IpRules { - /** - * Tuple with allowed rules. - */ allowed?: Schema$Allowed; - /** - * Tuple with denied rules. - */ denied?: Schema$Denied; - /** - * If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ destinationIpRanges?: string[] | null; - /** - * The direction that the rule is applicable to, one of ingress or egress. - */ direction?: string | null; - /** - * Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml. - */ exposedServices?: string[] | null; - /** - * If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ sourceIpRanges?: string[] | null; } - /** - * Describes a job - */ export interface Schema$Job { - /** - * Optional. If the job did not complete successfully, this field describes why. - */ errorCode?: number | null; - /** - * Optional. Gives the location where the job ran, such as `US` or `europe-west1` - */ location?: string | null; - /** - * The fully-qualified name for a job. e.g. `projects//jobs/` - */ name?: string | null; - /** - * Output only. State of the job, such as `RUNNING` or `PENDING`. - */ state?: string | null; } - /** - * Kernel mode rootkit signatures. - */ export interface Schema$KernelRootkit { - /** - * Rootkit name, when available. - */ name?: string | null; - /** - * True if unexpected modifications of kernel code memory are present. - */ unexpectedCodeModification?: boolean | null; - /** - * True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedFtraceHandler?: boolean | null; - /** - * True if interrupt handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedInterruptHandler?: boolean | null; - /** - * True if kernel code pages that are not in the expected kernel or module code regions are present. - */ unexpectedKernelCodePages?: boolean | null; - /** - * True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedKprobeHandler?: boolean | null; - /** - * True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list. - */ unexpectedProcessesInRunqueue?: boolean | null; - /** - * True if unexpected modifications of kernel read-only data memory are present. - */ unexpectedReadOnlyDataModification?: boolean | null; - /** - * True if system call handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedSystemCallHandler?: boolean | null; } - /** - * Kubernetes-related attributes. - */ export interface Schema$Kubernetes { - /** - * Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding. - */ accessReviews?: Schema$AccessReview[]; - /** - * Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ bindings?: Schema$GoogleCloudSecuritycenterV1Binding[]; - /** - * GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available. - */ nodePools?: Schema$NodePool[]; - /** - * Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information. - */ nodes?: Schema$Node[]; - /** - * Kubernetes objects related to the finding. - */ objects?: Schema$Object[]; - /** - * Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod. - */ pods?: Schema$Pod[]; - /** - * Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ roles?: Schema$Role[]; } - /** - * Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering). - */ export interface Schema$Label { - /** - * Name of the label. - */ name?: string | null; - /** - * Value that corresponds to the label's name. - */ value?: string | null; } - /** - * Response message for listing assets. - */ export interface Schema$ListAssetsResponse { - /** - * Assets matching the list request. - */ listAssetsResults?: Schema$ListAssetsResult[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the list request. - */ readTime?: string | null; - /** - * The total number of assets matching the query. - */ totalSize?: number | null; } - /** - * Result containing the Asset and its State. - */ export interface Schema$ListAssetsResult { - /** - * Asset matching the search request. - */ asset?: Schema$Asset; - /** - * State of the asset. - */ state?: string | null; } - /** - * Response message for listing findings. - */ export interface Schema$ListFindingsResponse { - /** - * Findings matching the list request. - */ findings?: Schema$GoogleCloudSecuritycenterV1beta1Finding[]; - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Time used for executing the list request. - */ readTime?: string | null; - /** - * The total number of findings matching the query. - */ totalSize?: number | 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[]; - /** - * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. - */ unreachable?: string[] | null; } - /** - * Response message for listing sources. - */ export interface Schema$ListSourcesResponse { - /** - * Token to retrieve the next page of results, or empty if there are no more results. - */ nextPageToken?: string | null; - /** - * Sources belonging to the requested parent. - */ sources?: Schema$Source[]; } - /** - * Contains information related to the load balancer associated with the finding. - */ export interface Schema$LoadBalancer { - /** - * The name of the load balancer associated with the finding. - */ name?: string | null; } - /** - * An individual entry in a log. - */ export interface Schema$LogEntry { - /** - * An individual entry in a log stored in Cloud Logging. - */ cloudLoggingEntry?: Schema$CloudLoggingEntry; } - /** - * A signature corresponding to memory page hashes. - */ export interface Schema$MemoryHashSignature { - /** - * The binary family. - */ binaryFamily?: string | null; - /** - * The list of memory hash detections contributing to the binary family match. - */ detections?: Schema$Detection[]; } - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ export interface Schema$MitreAttack { - /** - * Additional MITRE ATT&CK tactics related to this finding, if any. - */ additionalTactics?: string[] | null; - /** - * Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques. - */ additionalTechniques?: string[] | null; - /** - * The MITRE ATT&CK tactic most closely represented by this finding, if any. - */ primaryTactic?: string | null; - /** - * The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`). - */ primaryTechniques?: string[] | null; - /** - * The MITRE ATT&CK version referenced by the above fields. E.g. "8". - */ version?: string | null; } - /** - * Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules. - */ export interface Schema$MuteInfo { - /** - * The list of dynamic mute rules that currently match the finding. - */ dynamicMuteRecords?: Schema$DynamicMuteRecord[]; - /** - * If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute. - */ staticMute?: Schema$StaticMute; } - /** - * Contains information about a VPC network associated with the finding. - */ export interface Schema$Network { - /** - * The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`. - */ name?: string | null; } - /** - * Kubernetes nodes associated with the finding. - */ export interface Schema$Node { - /** - * [Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node. - */ name?: string | null; } - /** - * Provides GKE node pool information. - */ export interface Schema$NodePool { - /** - * Kubernetes node pool name. - */ name?: string | null; - /** - * Nodes associated with the finding. - */ nodes?: Schema$Node[]; } - /** - * Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding. - */ export interface Schema$Notebook { - /** - * The user ID of the latest author to modify the notebook. - */ lastAuthor?: string | null; - /** - * The name of the notebook. - */ name?: string | null; - /** - * The most recent time the notebook was updated. - */ notebookUpdateTime?: string | null; - /** - * The source notebook service, for example, "Colab Enterprise". - */ service?: string | null; } - /** - * Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview. - */ export interface Schema$Object { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$Container[]; - /** - * Kubernetes object group, such as "policy.k8s.io/v1". - */ group?: string | null; - /** - * Kubernetes object kind, such as "Namespace". - */ kind?: string | null; - /** - * Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/. - */ name?: string | null; - /** - * Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/. - */ ns?: string | null; } - /** - * 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, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. - */ response?: {[key: string]: any} | null; } - /** - * User specified settings that are attached to the Security Command Center organization. - */ export interface Schema$OrganizationSettings { - /** - * The configuration used for Asset Discovery runs. - */ assetDiscoveryConfig?: Schema$AssetDiscoveryConfig; - /** - * A flag that indicates if Asset Discovery should be enabled. If the flag is set to `true`, then discovery of assets will occur. If it is set to `false`, all historical assets will remain, but discovery of future assets will not occur. - */ enableAssetDiscovery?: boolean | null; - /** - * The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/organizationSettings". - */ name?: string | null; } - /** - * Contains information about the org policies associated with the finding. - */ export interface Schema$OrgPolicy { - /** - * The resource name of the org policy. Example: "organizations/{organization_id\}/policies/{constraint_name\}" - */ name?: string | null; } - /** - * Package is a generic definition of a package. - */ export interface Schema$Package { - /** - * The CPE URI where the vulnerability was detected. - */ cpeUri?: string | null; - /** - * The name of the package where the vulnerability was detected. - */ packageName?: string | null; - /** - * Type of package, for example, os, maven, or go. - */ packageType?: string | null; - /** - * The version of the package. - */ packageVersion?: string | null; } - /** - * Vertex AI training pipeline associated with the finding. - */ export interface Schema$Pipeline { - /** - * The user defined display name of pipeline, e.g. plants-classification - */ displayName?: string | null; - /** - * Resource name of the pipeline, e.g. projects/{project\}/locations/{location\}/trainingPipelines/5253428229225578496 - */ name?: string | null; } - /** - * A Kubernetes Pod. - */ export interface Schema$Pod { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$Container[]; - /** - * Pod labels. For Kubernetes containers, these are applied to the container. - */ labels?: Schema$Label[]; - /** - * Kubernetes Pod name. - */ name?: string | null; - /** - * Kubernetes Pod namespace. - */ ns?: 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`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] \}, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < 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$Policy { - /** - * Specifies cloud audit logging configuration for this policy. - */ auditConfigs?: Schema$AuditConfig[]; - /** - * Associates a list of `members`, or principals, with 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 principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`. - */ bindings?: Schema$Binding[]; - /** - * `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; } - /** - * The policy field that violates the deployed posture and its expected and detected values. - */ export interface Schema$PolicyDriftDetails { - /** - * The detected value that violates the deployed posture, for example, `false` or `allowed_values={"projects/22831892"\}`. - */ detectedValue?: string | null; - /** - * The value of this field that was configured in a posture, for example, `true` or `allowed_values={"projects/29831892"\}`. - */ expectedValue?: string | null; - /** - * The name of the updated field, for example constraint.implementation.policy_rules[0].enforce - */ field?: string | null; } - /** - * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. - */ export interface Schema$PolicyViolationSummary { - /** - * Total number of child resources that conform to the policy. - */ conformantResourcesCount?: string | null; - /** - * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". - */ evaluationErrorsCount?: string | null; - /** - * Total count of child resources which were not in scope for evaluation. - */ outOfScopeResourcesCount?: string | null; - /** - * Count of child resources in violation of the policy. - */ policyViolationsCount?: string | null; } - /** - * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. - */ export interface Schema$PortRange { - /** - * Maximum port value. - */ max?: string | null; - /** - * Minimum port value. - */ min?: string | null; } - /** - * Represents an operating system process. - */ export interface Schema$Process { - /** - * Process arguments as JSON encoded strings. - */ args?: string[] | null; - /** - * True if `args` is incomplete. - */ argumentsTruncated?: boolean | null; - /** - * File information for the process executable. - */ binary?: Schema$File; - /** - * Process environment variables. - */ envVariables?: Schema$EnvironmentVariable[]; - /** - * True if `env_variables` is incomplete. - */ envVariablesTruncated?: boolean | null; - /** - * File information for libraries loaded by the process. - */ libraries?: Schema$File[]; - /** - * The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`. - */ name?: string | null; - /** - * The parent process ID. - */ parentPid?: string | null; - /** - * The process ID. - */ pid?: string | null; - /** - * When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter. - */ script?: Schema$File; - /** - * The ID of the user that executed the process. E.g. If this is the root user this will always be 0. - */ userId?: string | null; } - /** - * Indicates what signature matched this process. - */ export interface Schema$ProcessSignature { - /** - * Signature indicating that a binary family was matched. - */ memoryHashSignature?: Schema$MemoryHashSignature; - /** - * Describes the type of resource associated with the signature. - */ signatureType?: string | null; - /** - * Signature indicating that a YARA rule was matched. - */ yaraRuleSignature?: Schema$YaraRuleSignature; } - /** - * Additional Links - */ export interface Schema$Reference { - /** - * Source of the reference e.g. NVD - */ source?: string | null; - /** - * Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527. - */ uri?: string | null; } - /** - * Information about the requests relevant to the finding. - */ export interface Schema$Requests { - /** - * Allowed RPS (requests per second) over the long term. - */ longTermAllowed?: number | null; - /** - * Denied RPS (requests per second) over the long term. - */ longTermDenied?: number | null; - /** - * For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term. - */ ratio?: number | null; - /** - * Allowed RPS (requests per second) in the short term. - */ shortTermAllowed?: number | null; } - /** - * Represents the path of resources leading up to the resource this finding is about. - */ export interface Schema$ResourcePath { - /** - * The list of nodes that make the up resource path, ordered from lowest level to highest level. - */ nodes?: Schema$ResourcePathNode[]; } - /** - * A node within the resource path. Each node represents a resource within the resource hierarchy. - */ export interface Schema$ResourcePathNode { - /** - * The display name of the resource this node represents. - */ displayName?: string | null; - /** - * The ID of the resource this node represents. - */ id?: string | null; - /** - * The type of resource this node represents. - */ nodeType?: string | null; } - /** - * Kubernetes Role or ClusterRole. - */ export interface Schema$Role { - /** - * Role type. - */ kind?: string | null; - /** - * Role name. - */ name?: string | null; - /** - * Role namespace. - */ ns?: string | null; } - /** - * Request message for running asset discovery for an organization. - */ export interface Schema$RunAssetDiscoveryRequest {} - /** - * Details about a secret or credential associated with the finding. - */ export interface Schema$Secret { - /** - * The environment variable containing the secret. - */ environmentVariable?: Schema$SecretEnvironmentVariable; - /** - * The file containing the secret. - */ filePath?: Schema$SecretFilePath; - /** - * The status of the secret. - */ status?: Schema$SecretStatus; - /** - * The type of secret, for example, GCP_API_KEY. - */ type?: string | null; } - /** - * Environment variable containing the secret. - */ export interface Schema$SecretEnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content. - */ key?: string | null; } - /** - * File path containing the secret. - */ export interface Schema$SecretFilePath { - /** - * Path to the file. - */ path?: string | null; - } - /** - * The status of the secret. - */ + } export interface Schema$SecretStatus { - /** - * Time that the secret was found. - */ lastUpdatedTime?: string | null; - /** - * The validity of the secret. - */ validity?: string | null; } - /** - * SecurityBulletin are notifications of vulnerabilities of Google products. - */ export interface Schema$SecurityBulletin { - /** - * ID of the bulletin corresponding to the vulnerability. - */ bulletinId?: string | null; - /** - * Submission time of this Security Bulletin. - */ submissionTime?: string | null; - /** - * This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0 - */ suggestedUpgradeVersion?: string | null; } - /** - * Security Command Center managed properties. These properties are managed by Security Command Center and cannot be modified by the user. - */ export interface Schema$SecurityCenterProperties { - /** - * Immutable. The full resource name of the Google Cloud resource this asset represents. This field is immutable after create time. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceName?: string | null; - /** - * Owners of the Google Cloud resource. - */ resourceOwners?: string[] | null; - /** - * The full resource name of the immediate parent of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceParent?: string | null; - /** - * The full resource name of the project the resource belongs to. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceProject?: string | null; - /** - * The type of the Google Cloud resource. Examples include: APPLICATION, PROJECT, and ORGANIZATION. This is a case insensitive field defined by Security Command Center and/or the producer of the resource and is immutable after create time. - */ resourceType?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$SecurityMarks { - /** - * The canonical name of the marks. Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "folders/{folder_id\}/assets/{asset_id\}/securityMarks" "projects/{project_number\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ export interface Schema$SecurityPolicy { - /** - * The name of the Google Cloud Armor security policy, for example, "my-security-policy". - */ name?: string | null; - /** - * Whether or not the associated rule or policy is in preview mode. - */ preview?: boolean | null; - /** - * The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'. - */ type?: string | null; } - /** - * Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud. - */ export interface Schema$SecurityPosture { - /** - * The name of the updated policy, for example, `projects/{project_id\}/policies/{constraint_name\}`. - */ changedPolicy?: string | null; - /** - * Name of the posture, for example, `CIS-Posture`. - */ name?: string | null; - /** - * The ID of the updated policy, for example, `compute-policy-1`. - */ policy?: string | null; - /** - * The details about a change in an updated policy that violates the deployed posture. - */ policyDriftDetails?: Schema$PolicyDriftDetails[]; - /** - * The name of the updated policyset, for example, `cis-policyset`. - */ policySet?: string | null; - /** - * The name of the posture deployment, for example, `organizations/{org_id\}/posturedeployments/{posture_deployment_id\}`. - */ postureDeployment?: string | null; - /** - * The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number\}`. - */ postureDeploymentResource?: string | null; - /** - * The version of the posture, for example, `c7cfa2a8`. - */ revisionId?: string | null; } - /** - * Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive. - */ export interface Schema$SensitivityScore { - /** - * The sensitivity score applied to the resource. - */ score?: string | null; } - /** - * Identity delegation history of an authenticated service account. - */ export interface Schema$ServiceAccountDelegationInfo { - /** - * The email address of a Google account. - */ principalEmail?: string | null; - /** - * A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name\}/subjects/{subject\}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name\}[{subject\}]` - */ principalSubject?: string | null; } - /** - * Request message for updating a finding's state. - */ export interface Schema$SetFindingStateRequest { - /** - * Optional. The time at which the updated state takes effect. If not set uses the current time. - */ startTime?: string | null; - /** - * Required. The desired State of the finding. - */ state?: string | null; } - /** - * Request message for `SetIamPolicy` method. - */ export interface Schema$SetIamPolicyRequest { - /** - * REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them. - */ policy?: Schema$Policy; - /** - * 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; } - /** - * Security Command Center finding source. A finding source is an entity or a mechanism that can produce a finding. A source is like a container of findings that come from the same scanner, logger, monitor, etc. - */ export interface Schema$Source { - /** - * The description of the source (max of 1024 characters). Example: "Web Security Scanner is a web security scanner for common vulnerabilities in App Engine applications. It can automatically scan and detect four common vulnerabilities, including cross-site-scripting (XSS), Flash injection, mixed content (HTTP in HTTPS), and outdated/insecure libraries." - */ description?: string | null; - /** - * The source's display name. A source's display name must be unique amongst its siblings, for example, two sources with the same parent can't share the same display name. The display name must have a length between 1 and 64 characters (inclusive). - */ displayName?: string | null; - /** - * The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}" - */ name?: string | null; } - /** - * Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly. - */ export interface Schema$StaticMute { - /** - * When the static mute was applied. - */ applyTime?: string | null; - /** - * The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value. - */ state?: 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; } - /** - * Represents a Kubernetes subject. - */ export interface Schema$Subject { - /** - * Authentication type for the subject. - */ kind?: string | null; - /** - * Name for the subject. - */ name?: string | null; - /** - * Namespace for the subject. - */ ns?: string | null; } - /** - * Request message for `TestIamPermissions` method. - */ export interface Schema$TestIamPermissionsRequest { - /** - * 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$TestIamPermissionsResponse { - /** - * A subset of `TestPermissionsRequest.permissions` that the caller is allowed. - */ permissions?: string[] | null; } - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ export interface Schema$TicketInfo { - /** - * The assignee of the ticket in the ticket system. - */ assignee?: string | null; - /** - * The description of the ticket in the ticket system. - */ description?: string | null; - /** - * The identifier of the ticket in the ticket system. - */ id?: string | null; - /** - * The latest status of the ticket, as reported by the ticket system. - */ status?: string | null; - /** - * The time when the ticket was last updated, as reported by the ticket system. - */ updateTime?: string | null; - /** - * The link to the ticket in the ticket system. - */ uri?: string | null; } - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. - */ export interface Schema$ToxicCombination { - /** - * The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack. - */ attackExposureScore?: number | null; - /** - * List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`. - */ relatedFindings?: string[] | null; } - /** - * Vertex AI-related information associated with the finding. - */ export interface Schema$VertexAi { - /** - * Datasets associated with the finding. - */ datasets?: Schema$Dataset[]; - /** - * Pipelines associated with the finding. - */ pipelines?: Schema$Pipeline[]; } - /** - * Refers to common vulnerability fields e.g. cve, cvss, cwe etc. - */ export interface Schema$Vulnerability { - /** - * CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ cve?: Schema$Cve; - /** - * Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability. - */ cwes?: Schema$Cwe[]; - /** - * The fixed package is relevant to the finding. - */ fixedPackage?: Schema$Package; - /** - * The offending package is relevant to the finding. - */ offendingPackage?: Schema$Package; - /** - * Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is. - */ providerRiskScore?: string | null; - /** - * Represents whether the vulnerability is reachable (detected via static analysis) - */ reachable?: boolean | null; - /** - * The security bulletin is relevant to this finding. - */ securityBulletin?: Schema$SecurityBulletin; } - /** - * Vulnerability count by severity. - */ export interface Schema$VulnerabilityCountBySeverity { - /** - * Key is the Severity enum. - */ severityToFindingCount?: {[key: string]: string} | null; } - /** - * Result containing the properties and count of a VulnerabilitySnapshot request. - */ export interface Schema$VulnerabilitySnapshot { - /** - * The cloud provider for the vulnerability snapshot. - */ cloudProvider?: string | null; - /** - * The vulnerability count by severity. - */ findingCount?: Schema$VulnerabilityCountBySeverity; - /** - * Identifier. The vulnerability snapshot name. Format: //locations//vulnerabilitySnapshots/ - */ name?: string | null; - /** - * The time that the snapshot was taken. - */ snapshotTime?: string | null; } - /** - * A signature corresponding to a YARA rule. - */ export interface Schema$YaraRuleSignature { - /** - * The name of the YARA rule. - */ yaraRule?: string | null; } @@ -7042,7 +2113,6 @@ export namespace securitycenter_v1beta1 { } /** - * Gets the settings for an organization. * @example * ```js * // Before running the sample: @@ -7072,7 +2142,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.getOrganizationSettings({ - * // Required. Name of the organization to get organization settings for. Its format is "organizations/[organization_id]/organizationSettings". * name: 'organizations/my-organization/organizationSettings', * }); * console.log(res.data); @@ -7183,7 +2252,6 @@ export namespace securitycenter_v1beta1 { } /** - * Updates an organization's settings. * @example * ```js * // Before running the sample: @@ -7213,9 +2281,8 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.updateOrganizationSettings({ - * // The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/organizationSettings". * name: 'organizations/my-organization/organizationSettings', - * // The FieldMask to use when updating the settings resource. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -7338,17 +2405,17 @@ export namespace securitycenter_v1beta1 { export interface Params$Resource$Organizations$Getorganizationsettings extends StandardParameters { /** - * Required. Name of the organization to get organization settings for. Its format is "organizations/[organization_id]/organizationSettings". + * */ name?: string; } export interface Params$Resource$Organizations$Updateorganizationsettings extends StandardParameters { /** - * The relative resource name of the settings. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/organizationSettings". + * */ name?: string; /** - * The FieldMask to use when updating the settings resource. + * */ updateMask?: string; @@ -7365,7 +2432,6 @@ export namespace securitycenter_v1beta1 { } /** - * Filters an organization's assets and groups them by their specified properties. * @example * ```js * // Before running the sample: @@ -7395,7 +2461,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.assets.group({ - * // Required. Name of the organization to groupBy. Its format is "organizations/[organization_id]". * parent: 'organizations/my-organization', * * // Request body metadata @@ -7518,7 +2583,6 @@ export namespace securitycenter_v1beta1 { } /** - * Lists an organization's assets. * @example * ```js * // Before running the sample: @@ -7548,21 +2612,20 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.assets.list({ - * // When compare_duration is set, the ListAssetResult's "state" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state" values when compare_duration is specified: * "ADDED": indicates that the asset was not present before compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state is "UNUSED", which indicates that the asset is present at read_time. * compareDuration: 'placeholder-value', - * // Optional. A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `resource_properties.size = 100` is a valid filter string. + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of the organization assets should belong to. Its format is "organizations/[organization_id]". + * * parent: 'organizations/my-organization', - * // Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -7673,7 +2736,6 @@ export namespace securitycenter_v1beta1 { } /** - * Runs asset discovery. The discovery is tracked with a long-running operation. This API can only be called with limited frequency for an organization. If it is called too frequently the caller will receive a TOO_MANY_REQUESTS error. * @example * ```js * // Before running the sample: @@ -7703,7 +2765,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.assets.runDiscovery({ - * // Required. Name of the organization to run asset discovery for. Its format is "organizations/[organization_id]". * parent: 'organizations/my-organization', * * // Request body metadata @@ -7821,7 +2882,6 @@ export namespace securitycenter_v1beta1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -7851,11 +2911,10 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.assets.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'organizations/my-organization/assets/my-asset/securityMarks', - * // The time at which the updated SecurityMarks take effect. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -7982,7 +3041,7 @@ export namespace securitycenter_v1beta1 { export interface Params$Resource$Organizations$Assets$Group extends StandardParameters { /** - * Required. Name of the organization to groupBy. Its format is "organizations/[organization_id]". + * */ parent?: string; @@ -7993,41 +3052,41 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Assets$List extends StandardParameters { /** - * When compare_duration is set, the ListAssetResult's "state" attribute is updated to indicate whether the asset was added, removed, or remained present during the compare_duration period of time that precedes the read_time. This is the time between (read_time - compare_duration) and read_time. The state value is derived based on the presence of the asset at the two points in time. Intermediate state changes between the two times don't affect the result. For example, the results aren't affected if the asset is removed and re-created again. Possible "state" values when compare_duration is specified: * "ADDED": indicates that the asset was not present before compare_duration, but present at read_time. * "REMOVED": indicates that the asset was present at the start of compare_duration, but not present at read_time. * "ACTIVE": indicates that the asset was present at both the start and the end of the time period defined by compare_duration and read_time. If compare_duration is not specified, then the only possible state is "UNUSED", which indicates that the asset is present at read_time. + * */ compareDuration?: string; /** - * Optional. A field mask to specify the ListAssetsResult fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across assets. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the Asset resource. Examples include: * name * security_center_properties.resource_name * resource_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `resource_properties.size = 100` is a valid filter string. + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,resource_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,resource_properties.a_property" and " name desc , resource_properties.a_property " are equivalent. + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListAssetsResponse`; indicates that this is a continuation of a prior `ListAssets` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of the organization assets should belong to. Its format is "organizations/[organization_id]". + * */ parent?: string; /** - * Time used as a reference point when filtering assets. The filter is limited to assets existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Organizations$Assets$Rundiscovery extends StandardParameters { /** - * Required. Name of the organization to run asset discovery for. Its format is "organizations/[organization_id]". + * */ parent?: string; @@ -8038,15 +3097,15 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Assets$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. + * */ updateMask?: string; @@ -8063,7 +3122,6 @@ export namespace securitycenter_v1beta1 { } /** - * 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: @@ -8093,7 +3151,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.operations.cancel({ - * // The name of the operation resource to be cancelled. * name: 'organizations/my-organization/operations/my-operation', * * // Request body metadata @@ -8205,7 +3262,6 @@ export namespace securitycenter_v1beta1 { } /** - * 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: @@ -8235,7 +3291,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.operations.delete({ - * // The name of the operation resource to be deleted. * name: 'organizations/my-organization/operations/my-operation', * }); * console.log(res.data); @@ -8338,7 +3393,6 @@ export namespace securitycenter_v1beta1 { } /** - * 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: @@ -8368,7 +3422,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.operations.get({ - * // The name of the operation resource. * name: 'organizations/my-organization/operations/my-operation', * }); * console.log(res.data); @@ -8477,7 +3530,6 @@ export namespace securitycenter_v1beta1 { } /** - * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. * @example * ```js * // Before running the sample: @@ -8507,15 +3559,14 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.operations.list({ - * // The standard list filter. * filter: 'placeholder-value', - * // The name of the operation's parent resource. + * * name: 'organizations/my-organization/operations', - * // The standard list page size. + * * pageSize: 'placeholder-value', - * // The standard list page token. + * * pageToken: 'placeholder-value', - * // When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * * returnPartialSuccess: 'placeholder-value', * }); * console.log(res.data); @@ -8626,7 +3677,7 @@ export namespace securitycenter_v1beta1 { export interface Params$Resource$Organizations$Operations$Cancel extends StandardParameters { /** - * The name of the operation resource to be cancelled. + * */ name?: string; @@ -8637,35 +3688,35 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Operations$Delete extends StandardParameters { /** - * The name of the operation resource to be deleted. + * */ name?: string; } export interface Params$Resource$Organizations$Operations$Get extends StandardParameters { /** - * The name of the operation resource. + * */ name?: string; } export interface Params$Resource$Organizations$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; /** - * When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. + * */ returnPartialSuccess?: boolean; } @@ -8679,7 +3730,6 @@ export namespace securitycenter_v1beta1 { } /** - * Creates a source. * @example * ```js * // Before running the sample: @@ -8709,7 +3759,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.create({ - * // Required. Resource name of the new source's parent. Its format should be "organizations/[organization_id]". * parent: 'organizations/my-organization', * * // Request body metadata @@ -8829,7 +3878,6 @@ export namespace securitycenter_v1beta1 { } /** - * Gets a source. * @example * ```js * // Before running the sample: @@ -8859,7 +3907,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.get({ - * // Required. Relative resource name of the source. Its format is "organizations/[organization_id]/source/[source_id]". * name: 'organizations/my-organization/sources/my-source', * }); * console.log(res.data); @@ -8966,7 +4013,6 @@ export namespace securitycenter_v1beta1 { } /** - * Gets the access control policy on the specified Source. * @example * ```js * // Before running the sample: @@ -8996,7 +4042,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.getIamPolicy({ - * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -9115,7 +4160,6 @@ export namespace securitycenter_v1beta1 { } /** - * Lists all sources belonging to an organization. * @example * ```js * // Before running the sample: @@ -9145,11 +4189,10 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.list({ - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. * pageSize: 'placeholder-value', - * // The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Resource name of the parent of sources to list. Its format should be "organizations/[organization_id]". + * * parent: 'organizations/my-organization', * }); * console.log(res.data); @@ -9258,7 +4301,6 @@ export namespace securitycenter_v1beta1 { } /** - * Updates a source. * @example * ```js * // Before running the sample: @@ -9288,9 +4330,8 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.patch({ - * // The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}" * name: 'organizations/my-organization/sources/my-source', - * // The FieldMask to use when updating the source resource. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -9407,7 +4448,6 @@ export namespace securitycenter_v1beta1 { } /** - * Sets the access control policy on the specified Source. * @example * ```js * // Before running the sample: @@ -9437,7 +4477,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.setIamPolicy({ - * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -9557,7 +4596,6 @@ export namespace securitycenter_v1beta1 { } /** - * Returns the permissions that a caller has on the specified source. * @example * ```js * // Before running the sample: @@ -9587,7 +4625,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.testIamPermissions({ - * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. * resource: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -9709,7 +4746,7 @@ export namespace securitycenter_v1beta1 { export interface Params$Resource$Organizations$Sources$Create extends StandardParameters { /** - * Required. Resource name of the new source's parent. Its format should be "organizations/[organization_id]". + * */ parent?: string; @@ -9720,13 +4757,13 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Get extends StandardParameters { /** - * Required. Relative resource name of the source. Its format is "organizations/[organization_id]/source/[source_id]". + * */ name?: string; } export interface Params$Resource$Organizations$Sources$Getiampolicy extends StandardParameters { /** - * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * */ resource?: string; @@ -9737,25 +4774,25 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$List extends StandardParameters { /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListSourcesResponse`; indicates that this is a continuation of a prior `ListSources` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Resource name of the parent of sources to list. Its format should be "organizations/[organization_id]". + * */ parent?: string; } export interface Params$Resource$Organizations$Sources$Patch extends StandardParameters { /** - * The relative resource name of this source. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}" + * */ name?: string; /** - * The FieldMask to use when updating the source resource. + * */ updateMask?: string; @@ -9766,7 +4803,7 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Setiampolicy extends StandardParameters { /** - * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * */ resource?: string; @@ -9777,7 +4814,7 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Testiampermissions extends StandardParameters { /** - * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field. + * */ resource?: string; @@ -9794,7 +4831,6 @@ export namespace securitycenter_v1beta1 { } /** - * Creates a finding. The corresponding source must exist for finding creation to succeed. * @example * ```js * // Before running the sample: @@ -9824,9 +4860,8 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.create({ - * // Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length. * findingId: 'placeholder-value', - * // Required. Resource name of the new finding's parent. Its format should be "organizations/[organization_id]/sources/[source_id]". + * * parent: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -9970,7 +5005,6 @@ export namespace securitycenter_v1beta1 { } /** - * Filters an organization or source's findings and groups them by their specified properties. To group across all sources provide a `-` as the source id. Example: /v1beta1/organizations/{organization_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -10000,7 +5034,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.group({ - * // Required. Name of the source to groupBy. Its format is "organizations/[organization_id]/sources/[source_id]". To groupBy across all sources provide a source_id of `-`. For example: organizations/{organization_id\}/sources/- * parent: 'organizations/my-organization/sources/my-source', * * // Request body metadata @@ -10124,7 +5157,6 @@ export namespace securitycenter_v1beta1 { } /** - * Lists an organization or source's findings. To list across all sources provide a `-` as the source id. Example: /v1beta1/organizations/{organization_id\}/sources/-/findings * @example * ```js * // Before running the sample: @@ -10154,19 +5186,18 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.list({ - * // Optional. A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. * fieldMask: 'placeholder-value', - * // Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `source_properties.size = 100` is a valid filter string. + * * filter: 'placeholder-value', - * // Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. + * * orderBy: 'placeholder-value', - * // The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * * pageSize: 'placeholder-value', - * // The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * * pageToken: 'placeholder-value', - * // Required. Name of the source the findings belong to. Its format is "organizations/[organization_id]/sources/[source_id]". To list across all sources provide a source_id of `-`. For example: organizations/{organization_id\}/sources/- + * * parent: 'organizations/my-organization/sources/my-source', - * // Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * * readTime: 'placeholder-value', * }); * console.log(res.data); @@ -10279,7 +5310,6 @@ export namespace securitycenter_v1beta1 { } /** - * Creates or updates a finding. The corresponding source must exist for a finding creation to succeed. * @example * ```js * // Before running the sample: @@ -10309,9 +5339,8 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.patch({ - * // The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}" * name: 'organizations/my-organization/sources/my-source/findings/my-finding', - * // The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -10452,7 +5481,6 @@ export namespace securitycenter_v1beta1 { } /** - * Updates the state of a finding. * @example * ```js * // Before running the sample: @@ -10482,7 +5510,6 @@ export namespace securitycenter_v1beta1 { * * // Do the magic * const res = await securitycenter.organizations.sources.findings.setState({ - * // Required. The relative resource name of the finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/finding/{finding_id\}". * name: 'organizations/my-organization/sources/my-source/findings/my-finding', * * // Request body metadata @@ -10618,7 +5645,6 @@ export namespace securitycenter_v1beta1 { } /** - * Updates security marks. * @example * ```js * // Before running the sample: @@ -10649,11 +5675,10 @@ export namespace securitycenter_v1beta1 { * // Do the magic * const res = * await securitycenter.organizations.sources.findings.updateSecurityMarks({ - * // The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". * name: 'organizations/my-organization/sources/my-source/findings/my-finding/securityMarks', - * // The time at which the updated SecurityMarks take effect. + * * startTime: 'placeholder-value', - * // The FieldMask to use when updating the security marks resource. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -10781,11 +5806,11 @@ export namespace securitycenter_v1beta1 { export interface Params$Resource$Organizations$Sources$Findings$Create extends StandardParameters { /** - * Required. Unique identifier provided by the client within the parent scope. It must be alphanumeric and less than or equal to 32 characters and greater than 0 characters in length. + * */ findingId?: string; /** - * Required. Resource name of the new finding's parent. Its format should be "organizations/[organization_id]/sources/[source_id]". + * */ parent?: string; @@ -10796,7 +5821,7 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Findings$Group extends StandardParameters { /** - * Required. Name of the source to groupBy. Its format is "organizations/[organization_id]/sources/[source_id]". To groupBy across all sources provide a source_id of `-`. For example: organizations/{organization_id\}/sources/- + * */ parent?: string; @@ -10807,41 +5832,41 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Findings$List extends StandardParameters { /** - * Optional. A field mask to specify the Finding fields to be listed in the response. An empty field mask will list all fields. + * */ fieldMask?: string; /** - * Expression that defines the filter to apply across findings. The expression is a list of one or more restrictions combined via logical operators `AND` and `OR`. Parentheses are not supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. Examples include: * name * source_properties.a_property * security_marks.marks.marka The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. For example, `source_properties.size = 100` is a valid filter string. + * */ filter?: string; /** - * Expression that defines what fields and order to use for sorting. The string value should follow SQL syntax: comma separated list of fields. For example: "name,resource_properties.a_property". The default sorting order is ascending. To specify descending order for a field, a suffix " desc" should be appended to the field name. For example: "name desc,source_properties.a_property". Redundant space characters in the syntax are insignificant. "name desc,source_properties.a_property" and " name desc , source_properties.a_property " are equivalent. + * */ orderBy?: string; /** - * The maximum number of results to return in a single response. Default is 10, minimum is 1, maximum is 1000. + * */ pageSize?: number; /** - * The value returned by the last `ListFindingsResponse`; indicates that this is a continuation of a prior `ListFindings` call, and that the system should return the next page of data. + * */ pageToken?: string; /** - * Required. Name of the source the findings belong to. Its format is "organizations/[organization_id]/sources/[source_id]". To list across all sources provide a source_id of `-`. For example: organizations/{organization_id\}/sources/- + * */ parent?: string; /** - * Time used as a reference point when filtering findings. The filter is limited to findings existing at the supplied time and their values are those at that specific time. Absence of this field will default to the API's version of NOW. + * */ readTime?: string; } export interface Params$Resource$Organizations$Sources$Findings$Patch extends StandardParameters { /** - * The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}" + * */ name?: string; /** - * The FieldMask to use when updating the finding resource. This field should not be specified when creating a finding. + * */ updateMask?: string; @@ -10852,7 +5877,7 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Findings$Setstate extends StandardParameters { /** - * Required. The relative resource name of the finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/finding/{finding_id\}". + * */ name?: string; @@ -10863,15 +5888,15 @@ export namespace securitycenter_v1beta1 { } export interface Params$Resource$Organizations$Sources$Findings$Updatesecuritymarks extends StandardParameters { /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". + * */ name?: string; /** - * The time at which the updated SecurityMarks take effect. + * */ startTime?: string; /** - * The FieldMask to use when updating the security marks resource. + * */ updateMask?: string; diff --git a/src/apis/securitycenter/v1beta2.ts b/src/apis/securitycenter/v1beta2.ts index 64443ebea5..e4b87c8079 100644 --- a/src/apis/securitycenter/v1beta2.ts +++ b/src/apis/securitycenter/v1beta2.ts @@ -128,6593 +128,1886 @@ export namespace securitycenter_v1beta2 { } } - /** - * Represents an access event. - */ export interface Schema$Access { - /** - * Caller's IP address, such as "1.1.1.1". - */ callerIp?: string | null; - /** - * The caller IP's geolocation, which identifies where the call came from. - */ callerIpGeo?: Schema$Geolocation; - /** - * The method that the service account called, e.g. "SetIamPolicy". - */ methodName?: string | null; - /** - * Associated email, such as "foo@google.com". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). - */ principalEmail?: string | null; - /** - * A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name\}/subject/{subject\}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name\}[{subject\}]`. - */ principalSubject?: string | null; - /** - * The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. - */ serviceAccountDelegationInfo?: Schema$ServiceAccountDelegationInfo[]; - /** - * The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/{PROJECT_ID\}/serviceAccounts/{ACCOUNT\}/keys/{key\}". - */ serviceAccountKeyName?: string | null; - /** - * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" - */ serviceName?: string | null; - /** - * The caller's user agent string associated with the finding. - */ userAgent?: string | null; - /** - * Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application. - */ userAgentFamily?: string | null; - /** - * A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username. - */ userName?: string | null; } - /** - * Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding. - */ export interface Schema$AccessReview { - /** - * The API group of the resource. "*" means all. - */ group?: string | null; - /** - * The name of the resource being requested. Empty means all. - */ name?: string | null; - /** - * Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by "" (empty). - */ ns?: string | null; - /** - * The optional resource type requested. "*" means all. - */ resource?: string | null; - /** - * The optional subresource type. - */ subresource?: string | null; - /** - * A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. "*" means all. - */ verb?: string | null; - /** - * The API version of the resource. "*" means all. - */ version?: string | null; } - /** - * Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection). - */ export interface Schema$AdaptiveProtection { - /** - * A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation. - */ confidence?: number | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$AdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$AdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$AdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Details about resources affected by this finding. - */ export interface Schema$AffectedResources { - /** - * The count of resources affected by the finding. - */ count?: string | null; } - /** - * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. - */ export interface Schema$AgentDataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The agent principal that accessed the data. - */ principalSubject?: string | null; } - /** - * Contains information about the AI model associated with the finding. - */ export interface Schema$AiModel { - /** - * The platform on which the model is deployed. - */ deploymentPlatform?: string | null; - /** - * The user defined display name of model. Ex. baseline-classification-model - */ displayName?: string | null; - /** - * The domain of the model, for example, “image-classification”. - */ domain?: string | null; - /** - * The name of the model library, for example, “transformers”. - */ library?: string | null; - /** - * The region in which the model is used, for example, “us-central1”. - */ location?: string | null; - /** - * The name of the AI model, for example, "gemini:1.0.0". - */ name?: string | null; - /** - * The publisher of the model, for example, “google” or “nvidia”. - */ publisher?: string | null; - /** - * The purpose of the model, for example, "Inteference" or "Training". - */ usageCategory?: string | null; } - /** - * Allowed IP rule. - */ export interface Schema$Allowed { - /** - * Optional. Optional list of allowed IP rules. - */ ipRules?: Schema$IpRule[]; } - /** - * Represents an application associated with a finding. - */ export interface Schema$Application { - /** - * The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`. - */ baseUri?: string | null; - /** - * The full URI with payload that can be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`. - */ fullUri?: string | null; } - /** - * Represents the result of evaluating artifact guard policies. - */ export interface Schema$ArtifactGuardPolicies { - /** - * A list of failing policies. - */ failingPolicies?: Schema$ArtifactGuardPolicy[]; - /** - * The ID of the resource that has policies configured for it. - */ resourceId?: string | null; } - /** - * Represents an artifact guard policy. - */ export interface Schema$ArtifactGuardPolicy { - /** - * The reason for the policy failure, for example, "severity=HIGH AND max_vuln_count=2". - */ failureReason?: string | null; - /** - * The ID of the failing policy, for example, "organizations/3392779/locations/global/policies/prod-policy". - */ policyId?: string | null; - /** - * The type of the policy evaluation. - */ type?: string | null; } - /** - * Information about DDoS attack volume and classification. - */ export interface Schema$Attack { - /** - * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'. - */ classification?: string | null; - /** - * Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead. - */ volumeBps?: number | null; - /** - * Total BPS (bytes per second) volume of attack. - */ volumeBpsLong?: string | null; - /** - * Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead. - */ volumePps?: number | null; - /** - * Total PPS (packets per second) volume of attack. - */ volumePpsLong?: string | null; } - /** - * An attack exposure contains the results of an attack path simulation run. - */ export interface Schema$AttackExposure { - /** - * The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789` - */ attackExposureResult?: string | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedHighValueResourcesCount?: number | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedLowValueResourcesCount?: number | null; - /** - * The number of medium value resources that are exposed as a result of this finding. - */ exposedMediumValueResourcesCount?: number | null; - /** - * The most recent time the attack exposure was updated on this finding. - */ latestCalculationTime?: string | null; - /** - * A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate. - */ score?: number | null; - /** - * What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not. - */ state?: string | null; } - /** - * An AWS account that is a member of an organization. - */ export interface Schema$AwsAccount { - /** - * The unique identifier (ID) of the account, containing exactly 12 digits. - */ id?: string | null; - /** - * The friendly name of this account. - */ name?: string | null; } - /** - * AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services. - */ export interface Schema$AwsMetadata { - /** - * The AWS account associated with the resource. - */ account?: Schema$AwsAccount; - /** - * The AWS organization associated with the resource. - */ organization?: Schema$AwsOrganization; - /** - * A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level. - */ organizationalUnits?: Schema$AwsOrganizationalUnit[]; } - /** - * An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies. - */ export interface Schema$AwsOrganization { - /** - * The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires "o-" followed by from 10 to 32 lowercase letters or digits. - */ id?: string | null; } - /** - * An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs. - */ export interface Schema$AwsOrganizationalUnit { - /** - * The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits. For example, "ou-ab12-cd34ef56". - */ id?: string | null; - /** - * The friendly name of the OU. - */ name?: string | null; } - /** - * Represents an Azure management group. - */ export interface Schema$AzureManagementGroup { - /** - * The display name of the Azure management group. - */ displayName?: string | null; - /** - * The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`. - */ id?: string | null; } - /** - * Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure. - */ export interface Schema$AzureMetadata { - /** - * A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level. - */ managementGroups?: Schema$AzureManagementGroup[]; - /** - * The Azure resource group associated with the resource. - */ resourceGroup?: Schema$AzureResourceGroup; - /** - * The Azure subscription associated with the resource. - */ subscription?: Schema$AzureSubscription; - /** - * The Azure Entra tenant associated with the resource. - */ tenant?: Schema$AzureTenant; } - /** - * Represents an Azure resource group. - */ export interface Schema$AzureResourceGroup { - /** - * The ID of the Azure resource group. - */ id?: string | null; - /** - * The name of the Azure resource group. This is not a UUID. - */ name?: string | null; } - /** - * Represents an Azure subscription. - */ export interface Schema$AzureSubscription { - /** - * The display name of the Azure subscription. - */ displayName?: string | null; - /** - * The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`. - */ id?: string | null; } - /** - * Represents a Microsoft Entra tenant. - */ export interface Schema$AzureTenant { - /** - * The display name of the Azure tenant. - */ displayName?: string | null; - /** - * The ID of the Microsoft Entra tenant, for example, "a11aaa11-aa11-1aa1-11aa-1aaa11a". - */ id?: string | null; } - /** - * Information related to Google Cloud Backup and DR Service findings. - */ export interface Schema$BackupDisasterRecovery { - /** - * The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`. - */ appliance?: string | null; - /** - * The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`. - */ applications?: string[] | null; - /** - * The timestamp at which the Backup and DR backup was created. - */ backupCreateTime?: string | null; - /** - * The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`. - */ backupTemplate?: string | null; - /** - * The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`. - */ backupType?: string | null; - /** - * The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`. - */ host?: string | null; - /** - * The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`. - */ policies?: string[] | null; - /** - * The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`. - */ policyOptions?: string[] | null; - /** - * The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`. - */ profile?: string | null; - /** - * The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`. - */ storagePool?: string | null; } - /** - * The destination BigQuery dataset to export findings to. - */ export interface Schema$BigQueryDestination { - /** - * Required. The relative resource name of the destination dataset, in the form projects/{projectId\}/datasets/{datasetId\}. - */ dataset?: string | null; } - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). - */ export interface Schema$Chokepoint { - /** - * List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings. - */ relatedFindings?: string[] | null; } - /** - * Fields related to Google Cloud Armor findings. - */ export interface Schema$CloudArmor { - /** - * Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview). - */ adaptiveProtection?: Schema$AdaptiveProtection; - /** - * Information about DDoS attack volume and classification. - */ attack?: Schema$Attack; - /** - * Duration of attack from the start until the current moment (updated every 5 minutes). - */ duration?: string | null; - /** - * Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview). - */ requests?: Schema$Requests; - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ securityPolicy?: Schema$SecurityPolicy; - /** - * Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS attacks, or "L_7" for Layer 7 DDoS attacks. - */ threatVector?: string | null; } - /** - * CloudControl associated with the finding. - */ export interface Schema$CloudControl { - /** - * Name of the CloudControl associated with the finding. - */ cloudControlName?: string | null; - /** - * Policy type of the CloudControl - */ policyType?: string | null; - /** - * Type of cloud control. - */ type?: string | null; - /** - * Version of the Cloud Control - */ version?: number | null; } - /** - * The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding. - */ export interface Schema$CloudDlpDataProfile { - /** - * Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`. - */ dataProfile?: string | null; - /** - * Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type. - */ infoTypes?: Schema$InfoType[]; - /** - * The resource hierarchy level at which the data profile was generated. - */ parentType?: string | null; } - /** - * Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding. - */ export interface Schema$CloudDlpInspection { - /** - * Whether Cloud DLP scanned the complete resource or a sampled subset. - */ fullScan?: boolean | null; - /** - * The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`. - */ infoType?: string | null; - /** - * The number of times Cloud DLP found this infoType within this job and resource. - */ infoTypeCount?: string | null; - /** - * Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`. - */ inspectJob?: string | null; } - /** - * Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) - */ export interface Schema$CloudLoggingEntry { - /** - * A unique identifier for the log entry. - */ insertId?: string | null; - /** - * The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity`. Note that this field is not URL-encoded, unlike the `LOG_ID` field in `LogEntry`. - */ logId?: string | null; - /** - * The organization, folder, or project of the monitored resource that produced this log entry. - */ resourceContainer?: string | null; - /** - * The time the event described by the log entry occurred. - */ timestamp?: string | null; } - /** - * Contains compliance information about a security standard indicating unmet recommendations. - */ export interface Schema$Compliance { - /** - * Policies within the standard or benchmark, for example, A.12.4.1 - */ ids?: string[] | null; - /** - * Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP. - */ standard?: string | null; - /** - * Version of the standard or benchmark, for example, 1.1 - */ version?: string | null; } - /** - * Compliance Details associated with the finding. - */ export interface Schema$ComplianceDetails { - /** - * CloudControl associated with the finding - */ cloudControl?: Schema$CloudControl; - /** - * Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier - */ cloudControlDeploymentNames?: string[] | null; - /** - * Details of Frameworks associated with the finding - */ frameworks?: Schema$Framework[]; } - /** - * Configuration of a module. - */ export interface Schema$Config { - /** - * The state of enablement for the module at its level of the resource hierarchy. - */ moduleEnablementState?: string | null; - /** - * The configuration value for the module. The absence of this field implies its inheritance from the parent. - */ value?: {[key: string]: any} | null; } - /** - * Contains information about the IP connection associated with the finding. - */ export interface Schema$Connection { - /** - * Destination IP address. Not present for sockets that are listening and not connected. - */ destinationIp?: string | null; - /** - * Destination port. Not present for sockets that are listening and not connected. - */ destinationPort?: number | null; - /** - * IANA Internet Protocol Number such as TCP(6) and UDP(17). - */ protocol?: string | null; - /** - * Source IP address. - */ sourceIp?: string | null; - /** - * Source port. - */ sourcePort?: number | null; } - /** - * The email address of a contact. - */ export interface Schema$Contact { - /** - * An email address. For example, "`person123@company.com`". - */ email?: string | null; } - /** - * Details about specific contacts - */ export interface Schema$ContactDetails { - /** - * A list of contacts - */ contacts?: Schema$Contact[]; } - /** - * Container associated with the finding. - */ export interface Schema$Container { - /** - * The time that the container was created. - */ createTime?: string | null; - /** - * Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest. - */ imageId?: string | null; - /** - * Container labels, as provided by the container runtime. - */ labels?: Schema$Label[]; - /** - * Name of the container. - */ name?: string | null; - /** - * Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags. - */ uri?: string | null; } - /** - * Resource capturing the settings for the Container Threat Detection service. - */ export interface Schema$ContainerThreatDetectionSettings { - /** - * The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration. - */ modules?: {[key: string]: Schema$Config} | null; - /** - * Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings - */ name?: string | null; - /** - * Output only. The service account used by Container Threat Detection for scanning. Service accounts are scoped at the project level meaning this field will be empty at any level above a project. - */ serviceAccount?: string | null; - /** - * The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED. - */ serviceEnablementState?: string | null; - /** - * Output only. The time the settings were last updated. - */ updateTime?: string | null; } - /** - * Compliance control associated with the finding. - */ export interface Schema$Control { - /** - * Name of the Control - */ controlName?: string | null; - /** - * Display name of the control. For example, AU-02. - */ displayName?: string | null; } - /** - * CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability. - */ export interface Schema$Cve { - /** - * Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document - */ cvssv3?: Schema$Cvssv3; - /** - * The exploitation activity of the vulnerability in the wild. - */ exploitationActivity?: string | null; - /** - * Date the first publicly available exploit or PoC was released. - */ exploitReleaseDate?: string | null; - /** - * Date of the earliest known exploitation. - */ firstExploitationDate?: string | null; - /** - * The unique identifier for the vulnerability. e.g. CVE-2021-34527 - */ id?: string | null; - /** - * The potential impact of the vulnerability if it was to be exploited. - */ impact?: string | null; - /** - * Whether or not the vulnerability has been observed in the wild. - */ observedInTheWild?: boolean | null; - /** - * Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527 - */ references?: Schema$Reference[]; - /** - * Whether upstream fix is available for the CVE. - */ upstreamFixAvailable?: boolean | null; - /** - * Whether or not the vulnerability was zero day when the finding was published. - */ zeroDay?: boolean | null; } - /** - * Common Vulnerability Scoring System version 3. - */ export interface Schema$Cvssv3 { - /** - * This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. - */ attackComplexity?: string | null; - /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. - */ attackVector?: string | null; - /** - * This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. - */ availabilityImpact?: string | null; - /** - * The base score is a function of the base metric scores. - */ baseScore?: number | null; - /** - * This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. - */ confidentialityImpact?: string | null; - /** - * This metric measures the impact to integrity of a successfully exploited vulnerability. - */ integrityImpact?: string | null; - /** - * This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. - */ privilegesRequired?: string | null; - /** - * The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. - */ scope?: string | null; - /** - * This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. - */ userInteraction?: string | null; } - /** - * CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/). - */ export interface Schema$Cwe { - /** - * The CWE identifier, e.g. CWE-94 - */ id?: string | null; - /** - * Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html - */ references?: Schema$Reference[]; } - /** - * Details about a data access attempt made by a principal not authorized under applicable data security policy. - */ export interface Schema$DataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; } - /** - * Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided. - */ export interface Schema$Database { - /** - * The human-readable name of the database that the user connected to. - */ displayName?: string | null; - /** - * The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change. - */ grantees?: string[] | null; - /** - * Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory. - */ name?: string | null; - /** - * The SQL statement that is associated with the database access. - */ query?: string | null; - /** - * The username used to connect to the database. The username might not be an IAM principal and does not have a set format. - */ userName?: string | null; - /** - * The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion). - */ version?: string | null; } - /** - * Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy. - */ export interface Schema$DataFlowEvent { - /** - * Unique identifier for data flow event. - */ eventId?: string | null; - /** - * Timestamp of data flow event. - */ eventTime?: string | null; - /** - * The operation performed by the principal for the data flow event. - */ operation?: string | null; - /** - * The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; - /** - * Non-compliant location of the principal or the data destination. - */ violatedLocation?: string | null; } - /** - * Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments. - */ export interface Schema$DataRetentionDeletionEvent { - /** - * Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000. - */ dataObjectCount?: string | null; - /** - * Timestamp indicating when the event was detected. - */ eventDetectionTime?: string | null; - /** - * Type of the DRD event. - */ eventType?: string | null; - /** - * Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days. - */ maxRetentionAllowed?: string | null; - /** - * Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION. - */ minRetentionAllowed?: string | null; } - /** - * Vertex AI dataset associated with the finding. - */ export interface Schema$Dataset { - /** - * The user defined display name of dataset, e.g. plants-dataset - */ displayName?: string | null; - /** - * Resource name of the dataset, e.g. projects/{project\}/locations/{location\}/datasets/2094040236064505856 - */ name?: string | null; - /** - * Data source, such as BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod - */ source?: string | null; } - /** - * Denied IP rule. - */ export interface Schema$Denied { - /** - * Optional. Optional list of denied IP rules. - */ ipRules?: Schema$IpRule[]; } - /** - * Details of a subscription. - */ export interface Schema$Details { - /** - * The time the subscription has or will end. - */ endTime?: string | null; - /** - * The time the subscription has or will start. - */ startTime?: string | null; - /** - * The type of subscription - */ type?: string | null; } - /** - * Memory hash detection contributing to the binary family match. - */ export interface Schema$Detection { - /** - * The name of the binary associated with the memory hash signature detection. - */ binary?: string | null; - /** - * The percentage of memory page hashes in the signature that were matched. - */ percentPagesMatched?: number | null; } - /** - * Represents discovered, customer managed workload that is not registered with the respective GCP service. - */ export interface Schema$DiscoveredWorkload { - /** - * The confidence in detection of this workload. - */ confidence?: string | null; - /** - * A boolean flag set to true if associated hardware strongly predicts the workload type. - */ detectedRelevantHardware?: boolean | null; - /** - * A boolean flag set to true if associated keywords strongly predict the workload type. - */ detectedRelevantKeywords?: boolean | null; - /** - * A boolean flag set to true if installed packages strongly predict the workload type. - */ detectedRelevantPackages?: boolean | null; - /** - * The type of workload. - */ workloadType?: string | null; } - /** - * Contains information about the disk associated with the finding. - */ export interface Schema$Disk { - /** - * The name of the disk, for example, "https://www.googleapis.com/compute/v1/projects/{project-id\}/zones/{zone-id\}/disks/{disk-id\}". - */ name?: string | null; } - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ export interface Schema$DiskPath { - /** - * UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid) - */ partitionUuid?: string | null; - /** - * Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh - */ relativePath?: string | null; } - /** - * The record of a dynamic mute rule that matches the finding. - */ export interface Schema$DynamicMuteRecord { - /** - * When the dynamic mute rule first matched the finding. - */ matchTime?: string | null; - /** - * The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`. - */ muteConfig?: string | null; } - /** - * A name-value pair representing an environment variable used in an operating system process. - */ export interface Schema$EnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. - */ name?: string | null; - /** - * Environment variable value as a JSON encoded string. - */ val?: string | null; } - /** - * Resource capturing the settings for the Event Threat Detection service. - */ export interface Schema$EventThreatDetectionSettings { - /** - * The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration. - */ modules?: {[key: string]: Schema$Config} | null; - /** - * Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings - */ name?: string | null; - /** - * The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED. - */ serviceEnablementState?: string | null; - /** - * Output only. The time the settings were last updated. - */ updateTime?: string | null; } - /** - * Resource where data was exfiltrated from or exfiltrated to. - */ export interface Schema$ExfilResource { - /** - * Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket. - */ components?: string[] | null; - /** - * The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name). - */ name?: string | null; } - /** - * Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to. - */ export interface Schema$Exfiltration { - /** - * If there are multiple sources, then the data is considered "joined" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source. - */ sources?: Schema$ExfilResource[]; - /** - * If there are multiple targets, each target would get a complete copy of the "joined" source data. - */ targets?: Schema$ExfilResource[]; - /** - * Total exfiltrated bytes processed for the entire job. - */ totalExfiltratedBytes?: string | null; } - /** - * The LRO metadata for a ExportFindings request. - */ export interface Schema$ExportFindingsMetadata { - /** - * Required. The destination BigQuery dataset to export findings to. - */ bigQueryDestination?: Schema$BigQueryDestination; - /** - * Optional. Timestamp at which export was started - */ exportStartTime?: string | null; } - /** - * The response to a ExportFindings request. Contains the LRO information. - */ export interface Schema$ExportFindingsResponse {} - /** - * 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; } - /** - * Details about the externally exposed resource associated with the finding. - */ export interface Schema$ExternalExposure { - /** - * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" - */ backendBucket?: string | null; - /** - * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ backendService?: string | null; - /** - * The name and version of the exposed web application, for example, "Jenkins 2.184". - */ exposedApplication?: string | null; - /** - * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” - */ exposedEndpoint?: string | null; - /** - * The name and version of the service, for example, "Jupyter Notebook 6.14.0". - */ exposedService?: string | null; - /** - * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". - */ forwardingRule?: string | null; - /** - * Hostname of the exposed application, for example, "https://test-app.a.run.app/" - */ hostnameUri?: string | null; - /** - * The http response returned by the web application. - */ httpResponse?: Schema$HttpResponse[]; - /** - * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". - */ instanceGroup?: string | null; - /** - * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ internalBackendService?: string | null; - /** - * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ loadBalancerFirewallPolicy?: string | null; - /** - * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". - */ networkEndpointGroup?: string | null; - /** - * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". - */ networkIngressFirewallPolicy?: string | null; - /** - * Private IP address of the exposed endpoint. - */ privateIpAddress?: string | null; - /** - * Port number associated with private IP address. - */ privatePort?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" - */ pscNetworkAttachment?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" - */ pscServiceAttachment?: string | null; - /** - * Public IP address of the exposed endpoint. - */ publicIpAddress?: string | null; - /** - * Public port number of the exposed endpoint. - */ publicPort?: string | null; - /** - * The full resource name of the firewall policy of the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ serviceFirewallPolicy?: string | null; } - /** - * File information about the related binary/library used by an executable, or the script used by a script interpreter - */ export interface Schema$File { - /** - * Prefix of the file contents as a JSON-encoded string. - */ contents?: string | null; - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ diskPath?: Schema$DiskPath; - /** - * The load state of the file. - */ fileLoadState?: string | null; - /** - * The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file. - */ hashedSize?: string | null; - /** - * Operation(s) performed on a file. - */ operations?: Schema$FileOperation[]; - /** - * True when the hash covers only a prefix of the file. - */ partiallyHashed?: boolean | null; - /** - * Absolute path of the file as a JSON encoded string. - */ path?: string | null; - /** - * SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file. - */ sha256?: string | null; - /** - * Size of the file in bytes. - */ size?: string | null; } - /** - * Operation(s) performed on a file. - */ export interface Schema$FileOperation { - /** - * The type of the operation - */ type?: string | null; } - /** - * Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding. - */ export interface Schema$Finding { - /** - * Access details associated with the finding, such as more information on the caller, which method was accessed, and from where. - */ access?: Schema$Access; - /** - * AffectedResources associated with the finding. - */ affectedResources?: Schema$AffectedResources; - /** - * Agent data access events associated with the finding. - */ agentDataAccessEvents?: Schema$AgentDataAccessEvent[]; - /** - * The AI model associated with the finding. - */ aiModel?: Schema$AiModel; - /** - * Represents an application associated with the finding. - */ application?: Schema$Application; - /** - * ArtifactGuardPolicies associated with the finding. - */ artifactGuardPolicies?: Schema$ArtifactGuardPolicies; - /** - * The results of an attack path simulation relevant to this finding. - */ attackExposure?: Schema$AttackExposure; - /** - * Fields related to Backup and DR findings. - */ backupDisasterRecovery?: Schema$BackupDisasterRecovery; - /** - * The canonical name of the finding. It's either "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}" or "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests. - */ chokepoint?: Schema$Chokepoint; - /** - * Fields related to Cloud Armor findings. - */ cloudArmor?: Schema$CloudArmor; - /** - * Cloud DLP data profile that is associated with the finding. - */ cloudDlpDataProfile?: Schema$CloudDlpDataProfile; - /** - * Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding. - */ cloudDlpInspection?: Schema$CloudDlpInspection; - /** - * Details about the compliance implications of the finding. - */ complianceDetails?: Schema$ComplianceDetails; - /** - * Contains compliance information for security standards associated to the finding. - */ compliances?: Schema$Compliance[]; - /** - * Contains information about the IP connection associated with the finding. - */ connections?: Schema$Connection[]; - /** - * Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { "security": { "contacts": [ { "email": "person1@company.com" \}, { "email": "person2@company.com" \} ] \} \} - */ contacts?: {[key: string]: Schema$ContactDetails} | null; - /** - * Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers. - */ containers?: Schema$Container[]; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * Data access events associated with the finding. - */ dataAccessEvents?: Schema$DataAccessEvent[]; - /** - * Database associated with the finding. - */ database?: Schema$Database; - /** - * Data flow events associated with the finding. - */ dataFlowEvents?: Schema$DataFlowEvent[]; - /** - * Data retention deletion events associated with the finding. - */ dataRetentionDeletionEvents?: Schema$DataRetentionDeletionEvent[]; - /** - * Contains more details about the finding. - */ description?: string | null; - /** - * DiscoveredWorkload associated with the finding. - */ discoveredWorkload?: Schema$DiscoveredWorkload; - /** - * Disk associated with the finding. - */ disk?: Schema$Disk; - /** - * The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * Represents exfiltrations associated with the finding. - */ exfiltration?: Schema$Exfiltration; - /** - * External exposure associated with the finding. - */ externalExposure?: Schema$ExternalExposure; - /** - * Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields. - */ externalSystems?: { [key: string]: Schema$GoogleCloudSecuritycenterV1ExternalSystem; } | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * File associated with the finding. - */ files?: Schema$File[]; - /** - * The class of the finding. - */ findingClass?: string | null; - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests. - */ groupMemberships?: Schema$GroupMembership[]; - /** - * Represents IAM bindings associated with the finding. - */ iamBindings?: Schema$IamBinding[]; - /** - * Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ indicator?: Schema$Indicator; - /** - * IP rules associated with the finding. - */ ipRules?: Schema$IpRules; - /** - * Job associated with the finding. - */ job?: Schema$Job; - /** - * Signature of the kernel rootkit. - */ kernelRootkit?: Schema$KernelRootkit; - /** - * Kubernetes resources associated with the finding. - */ kubernetes?: Schema$Kubernetes; - /** - * The load balancers associated with the finding. - */ loadBalancers?: Schema$LoadBalancer[]; - /** - * Log entries that are relevant to the finding. - */ logEntries?: Schema$LogEntry[]; - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ mitreAttack?: Schema$MitreAttack; - /** - * Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885 - */ moduleName?: string | null; - /** - * Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute. - */ mute?: string | null; - /** - * Output only. The mute information regarding this finding. - */ muteInfo?: Schema$MuteInfo; - /** - * Records additional information about the mute operation, for example, the [mute configuration](/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding. - */ muteInitiator?: string | null; - /** - * Output only. The most recent time this finding was muted or unmuted. - */ muteUpdateTime?: string | null; - /** - * The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}", "projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}". - */ name?: string | null; - /** - * Represents the VPC networks that the resource is attached to. - */ networks?: Schema$Network[]; - /** - * Steps to address the finding. - */ nextSteps?: string | null; - /** - * Notebook associated with the finding. - */ notebook?: Schema$Notebook; - /** - * Contains information about the org policies associated with the finding. - */ orgPolicies?: Schema$OrgPolicy[]; - /** - * The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ parent?: string | null; - /** - * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". - */ parentDisplayName?: string | null; - /** - * PolicyViolationSummary associated with the finding. - */ policyViolationSummary?: Schema$PolicyViolationSummary; - /** - * Represents operating system processes associated with the Finding. - */ processes?: Schema$Process[]; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Secret associated with the finding. - */ secret?: Schema$Secret; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$SecurityMarks; - /** - * The security posture associated with the finding. - */ securityPosture?: Schema$SecurityPosture; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests. - */ toxicCombination?: Schema$ToxicCombination; - /** - * VertexAi associated with the finding. - */ vertexAi?: Schema$VertexAi; - /** - * Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ vulnerability?: Schema$Vulnerability; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Compliance framework associated with the finding. - */ export interface Schema$Framework { - /** - * Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads - */ category?: string[] | null; - /** - * The controls associated with the framework. - */ controls?: Schema$Control[]; - /** - * Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework - */ displayName?: string | null; - /** - * Name of the framework associated with the finding - */ name?: string | null; - /** - * Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture) - */ type?: string | null; } - /** - * Google Cloud metadata associated with the resource. Only applicable if the finding's cloud provider is Google Cloud. - */ export interface Schema$GcpMetadata { - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$GoogleCloudSecuritycenterV2Folder[]; - /** - * The name of the organization that the resource belongs to. - */ organization?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; } - /** - * Represents a geographical location for a given access. - */ export interface Schema$Geolocation { - /** - * A CLDR. - */ regionCode?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1beta1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * Configures how to deliver Findings to BigQuery Instance. - */ export interface Schema$GoogleCloudSecuritycenterV1BigQueryExport { - /** - * Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation. - */ createTime?: string | null; - /** - * The dataset to write findings' updates to. Its format is "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). - */ dataset?: string | null; - /** - * The description of the export (max of 1024 characters). - */ description?: string | null; - /** - * Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update. - */ mostRecentEditor?: string | null; - /** - * The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. Example format: "organizations/{organization_id\}/bigQueryExports/{export_id\}" Example format: "folders/{folder_id\}/bigQueryExports/{export_id\}" Example format: "projects/{project_id\}/bigQueryExports/{export_id\}" This field is provided in responses, and is ignored when provided in create requests. - */ name?: string | null; - /** - * Output only. The service account that needs permission to create table and upload data to the BigQuery dataset. - */ principal?: string | null; - /** - * Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update. - */ updateTime?: string | null; } - /** - * Represents a Kubernetes RoleBinding or ClusterRoleBinding. - */ export interface Schema$GoogleCloudSecuritycenterV1Binding { - /** - * Name for the binding. - */ name?: string | null; - /** - * Namespace for the binding. - */ ns?: string | null; - /** - * The Role or ClusterRole referenced by the binding. - */ role?: Schema$Role; - /** - * Represents one or more subjects that are bound to the role. Not always available for PATCH requests. - */ subjects?: Schema$Subject[]; } - /** - * The response to a BulkMute request. Contains the LRO information. - */ export interface Schema$GoogleCloudSecuritycenterV1BulkMuteFindingsResponse {} - /** - * Defines the properties in a custom module configuration for Security Health Analytics. Use the custom module configuration to create custom detectors that generate custom findings for resources that you specify. - */ export interface Schema$GoogleCloudSecuritycenterV1CustomConfig { - /** - * Custom output properties. - */ customOutput?: Schema$GoogleCloudSecuritycenterV1CustomOutputSpec; - /** - * Text that describes the vulnerability or misconfiguration that the custom module detects. This explanation is returned with each finding instance to help investigators understand the detected issue. The text must be enclosed in quotation marks. - */ description?: string | null; - /** - * The CEL expression to evaluate to produce findings. When the expression evaluates to true against a resource, a finding is generated. - */ predicate?: Schema$Expr; - /** - * An explanation of the recommended steps that security teams can take to resolve the detected issue. This explanation is returned with each finding generated by this module in the `nextSteps` property of the finding JSON. - */ recommendation?: string | null; - /** - * The resource types that the custom module operates on. Each custom module can specify up to 5 resource types. - */ resourceSelector?: Schema$GoogleCloudSecuritycenterV1ResourceSelector; - /** - * The severity to assign to findings generated by the module. - */ severity?: string | null; } - /** - * A set of optional name-value pairs that define custom source properties to return with each finding that is generated by the custom module. The custom source properties that are defined here are included in the finding JSON under `sourceProperties`. - */ export interface Schema$GoogleCloudSecuritycenterV1CustomOutputSpec { - /** - * A list of custom output properties to add to the finding. - */ properties?: Schema$GoogleCloudSecuritycenterV1Property[]; } - /** - * An EffectiveSecurityHealthAnalyticsCustomModule is the representation of a Security Health Analytics custom module at a specified level of the resource hierarchy: organization, folder, or project. If a custom module is inherited from a parent organization or folder, the value of the `enablementState` property in EffectiveSecurityHealthAnalyticsCustomModule is set to the value that is effective in the parent, instead of `INHERITED`. For example, if the module is enabled in a parent organization or folder, the effective enablement_state for the module in all child folders or projects is also `enabled`. EffectiveSecurityHealthAnalyticsCustomModule is read-only. - */ export interface Schema$GoogleCloudSecuritycenterV1EffectiveSecurityHealthAnalyticsCustomModule { - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * Output only. The user-specified configuration for the module. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * Output only. The display name for the custom module. The name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. - */ displayName?: string | null; - /** - * Output only. The effective state of enablement for the module at the given level of the hierarchy. - */ enablementState?: string | null; - /** - * Output only. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/effectiveCustomModules/{customModule\}" - */ name?: string | null; } - /** - * Representation of third party SIEM/SOAR fields within SCC. - */ export interface Schema$GoogleCloudSecuritycenterV1ExternalSystem { - /** - * References primary/secondary etc assignees in the external system. - */ assignees?: string[] | null; - /** - * The time when the case was closed, as reported by the external system. - */ caseCloseTime?: string | null; - /** - * The time when the case was created, as reported by the external system. - */ caseCreateTime?: string | null; - /** - * The priority of the finding's corresponding case in the external system. - */ casePriority?: string | null; - /** - * The SLA of the finding's corresponding case in the external system. - */ caseSla?: string | null; - /** - * The link to the finding's corresponding case in the external system. - */ caseUri?: string | null; - /** - * The time when the case was last updated, as reported by the external system. - */ externalSystemUpdateTime?: string | null; - /** - * The identifier that's used to track the finding's corresponding case in the external system. - */ externalUid?: string | null; - /** - * Full resource name of the external system, for example: "organizations/1234/sources/5678/findings/123456/externalSystems/jira", "folders/1234/sources/5678/findings/123456/externalSystems/jira", "projects/1234/sources/5678/findings/123456/externalSystems/jira" - */ name?: string | null; - /** - * The most recent status of the finding's corresponding case, as reported by the external system. - */ status?: string | null; - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ ticketInfo?: Schema$TicketInfo; } - /** - * A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings. - */ export interface Schema$GoogleCloudSecuritycenterV1MuteConfig { - /** - * Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation. - */ createTime?: string | null; - /** - * A description of the mute config. - */ description?: string | null; - /** - * The human readable name to be displayed for the mute config. - */ displayName?: string | null; - /** - * Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings. - */ expiryTime?: string | null; - /** - * Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:` - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update. - */ mostRecentEditor?: string | null; - /** - * This field will be ignored if provided on config creation. Format `organizations/{organization\}/muteConfigs/{mute_config\}` `folders/{folder\}/muteConfigs/{mute_config\}` `projects/{project\}/muteConfigs/{mute_config\}` `organizations/{organization\}/locations/global/muteConfigs/{mute_config\}` `folders/{folder\}/locations/global/muteConfigs/{mute_config\}` `projects/{project\}/locations/global/muteConfigs/{mute_config\}` - */ name?: string | null; - /** - * Optional. The type of the mute config, which determines what type of mute state the config affects. The static mute state takes precedence over the dynamic mute state. Immutable after creation. STATIC by default if not set during creation. - */ type?: string | null; - /** - * Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update. - */ updateTime?: string | null; } - /** - * Cloud SCC's Notification - */ export interface Schema$GoogleCloudSecuritycenterV1NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to this notification's Finding. - */ resource?: Schema$GoogleCloudSecuritycenterV1Resource; } - /** - * Security Command Center finding. A finding is a record of assessment data (security, risk, health or privacy) ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, an XSS vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Finding { - /** - * The canonical name of the finding. It's either "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}", "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}" or "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}", depending on the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * The additional taxonomy group within findings from a given source. This field is immutable after creation time. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * The time at which the event took place, or when an update to the finding occurred. For example, if the finding represents an open firewall it would capture the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding were to be resolved afterward, this time would reflect when the finding was resolved. Must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * The relative resource name of this finding. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Example: "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}" - */ name?: string | null; - /** - * The relative resource name of the source the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. For example: "organizations/{organization_id\}/sources/{source_id\}" - */ parent?: string | null; - /** - * For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. This field is immutable after creation time. - */ resourceName?: string | null; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV1p1beta1SecurityMarks; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * The state of the finding. - */ state?: string | null; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Security Command Center's Notification - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$GoogleCloudSecuritycenterV1p1beta1Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to the notification. - */ resource?: Schema$GoogleCloudSecuritycenterV1p1beta1Resource; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1Resource { - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$GoogleCloudSecuritycenterV1p1beta1Folder[]; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project id that the resource belongs to. - */ projectDisplayName?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV1p1beta1SecurityMarks { - /** - * The canonical name of the marks. Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "folders/{folder_id\}/assets/{asset_id\}/securityMarks" "projects/{project_number\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * An individual name-value pair that defines a custom source property. - */ - export interface Schema$GoogleCloudSecuritycenterV1Property { - /** - * Name of the property for the custom output. - */ + export interface Schema$GoogleCloudSecuritycenterV1Property { name?: string | null; - /** - * The CEL expression for the custom output. A resource property can be specified to return the value of the property or a text string enclosed in quotation marks. - */ valueExpression?: Schema$Expr; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV1Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV1ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$AzureMetadata; - /** - * Indicates which cloud provider the resource resides in. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * Output only. Contains a Folder message for each folder in the assets ancestry. The first folder is the deepest nested folder, and the last folder is the folder directly under the Organization. - */ folders?: Schema$Folder[]; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Indicates which organization or tenant in the cloud provider the finding applies to. - */ organization?: string | null; - /** - * The full resource name of resource's parent. - */ parent?: string | null; - /** - * The human readable name of resource's parent. - */ parentDisplayName?: string | null; - /** - * The full resource name of project that the resource belongs to. - */ project?: string | null; - /** - * The project ID that the resource belongs to. - */ projectDisplayName?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id\}/folders/{folder_id\}/folders/{folder_id\}/projects/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The parent service or product from which the resource is provided, for example, GKE or SNS. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * The App Hub Application associated with the finding's resource. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * Resource for selecting resource type. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceSelector { - /** - * The resource types to run the detector on. - */ resourceTypes?: string[] | null; } - /** - * A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations. - */ export interface Schema$GoogleCloudSecuritycenterV1ResourceValueConfig { - /** - * Cloud provider this configuration applies to - */ cloudProvider?: string | null; - /** - * Output only. Timestamp this resource value configuration was created. - */ createTime?: string | null; - /** - * Description of the resource value configuration. - */ description?: string | null; - /** - * Name for the resource value configuration - */ name?: string | null; - /** - * List of resource labels to search for, evaluated with `AND`. For example, `"resource_labels_selector": {"key": "value", "env": "prod"\}` will match resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.com/resource-manager/docs/creating-managing-labels - */ resourceLabelsSelector?: {[key: string]: string} | null; - /** - * Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "storage.googleapis.com/Bucket" resources. - */ resourceType?: string | null; - /** - * Required. Resource value level this expression represents - */ resourceValue?: string | null; - /** - * Project or folder to scope this configuration to. For example, "project/456" would apply this configuration only to resources in "project/456" scope will be checked with `AND` of other resources. - */ scope?: string | null; - /** - * A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. "bigquery.googleapis.com/Dataset". - */ sensitiveDataProtectionMapping?: Schema$GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping; - /** - * Required. Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of "tagValues/123". Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing - */ tagValues?: string[] | null; - /** - * Output only. Timestamp this resource value configuration was last updated. - */ updateTime?: string | null; } - /** - * Response of asset discovery run - */ export interface Schema$GoogleCloudSecuritycenterV1RunAssetDiscoveryResponse { - /** - * The duration between asset discovery run start and end - */ duration?: string | null; - /** - * The state of an asset discovery run. - */ state?: string | null; } - /** - * Represents an instance of a Security Health Analytics custom module, including its full module name, display name, enablement state, and last updated time. You can create a custom module at the organization, folder, or project level. Custom modules that you create at the organization or folder level are inherited by the child folders and projects. - */ export interface Schema$GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule { - /** - * Output only. If empty, indicates that the custom module was created in the organization, folder, or project in which you are viewing the custom module. Otherwise, `ancestor_module` specifies the organization or folder from which the custom module is inherited. - */ ancestorModule?: string | null; - /** - * The cloud provider of the custom module. - */ cloudProvider?: string | null; - /** - * The user specified custom configuration for the module. - */ customConfig?: Schema$GoogleCloudSecuritycenterV1CustomConfig; - /** - * The display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. - */ displayName?: string | null; - /** - * The enablement state of the custom module. - */ enablementState?: string | null; - /** - * Output only. The editor that last updated the custom module. - */ lastEditor?: string | null; - /** - * Immutable. The resource name of the custom module. Its format is "organizations/{organization\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "folders/{folder\}/securityHealthAnalyticsSettings/customModules/{customModule\}", or "projects/{project\}/securityHealthAnalyticsSettings/customModules/{customModule\}" The id {customModule\} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. - */ name?: string | null; - /** - * Output only. The time at which the custom module was last updated. - */ updateTime?: string | null; } - /** - * Resource value mapping for Sensitive Data Protection findings. If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration. - */ export interface Schema$GoogleCloudSecuritycenterV1SensitiveDataProtectionMapping { - /** - * Resource value mapping for high-sensitivity Sensitive Data Protection findings - */ highSensitivityMapping?: string | null; - /** - * Resource value mapping for medium-sensitivity Sensitive Data Protection findings - */ mediumSensitivityMapping?: string | null; } - /** - * Represents an access event. - */ export interface Schema$GoogleCloudSecuritycenterV2Access { - /** - * Caller's IP address, such as "1.1.1.1". - */ callerIp?: string | null; - /** - * The caller IP's geolocation, which identifies where the call came from. - */ callerIpGeo?: Schema$GoogleCloudSecuritycenterV2Geolocation; - /** - * The method that the service account called, e.g. "SetIamPolicy". - */ methodName?: string | null; - /** - * Associated email, such as "foo@google.com". The email address of the authenticated user or a service account acting on behalf of a third party principal making the request. For third party identity callers, the `principal_subject` field is populated instead of this field. For privacy reasons, the principal email address is sometimes redacted. For more information, see [Caller identities in audit logs](https://cloud.google.com/logging/docs/audit#user-id). - */ principalEmail?: string | null; - /** - * A string that represents the principal_subject that is associated with the identity. Unlike `principal_email`, `principal_subject` supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format is `principal://iam.googleapis.com/{identity pool name\}/subject/{subject\}`. Some GKE identities, such as GKE_WORKLOAD, FREEFORM, and GKE_HUB_WORKLOAD, still use the legacy format `serviceAccount:{identity pool name\}[{subject\}]`. - */ principalSubject?: string | null; - /** - * The identity delegation history of an authenticated service account that made the request. The `serviceAccountDelegationInfo[]` object contains information about the real authorities that try to access Google Cloud resources by delegating on a service account. When multiple authorities are present, they are guaranteed to be sorted based on the original ordering of the identity delegation events. - */ serviceAccountDelegationInfo?: Schema$GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo[]; - /** - * The name of the service account key that was used to create or exchange credentials when authenticating the service account that made the request. This is a scheme-less URI full resource name. For example: "//iam.googleapis.com/projects/{PROJECT_ID\}/serviceAccounts/{ACCOUNT\}/keys/{key\}". - */ serviceAccountKeyName?: string | null; - /** - * This is the API service that the service account made a call to, e.g. "iam.googleapis.com" - */ serviceName?: string | null; - /** - * The caller's user agent string associated with the finding. - */ userAgent?: string | null; - /** - * Type of user agent associated with the finding. For example, an operating system shell or an embedded or standalone application. - */ userAgentFamily?: string | null; - /** - * A string that represents a username. The username provided depends on the type of the finding and is likely not an IAM principal. For example, this can be a system username if the finding is related to a virtual machine, or it can be an application login username. - */ userName?: string | null; } - /** - * Conveys information about a Kubernetes access review (such as one returned by a [`kubectl auth can-i`](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#checking-api-access) command) that was involved in a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AccessReview { - /** - * The API group of the resource. "*" means all. - */ group?: string | null; - /** - * The name of the resource being requested. Empty means all. - */ name?: string | null; - /** - * Namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces. Both are represented by "" (empty). - */ ns?: string | null; - /** - * The optional resource type requested. "*" means all. - */ resource?: string | null; - /** - * The optional subresource type. - */ subresource?: string | null; - /** - * A Kubernetes resource API verb, like get, list, watch, create, update, delete, proxy. "*" means all. - */ verb?: string | null; - /** - * The API version of the resource. "*" means all. - */ version?: string | null; } - /** - * Information about [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/cloud-armor-overview#google-cloud-armor-adaptive-protection). - */ export interface Schema$GoogleCloudSecuritycenterV2AdaptiveProtection { - /** - * A score of 0 means that there is low confidence that the detected event is an actual attack. A score of 1 means that there is high confidence that the detected event is an attack. See the [Adaptive Protection documentation](https://cloud.google.com/armor/docs/adaptive-protection-overview#configure-alert-tuning) for further explanation. - */ confidence?: number | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Details about resources affected by this finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AffectedResources { - /** - * The count of resources affected by the finding. - */ count?: string | null; } - /** - * Details about a data access attempt made by an agent principal not authorized under applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The agent principal that accessed the data. - */ principalSubject?: string | null; } - /** - * Contains information about the AI model associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2AiModel { - /** - * The platform on which the model is deployed. - */ deploymentPlatform?: string | null; - /** - * The user defined display name of model. Ex. baseline-classification-model - */ displayName?: string | null; - /** - * The domain of the model, for example, “image-classification”. - */ domain?: string | null; - /** - * The name of the model library, for example, “transformers”. - */ library?: string | null; - /** - * The region in which the model is used, for example, “us-central1”. - */ location?: string | null; - /** - * The name of the AI model, for example, "gemini:1.0.0". - */ name?: string | null; - /** - * The publisher of the model, for example, “google” or “nvidia”. - */ publisher?: string | null; - /** - * The purpose of the model, for example, "Inteference" or "Training". - */ usageCategory?: string | null; } - /** - * Allowed IP rule. - */ export interface Schema$GoogleCloudSecuritycenterV2Allowed { - /** - * Optional. Optional list of allowed IP rules. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRule[]; } - /** - * Represents an application associated with a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Application { - /** - * The base URI that identifies the network location of the application in which the vulnerability was detected. For example, `http://example.com`. - */ baseUri?: string | null; - /** - * The full URI with payload that could be used to reproduce the vulnerability. For example, `http://example.com?p=aMmYgI6H`. - */ fullUri?: string | null; } - /** - * Represents the result of evaluating artifact guard policies. - */ export interface Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicies { - /** - * A list of failing policies. - */ failingPolicies?: Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicy[]; - /** - * The ID of the resource that has policies configured for it. - */ resourceId?: string | null; } - /** - * Represents an artifact guard policy. - */ export interface Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicy { - /** - * The reason for the policy failure, for example, "severity=HIGH AND max_vuln_count=2". - */ failureReason?: string | null; - /** - * The ID of the failing policy, for example, "organizations/3392779/locations/global/policies/prod-policy". - */ policyId?: string | null; - /** - * The type of the policy evaluation. - */ type?: string | null; } - /** - * Information about DDoS attack volume and classification. - */ export interface Schema$GoogleCloudSecuritycenterV2Attack { - /** - * Type of attack, for example, 'SYN-flood', 'NTP-udp', or 'CHARGEN-udp'. - */ classification?: string | null; - /** - * Total BPS (bytes per second) volume of attack. Deprecated - refer to volume_bps_long instead. - */ - volumeBps?: number | null; - /** - * Total BPS (bytes per second) volume of attack. - */ + volumeBps?: number | null; volumeBpsLong?: string | null; - /** - * Total PPS (packets per second) volume of attack. Deprecated - refer to volume_pps_long instead. - */ volumePps?: number | null; - /** - * Total PPS (packets per second) volume of attack. - */ volumePpsLong?: string | null; } - /** - * An attack exposure contains the results of an attack path simulation run. - */ export interface Schema$GoogleCloudSecuritycenterV2AttackExposure { - /** - * The resource name of the attack path simulation result that contains the details regarding this attack exposure score. Example: `organizations/123/simulations/456/attackExposureResults/789` - */ attackExposureResult?: string | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedHighValueResourcesCount?: number | null; - /** - * The number of high value resources that are exposed as a result of this finding. - */ exposedLowValueResourcesCount?: number | null; - /** - * The number of medium value resources that are exposed as a result of this finding. - */ exposedMediumValueResourcesCount?: number | null; - /** - * The most recent time the attack exposure was updated on this finding. - */ latestCalculationTime?: string | null; - /** - * A number between 0 (inclusive) and infinity that represents how important this finding is to remediate. The higher the score, the more important it is to remediate. - */ score?: number | null; - /** - * Output only. What state this AttackExposure is in. This captures whether or not an attack exposure has been calculated or not. - */ state?: string | null; } - /** - * An AWS account that is a member of an organization. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsAccount { - /** - * The unique identifier (ID) of the account, containing exactly 12 digits. - */ id?: string | null; - /** - * The friendly name of this account. - */ name?: string | null; } - /** - * AWS metadata associated with the resource, only applicable if the finding's cloud provider is Amazon Web Services. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsMetadata { - /** - * The AWS account associated with the resource. - */ account?: Schema$GoogleCloudSecuritycenterV2AwsAccount; - /** - * The AWS organization associated with the resource. - */ organization?: Schema$GoogleCloudSecuritycenterV2AwsOrganization; - /** - * A list of AWS organizational units associated with the resource, ordered from lowest level (closest to the account) to highest level. - */ organizationalUnits?: Schema$GoogleCloudSecuritycenterV2AwsOrganizationalUnit[]; } - /** - * An organization is a collection of accounts that are centrally managed together using consolidated billing, organized hierarchically with organizational units (OUs), and controlled with policies. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsOrganization { - /** - * The unique identifier (ID) for the organization. The regex pattern for an organization ID string requires "o-" followed by from 10 to 32 lowercase letters or digits. - */ id?: string | null; } - /** - * An Organizational Unit (OU) is a container of AWS accounts within a root of an organization. Policies that are attached to an OU apply to all accounts contained in that OU and in any child OUs. - */ export interface Schema$GoogleCloudSecuritycenterV2AwsOrganizationalUnit { - /** - * The unique identifier (ID) associated with this OU. The regex pattern for an organizational unit ID string requires "ou-" followed by from 4 to 32 lowercase letters or digits (the ID of the root that contains the OU). This string is followed by a second "-" dash and from 8 to 32 additional lowercase letters or digits. For example, "ou-ab12-cd34ef56". - */ id?: string | null; - /** - * The friendly name of the OU. - */ name?: string | null; } - /** - * Represents an Azure management group. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureManagementGroup { - /** - * The display name of the Azure management group. - */ displayName?: string | null; - /** - * The UUID of the Azure management group, for example, `20000000-0001-0000-0000-000000000000`. - */ id?: string | null; } - /** - * Azure metadata associated with the resource, only applicable if the finding's cloud provider is Microsoft Azure. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureMetadata { - /** - * A list of Azure management groups associated with the resource, ordered from lowest level (closest to the subscription) to highest level. - */ managementGroups?: Schema$GoogleCloudSecuritycenterV2AzureManagementGroup[]; - /** - * The Azure resource group associated with the resource. - */ resourceGroup?: Schema$GoogleCloudSecuritycenterV2AzureResourceGroup; - /** - * The Azure subscription associated with the resource. - */ subscription?: Schema$GoogleCloudSecuritycenterV2AzureSubscription; - /** - * The Azure Entra tenant associated with the resource. - */ tenant?: Schema$GoogleCloudSecuritycenterV2AzureTenant; } - /** - * Represents an Azure resource group. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureResourceGroup { - /** - * The ID of the Azure resource group. - */ id?: string | null; - /** - * The name of the Azure resource group. This is not a UUID. - */ name?: string | null; } - /** - * Represents an Azure subscription. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureSubscription { - /** - * The display name of the Azure subscription. - */ displayName?: string | null; - /** - * The UUID of the Azure subscription, for example, `291bba3f-e0a5-47bc-a099-3bdcb2a50a05`. - */ id?: string | null; } - /** - * Represents a Microsoft Entra tenant. - */ export interface Schema$GoogleCloudSecuritycenterV2AzureTenant { - /** - * The display name of the Azure tenant. - */ displayName?: string | null; - /** - * The ID of the Microsoft Entra tenant, for example, "a11aaa11-aa11-1aa1-11aa-1aaa11a". - */ id?: string | null; } - /** - * Information related to Google Cloud Backup and DR Service findings. - */ export interface Schema$GoogleCloudSecuritycenterV2BackupDisasterRecovery { - /** - * The name of the Backup and DR appliance that captures, moves, and manages the lifecycle of backup data. For example, `backup-server-57137`. - */ appliance?: string | null; - /** - * The names of Backup and DR applications. An application is a VM, database, or file system on a managed host monitored by a backup and recovery appliance. For example, `centos7-01-vol00`, `centos7-01-vol01`, `centos7-01-vol02`. - */ applications?: string[] | null; - /** - * The timestamp at which the Backup and DR backup was created. - */ backupCreateTime?: string | null; - /** - * The name of a Backup and DR template which comprises one or more backup policies. See the [Backup and DR documentation](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#temp) for more information. For example, `snap-ov`. - */ backupTemplate?: string | null; - /** - * The backup type of the Backup and DR image. For example, `Snapshot`, `Remote Snapshot`, `OnVault`. - */ backupType?: string | null; - /** - * The name of a Backup and DR host, which is managed by the backup and recovery appliance and known to the management console. The host can be of type Generic (for example, Compute Engine, SQL Server, Oracle DB, SMB file system, etc.), vCenter, or an ESX server. See the [Backup and DR documentation on hosts](https://cloud.google.com/backup-disaster-recovery/docs/configuration/manage-hosts-and-their-applications) for more information. For example, `centos7-01`. - */ host?: string | null; - /** - * The names of Backup and DR policies that are associated with a template and that define when to run a backup, how frequently to run a backup, and how long to retain the backup image. For example, `onvaults`. - */ policies?: string[] | null; - /** - * The names of Backup and DR advanced policy options of a policy applying to an application. See the [Backup and DR documentation on policy options](https://cloud.google.com/backup-disaster-recovery/docs/create-plan/policy-settings). For example, `skipofflineappsincongrp, nounmap`. - */ policyOptions?: string[] | null; - /** - * The name of the Backup and DR resource profile that specifies the storage media for backups of application and VM data. See the [Backup and DR documentation on profiles](https://cloud.google.com/backup-disaster-recovery/docs/concepts/backup-plan#profile). For example, `GCP`. - */ profile?: string | null; - /** - * The name of the Backup and DR storage pool that the backup and recovery appliance is storing data in. The storage pool could be of type Cloud, Primary, Snapshot, or OnVault. See the [Backup and DR documentation on storage pools](https://cloud.google.com/backup-disaster-recovery/docs/concepts/storage-pools). For example, `DiskPoolOne`. - */ storagePool?: string | null; } - /** - * Configures how to deliver Findings to BigQuery Instance. - */ export interface Schema$GoogleCloudSecuritycenterV2BigQueryExport { - /** - * Output only. The time at which the BigQuery export was created. This field is set by the server and will be ignored if provided on export on creation. - */ createTime?: string | null; - /** - * Output only. The resource name of the Cloud KMS `CryptoKey` used to protect this configuration's data, if configured during Security Command Center activation. - */ cryptoKeyName?: string | null; - /** - * The dataset to write findings' updates to. Its format is "projects/[project_id]/datasets/[bigquery_dataset_id]". BigQuery dataset unique ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). - */ dataset?: string | null; - /** - * The description of the export (max of 1024 characters). - */ description?: string | null; - /** - * Expression that defines the filter to apply across create/update events of findings. The expression is a list of zero or more restrictions combined via logical operators `AND` and `OR`. Parentheses are supported, and `OR` has higher precedence than `AND`. Restrictions have the form ` ` and may have a `-` character in front of them to indicate negation. The fields map to those defined in the corresponding resource. The supported operators are: * `=` for all value types. * `\>`, `<`, `\>=`, `<=` for integer values. * `:`, meaning substring matching, for strings. The supported value types are: * string literals in quotes. * integer literals without quotes. * boolean literals `true` and `false` without quotes. - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the BigQuery export. This field is set by the server and will be ignored if provided on export creation or update. - */ mostRecentEditor?: string | null; - /** - * Identifier. The relative resource name of this export. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name. The following list shows some examples: + `organizations/{organization_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` + `folders/{folder_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` + `projects/{project_id\}/locations/{location_id\}/bigQueryExports/{export_id\}` This field is provided in responses, and is ignored when provided in create requests. - */ name?: string | null; - /** - * Output only. The service account that needs permission to create table and upload data to the BigQuery dataset. - */ principal?: string | null; - /** - * Output only. The most recent time at which the BigQuery export was updated. This field is set by the server and will be ignored if provided on export creation or update. - */ updateTime?: string | null; } - /** - * Represents a Kubernetes RoleBinding or ClusterRoleBinding. - */ export interface Schema$GoogleCloudSecuritycenterV2Binding { - /** - * Name for the binding. - */ name?: string | null; - /** - * Namespace for the binding. - */ ns?: string | null; - /** - * The Role or ClusterRole referenced by the binding. - */ role?: Schema$GoogleCloudSecuritycenterV2Role; - /** - * Represents one or more subjects that are bound to the role. Not always available for PATCH requests. - */ subjects?: Schema$GoogleCloudSecuritycenterV2Subject[]; } - /** - * The response to a BulkMute request. Contains the LRO information. - */ export interface Schema$GoogleCloudSecuritycenterV2BulkMuteFindingsResponse {} - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). - */ export interface Schema$GoogleCloudSecuritycenterV2Chokepoint { - /** - * List of resource names of findings associated with this chokepoint. For example, organizations/123/sources/456/findings/789. This list will have at most 100 findings. - */ relatedFindings?: string[] | null; } - /** - * Fields related to Google Cloud Armor findings. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudArmor { - /** - * Information about potential Layer 7 DDoS attacks identified by [Google Cloud Armor Adaptive Protection](https://cloud.google.com/armor/docs/adaptive-protection-overview). - */ adaptiveProtection?: Schema$GoogleCloudSecuritycenterV2AdaptiveProtection; - /** - * Information about DDoS attack volume and classification. - */ attack?: Schema$GoogleCloudSecuritycenterV2Attack; - /** - * Duration of attack from the start until the current moment (updated every 5 minutes). - */ duration?: string | null; - /** - * Information about incoming requests evaluated by [Google Cloud Armor security policies](https://cloud.google.com/armor/docs/security-policy-overview). - */ requests?: Schema$GoogleCloudSecuritycenterV2Requests; - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ securityPolicy?: Schema$GoogleCloudSecuritycenterV2SecurityPolicy; - /** - * Distinguish between volumetric & protocol DDoS attack and application layer attacks. For example, "L3_4" for Layer 3 and Layer 4 DDoS attacks, or "L_7" for Layer 7 DDoS attacks. - */ threatVector?: string | null; } - /** - * CloudControl associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudControl { - /** - * Name of the CloudControl associated with the finding. - */ cloudControlName?: string | null; - /** - * Policy type of the CloudControl - */ policyType?: string | null; - /** - * Type of cloud control. - */ type?: string | null; - /** - * Version of the Cloud Control - */ version?: number | null; } - /** - * The [data profile](https://cloud.google.com/dlp/docs/data-profiles) associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudDlpDataProfile { - /** - * Name of the data profile, for example, `projects/123/locations/europe/tableProfiles/8383929`. - */ dataProfile?: string | null; - /** - * Type of information detected by SDP. Info type includes name, version and sensitivity of the detected information type. - */ infoTypes?: Schema$GoogleCloudSecuritycenterV2InfoType[]; - /** - * The resource hierarchy level at which the data profile was generated. - */ parentType?: string | null; } - /** - * Details about the Cloud Data Loss Prevention (Cloud DLP) [inspection job](https://cloud.google.com/dlp/docs/concepts-job-triggers) that produced the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2CloudDlpInspection { - /** - * Whether Cloud DLP scanned the complete resource or a sampled subset. - */ fullScan?: boolean | null; - /** - * The type of information (or *[infoType](https://cloud.google.com/dlp/docs/infotypes-reference)*) found, for example, `EMAIL_ADDRESS` or `STREET_ADDRESS`. - */ infoType?: string | null; - /** - * The number of times Cloud DLP found this infoType within this job and resource. - */ infoTypeCount?: string | null; - /** - * Name of the inspection job, for example, `projects/123/locations/europe/dlpJobs/i-8383929`. - */ inspectJob?: string | null; } - /** - * Metadata taken from a [Cloud Logging LogEntry](https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry) - */ export interface Schema$GoogleCloudSecuritycenterV2CloudLoggingEntry { - /** - * A unique identifier for the log entry. - */ insertId?: string | null; - /** - * The type of the log (part of `log_name`. `log_name` is the resource name of the log to which this log entry belongs). For example: `cloudresourcemanager.googleapis.com/activity` Note that this field is not URL-encoded, unlike in `LogEntry`. - */ logId?: string | null; - /** - * The organization, folder, or project of the monitored resource that produced this log entry. - */ resourceContainer?: string | null; - /** - * The time the event described by the log entry occurred. - */ timestamp?: string | null; } - /** - * Contains compliance information about a security standard indicating unmet recommendations. - */ export interface Schema$GoogleCloudSecuritycenterV2Compliance { - /** - * Policies within the standard or benchmark, for example, A.12.4.1 - */ ids?: string[] | null; - /** - * Industry-wide compliance standards or benchmarks, such as CIS, PCI, and OWASP. - */ standard?: string | null; - /** - * Version of the standard or benchmark, for example, 1.1 - */ version?: string | null; } - /** - * Compliance Details associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2ComplianceDetails { - /** - * CloudControl associated with the finding - */ cloudControl?: Schema$GoogleCloudSecuritycenterV2CloudControl; - /** - * Cloud Control Deployments associated with the finding. For example, organizations/123/locations/global/cloudControlDeployments/deploymentIdentifier - */ cloudControlDeploymentNames?: string[] | null; - /** - * Details of Frameworks associated with the finding - */ frameworks?: Schema$GoogleCloudSecuritycenterV2Framework[]; } - /** - * Contains information about the IP connection associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Connection { - /** - * Destination IP address. Not present for sockets that are listening and not connected. - */ destinationIp?: string | null; - /** - * Destination port. Not present for sockets that are listening and not connected. - */ destinationPort?: number | null; - /** - * IANA Internet Protocol Number such as TCP(6) and UDP(17). - */ protocol?: string | null; - /** - * Source IP address. - */ sourceIp?: string | null; - /** - * Source port. - */ sourcePort?: number | null; } - /** - * The email address of a contact. - */ export interface Schema$GoogleCloudSecuritycenterV2Contact { - /** - * An email address. For example, "`person123@company.com`". - */ email?: string | null; } - /** - * Details about specific contacts - */ export interface Schema$GoogleCloudSecuritycenterV2ContactDetails { - /** - * A list of contacts - */ contacts?: Schema$GoogleCloudSecuritycenterV2Contact[]; } - /** - * Container associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Container { - /** - * The time that the container was created. - */ createTime?: string | null; - /** - * Optional container image ID, if provided by the container runtime. Uniquely identifies the container image launched using a container image digest. - */ imageId?: string | null; - /** - * Container labels, as provided by the container runtime. - */ labels?: Schema$GoogleCloudSecuritycenterV2Label[]; - /** - * Name of the container. - */ name?: string | null; - /** - * Container image URI provided when configuring a pod or container. This string can identify a container image version using mutable tags. - */ uri?: string | null; } - /** - * Compliance control associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Control { - /** - * Name of the Control - */ controlName?: string | null; - /** - * Display name of the control. For example, AU-02. - */ displayName?: string | null; } - /** - * CVE stands for Common Vulnerabilities and Exposures. Information from the [CVE record](https://www.cve.org/ResourcesSupport/Glossary) that describes this vulnerability. - */ export interface Schema$GoogleCloudSecuritycenterV2Cve { - /** - * Describe Common Vulnerability Scoring System specified at https://www.first.org/cvss/v3.1/specification-document - */ cvssv3?: Schema$GoogleCloudSecuritycenterV2Cvssv3; - /** - * The exploitation activity of the vulnerability in the wild. - */ exploitationActivity?: string | null; - /** - * Date the first publicly available exploit or PoC was released. - */ exploitReleaseDate?: string | null; - /** - * Date of the earliest known exploitation. - */ - firstExploitationDate?: string | null; - /** - * The unique identifier for the vulnerability. e.g. CVE-2021-34527 - */ + firstExploitationDate?: string | null; id?: string | null; - /** - * The potential impact of the vulnerability if it was to be exploited. - */ impact?: string | null; - /** - * Whether or not the vulnerability has been observed in the wild. - */ observedInTheWild?: boolean | null; - /** - * Additional information about the CVE. e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527 - */ references?: Schema$GoogleCloudSecuritycenterV2Reference[]; - /** - * Whether upstream fix is available for the CVE. - */ upstreamFixAvailable?: boolean | null; - /** - * Whether or not the vulnerability was zero day when the finding was published. - */ zeroDay?: boolean | null; } - /** - * Common Vulnerability Scoring System version 3. - */ export interface Schema$GoogleCloudSecuritycenterV2Cvssv3 { - /** - * This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability. - */ attackComplexity?: string | null; - /** - * Base Metrics Represents the intrinsic characteristics of a vulnerability that are constant over time and across user environments. This metric reflects the context by which vulnerability exploitation is possible. - */ attackVector?: string | null; - /** - * This metric measures the impact to the availability of the impacted component resulting from a successfully exploited vulnerability. - */ availabilityImpact?: string | null; - /** - * The base score is a function of the base metric scores. - */ baseScore?: number | null; - /** - * This metric measures the impact to the confidentiality of the information resources managed by a software component due to a successfully exploited vulnerability. - */ confidentialityImpact?: string | null; - /** - * This metric measures the impact to integrity of a successfully exploited vulnerability. - */ integrityImpact?: string | null; - /** - * This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability. - */ privilegesRequired?: string | null; - /** - * The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope. - */ scope?: string | null; - /** - * This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component. - */ userInteraction?: string | null; } - /** - * CWE stands for Common Weakness Enumeration. Information about this weakness, as described by [CWE](https://cwe.mitre.org/). - */ export interface Schema$GoogleCloudSecuritycenterV2Cwe { - /** - * The CWE identifier, e.g. CWE-94 - */ id?: string | null; - /** - * Any reference to the details on the CWE, for example, https://cwe.mitre.org/data/definitions/94.html - */ references?: Schema$GoogleCloudSecuritycenterV2Reference[]; } - /** - * Details about a data access attempt made by a principal not authorized under applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2DataAccessEvent { - /** - * Unique identifier for data access event. - */ eventId?: string | null; - /** - * Timestamp of data access event. - */ eventTime?: string | null; - /** - * The operation performed by the principal to access the data. - */ operation?: string | null; - /** - * The email address of the principal that accessed the data. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; } - /** - * Represents database access information, such as queries. A database may be a sub-resource of an instance (as in the case of Cloud SQL instances or Cloud Spanner instances), or the database instance itself. Some database resources might not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types, such as Cloud SQL databases, are not yet supported by Cloud Asset Inventory. In these cases only the display name is provided. - */ export interface Schema$GoogleCloudSecuritycenterV2Database { - /** - * The human-readable name of the database that the user connected to. - */ displayName?: string | null; - /** - * The target usernames, roles, or groups of an SQL privilege grant, which is not an IAM policy change. - */ grantees?: string[] | null; - /** - * Some database resources may not have the [full resource name](https://google.aip.dev/122#full-resource-names) populated because these resource types are not yet supported by Cloud Asset Inventory (e.g. Cloud SQL databases). In these cases only the display name will be provided. The [full resource name](https://google.aip.dev/122#full-resource-names) of the database that the user connected to, if it is supported by Cloud Asset Inventory. - */ name?: string | null; - /** - * The SQL statement that is associated with the database access. - */ query?: string | null; - /** - * The username used to connect to the database. The username might not be an IAM principal and does not have a set format. - */ userName?: string | null; - /** - * The version of the database, for example, POSTGRES_14. See [the complete list](https://cloud.google.com/sql/docs/mysql/admin-api/rest/v1/SqlDatabaseVersion). - */ version?: string | null; } - /** - * Details about a data flow event, in which either the data is moved to or is accessed from a non-compliant geo-location, as defined in the applicable data security policy. - */ export interface Schema$GoogleCloudSecuritycenterV2DataFlowEvent { - /** - * Unique identifier for data flow event. - */ eventId?: string | null; - /** - * Timestamp of data flow event. - */ eventTime?: string | null; - /** - * The operation performed by the principal for the data flow event. - */ operation?: string | null; - /** - * The email address of the principal that initiated the data flow event. The principal could be a user account, service account, Google group, or other. - */ principalEmail?: string | null; - /** - * Non-compliant location of the principal or the data destination. - */ violatedLocation?: string | null; } - /** - * Details about data retention deletion violations, in which the data is non-compliant based on their retention or deletion time, as defined in the applicable data security policy. The Data Retention Deletion (DRD) control is a control of the DSPM (Data Security Posture Management) suite that enables organizations to manage data retention and deletion policies in compliance with regulations, such as GDPR and CRPA. DRD supports two primary policy types: maximum storage length (max TTL) and minimum storage length (min TTL). Both are aimed at helping organizations meet regulatory and data management commitments. - */ export interface Schema$GoogleCloudSecuritycenterV2DataRetentionDeletionEvent { - /** - * Number of objects that violated the policy for this resource. If the number is less than 1,000, then the value of this field is the exact number. If the number of objects that violated the policy is greater than or equal to 1,000, then the value of this field is 1000. - */ dataObjectCount?: string | null; - /** - * Timestamp indicating when the event was detected. - */ eventDetectionTime?: string | null; - /** - * Type of the DRD event. - */ eventType?: string | null; - /** - * Maximum duration of retention allowed from the DRD control. This comes from the DRD control where users set a max TTL for their data. For example, suppose that a user sets the max TTL for a Cloud Storage bucket to 90 days. However, an object in that bucket is 100 days old. In this case, a DataRetentionDeletionEvent will be generated for that Cloud Storage bucket, and the max_retention_allowed is 90 days. - */ maxRetentionAllowed?: string | null; - /** - * Min duration of retention allowed from the DSPM retention control. This field is only populated when event type is set to EVENT_TYPE_MIN_TTL_FROM_CREATION. - */ minRetentionAllowed?: string | null; } - /** - * Vertex AI dataset associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Dataset { - /** - * The user defined display name of dataset, e.g. plants-dataset - */ displayName?: string | null; - /** - * Resource name of the dataset, e.g. projects/{project\}/locations/{location\}/datasets/2094040236064505856 - */ name?: string | null; - /** - * Data source, such as a BigQuery source URI, e.g. bq://scc-nexus-test.AIPPtest.gsod - */ source?: string | null; } - /** - * Denied IP rule. - */ export interface Schema$GoogleCloudSecuritycenterV2Denied { - /** - * Optional. Optional list of denied IP rules. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRule[]; } - /** - * Memory hash detection contributing to the binary family match. - */ export interface Schema$GoogleCloudSecuritycenterV2Detection { - /** - * The name of the binary associated with the memory hash signature detection. - */ binary?: string | null; - /** - * The percentage of memory page hashes in the signature that were matched. - */ percentPagesMatched?: number | null; } - /** - * Represents discovered, customer managed workload that is not registered with the respective GCP service. - */ export interface Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload { - /** - * The confidence in detection of this workload. - */ confidence?: string | null; - /** - * A boolean flag set to true if associated hardware strongly predicts the workload type. - */ detectedRelevantHardware?: boolean | null; - /** - * A boolean flag set to true if associated keywords strongly predict the workload type. - */ detectedRelevantKeywords?: boolean | null; - /** - * A boolean flag set to true if installed packages strongly predict the workload type. - */ detectedRelevantPackages?: boolean | null; - /** - * The type of workload. - */ workloadType?: string | null; } - /** - * Contains information about the disk associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Disk { - /** - * The name of the disk, for example, "https://www.googleapis.com/compute/v1/projects/{project-id\}/zones/{zone-id\}/disks/{disk-id\}". - */ name?: string | null; } - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ export interface Schema$GoogleCloudSecuritycenterV2DiskPath { - /** - * UUID of the partition (format https://wiki.archlinux.org/title/persistent_block_device_naming#by-uuid) - */ partitionUuid?: string | null; - /** - * Relative path of the file in the partition as a JSON encoded string. Example: /home/user1/executable_file.sh - */ relativePath?: string | null; } - /** - * The record of a dynamic mute rule that matches the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2DynamicMuteRecord { - /** - * When the dynamic mute rule first matched the finding. - */ matchTime?: string | null; - /** - * The relative resource name of the mute rule, represented by a mute config, that created this record, for example `organizations/123/muteConfigs/mymuteconfig` or `organizations/123/locations/global/muteConfigs/mymuteconfig`. - */ muteConfig?: string | null; } - /** - * A name-value pair representing an environment variable used in an operating system process. - */ export interface Schema$GoogleCloudSecuritycenterV2EnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. - */ name?: string | null; - /** - * Environment variable value as a JSON encoded string. - */ val?: string | null; } - /** - * Resource where data was exfiltrated from or exfiltrated to. - */ export interface Schema$GoogleCloudSecuritycenterV2ExfilResource { - /** - * Subcomponents of the asset that was exfiltrated, like URIs used during exfiltration, table names, databases, and filenames. For example, multiple tables might have been exfiltrated from the same Cloud SQL instance, or multiple files might have been exfiltrated from the same Cloud Storage bucket. - */ components?: string[] | null; - /** - * The resource's [full resource name](https://cloud.google.com/apis/design/resource_names#full_resource_name). - */ name?: string | null; } - /** - * Exfiltration represents a data exfiltration attempt from one or more sources to one or more targets. The `sources` attribute lists the sources of the exfiltrated data. The `targets` attribute lists the destinations the data was copied to. - */ export interface Schema$GoogleCloudSecuritycenterV2Exfiltration { - /** - * If there are multiple sources, then the data is considered "joined" between them. For instance, BigQuery can join multiple tables, and each table would be considered a source. - */ sources?: Schema$GoogleCloudSecuritycenterV2ExfilResource[]; - /** - * If there are multiple targets, each target would get a complete copy of the "joined" source data. - */ targets?: Schema$GoogleCloudSecuritycenterV2ExfilResource[]; - /** - * Total exfiltrated bytes processed for the entire job. - */ totalExfiltratedBytes?: string | null; } - /** - * Details about the externally exposed resource associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2ExternalExposure { - /** - * The full resource name of the load balancer backend bucket, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendBuckets/{name\}" - */ backendBucket?: string | null; - /** - * The full resource name of load balancer backend service, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ backendService?: string | null; - /** - * The name and version of the exposed web application, for example, "Jenkins 2.184". - */ exposedApplication?: string | null; - /** - * The resource which is running the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/zones/{zone\}/instances/{instance\}.” - */ exposedEndpoint?: string | null; - /** - * The name and version of the service, for example, "Jupyter Notebook 6.14.0". - */ exposedService?: string | null; - /** - * The full resource name of the forwarding rule, for example, "//compute.googleapis.com/projects/{project-id\}/global/forwardingRules/{forwarding-rule-name\}". - */ forwardingRule?: string | null; - /** - * Hostname of the exposed application, for example, "https://test-app.a.run.app/" - */ hostnameUri?: string | null; - /** - * The http response returned by the web application. - */ httpResponse?: Schema$GoogleCloudSecuritycenterV2HttpResponse[]; - /** - * The full resource name of the instance group, for example, "//compute.googleapis.com/projects/{project-id\}/global/instanceGroups/{name\}". - */ instanceGroup?: string | null; - /** - * The full resource name of load balancer backend service in the internal project having resource exposed via PSC, for example, "//compute.googleapis.com/projects/{project-id\}/global/backendServices/{name\}". - */ internalBackendService?: string | null; - /** - * The full resource name of the load balancer firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ loadBalancerFirewallPolicy?: string | null; - /** - * The full resource name of the network endpoint group, for example, "//compute.googleapis.com/projects/{project-id\}/global/networkEndpointGroups/{name\}". - */ networkEndpointGroup?: string | null; - /** - * The full resource name of the network ingress firewall policy, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{name\}". - */ networkIngressFirewallPolicy?: string | null; - /** - * Private IP address of the exposed endpoint. - */ privateIpAddress?: string | null; - /** - * Port number associated with private IP address. - */ privatePort?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) network attachment that network interface controller is attached to, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/networkAttachments/{name\}" - */ pscNetworkAttachment?: string | null; - /** - * The full resource name of the PSC (Private Service Connect) service attachment that the load balancer network endpoint group targets, for example, "//compute.googleapis.com/projects/{project-id\}/regions/{region\}/serviceAttachments/{name\}" - */ pscServiceAttachment?: string | null; - /** - * Public IP address of the exposed endpoint. - */ publicIpAddress?: string | null; - /** - * Public port number of the exposed endpoint. - */ publicPort?: string | null; - /** - * The full resource name of the firewall policy of the exposed service, for example, "//compute.googleapis.com/projects/{project-id\}/global/firewallPolicies/{policy-name\}". - */ serviceFirewallPolicy?: string | null; } - /** - * Representation of third party SIEM/SOAR fields within SCC. - */ export interface Schema$GoogleCloudSecuritycenterV2ExternalSystem { - /** - * References primary/secondary etc assignees in the external system. - */ assignees?: string[] | null; - /** - * The time when the case was closed, as reported by the external system. - */ caseCloseTime?: string | null; - /** - * The time when the case was created, as reported by the external system. - */ caseCreateTime?: string | null; - /** - * The priority of the finding's corresponding case in the external system. - */ casePriority?: string | null; - /** - * The SLA of the finding's corresponding case in the external system. - */ caseSla?: string | null; - /** - * The link to the finding's corresponding case in the external system. - */ caseUri?: string | null; - /** - * The time when the case was last updated, as reported by the external system. - */ externalSystemUpdateTime?: string | null; - /** - * The identifier that's used to track the finding's corresponding case in the external system. - */ externalUid?: string | null; - /** - * Full resource name of the external system. The following list shows some examples: + `organizations/1234/sources/5678/findings/123456/externalSystems/jira` + `organizations/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/findings/123456/externalSystems/jira` + `folders/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/findings/123456/externalSystems/jira` + `projects/1234/sources/5678/locations/us/findings/123456/externalSystems/jira` - */ name?: string | null; - /** - * The most recent status of the finding's corresponding case, as reported by the external system. - */ status?: string | null; - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ ticketInfo?: Schema$GoogleCloudSecuritycenterV2TicketInfo; } - /** - * File information about the related binary/library used by an executable, or the script used by a script interpreter - */ export interface Schema$GoogleCloudSecuritycenterV2File { - /** - * Prefix of the file contents as a JSON-encoded string. - */ contents?: string | null; - /** - * Path of the file in terms of underlying disk/partition identifiers. - */ diskPath?: Schema$GoogleCloudSecuritycenterV2DiskPath; - /** - * The load state of the file. - */ fileLoadState?: string | null; - /** - * The length in bytes of the file prefix that was hashed. If hashed_size == size, any hashes reported represent the entire file. - */ hashedSize?: string | null; - /** - * Operation(s) performed on a file. - */ operations?: Schema$GoogleCloudSecuritycenterV2FileOperation[]; - /** - * True when the hash covers only a prefix of the file. - */ partiallyHashed?: boolean | null; - /** - * Absolute path of the file as a JSON encoded string. - */ path?: string | null; - /** - * SHA256 hash of the first hashed_size bytes of the file encoded as a hex string. If hashed_size == size, sha256 represents the SHA256 hash of the entire file. - */ sha256?: string | null; - /** - * Size of the file in bytes. - */ size?: string | null; } - /** - * Operation(s) performed on a file. - */ export interface Schema$GoogleCloudSecuritycenterV2FileOperation { - /** - * The type of the operation - */ type?: string | null; } - /** - * Security Command Center finding. A finding is a record of assessment data like security, risk, health, or privacy, that is ingested into Security Command Center for presentation, notification, analysis, policy testing, and enforcement. For example, a cross-site scripting (XSS) vulnerability in an App Engine application is a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Finding { - /** - * Access details associated with the finding, such as more information on the caller, which method was accessed, and from where. - */ access?: Schema$GoogleCloudSecuritycenterV2Access; - /** - * AffectedResources associated with the finding. - */ affectedResources?: Schema$GoogleCloudSecuritycenterV2AffectedResources; - /** - * Agent data access events associated with the finding. - */ agentDataAccessEvents?: Schema$GoogleCloudSecuritycenterV2AgentDataAccessEvent[]; - /** - * The AI model associated with the finding. - */ aiModel?: Schema$GoogleCloudSecuritycenterV2AiModel; - /** - * Represents an application associated with the finding. - */ - application?: Schema$GoogleCloudSecuritycenterV2Application; - /** - * ArtifactGuardPolicies associated with the finding. - */ + application?: Schema$GoogleCloudSecuritycenterV2Application; artifactGuardPolicies?: Schema$GoogleCloudSecuritycenterV2ArtifactGuardPolicies; - /** - * The results of an attack path simulation relevant to this finding. - */ attackExposure?: Schema$GoogleCloudSecuritycenterV2AttackExposure; - /** - * Fields related to Backup and DR findings. - */ backupDisasterRecovery?: Schema$GoogleCloudSecuritycenterV2BackupDisasterRecovery; - /** - * Output only. The canonical name of the finding. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` The prefix is the closest CRM ancestor of the resource associated with the finding. - */ canonicalName?: string | null; - /** - * Immutable. The additional taxonomy group within findings from a given source. Example: "XSS_FLASH_INJECTION" - */ category?: string | null; - /** - * Contains details about a chokepoint, which is a resource or resource group where high-risk attack paths converge, based on [attack path simulations] (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations). This field cannot be updated. Its value is ignored in all update requests. - */ chokepoint?: Schema$GoogleCloudSecuritycenterV2Chokepoint; - /** - * Fields related to Cloud Armor findings. - */ cloudArmor?: Schema$GoogleCloudSecuritycenterV2CloudArmor; - /** - * Cloud DLP data profile that is associated with the finding. - */ cloudDlpDataProfile?: Schema$GoogleCloudSecuritycenterV2CloudDlpDataProfile; - /** - * Cloud Data Loss Prevention (Cloud DLP) inspection results that are associated with the finding. - */ cloudDlpInspection?: Schema$GoogleCloudSecuritycenterV2CloudDlpInspection; - /** - * Details about the compliance implications of the finding. - */ complianceDetails?: Schema$GoogleCloudSecuritycenterV2ComplianceDetails; - /** - * Contains compliance information for security standards associated to the finding. - */ compliances?: Schema$GoogleCloudSecuritycenterV2Compliance[]; - /** - * Contains information about the IP connection associated with the finding. - */ connections?: Schema$GoogleCloudSecuritycenterV2Connection[]; - /** - * Output only. Map containing the points of contact for the given finding. The key represents the type of contact, while the value contains a list of all the contacts that pertain. Please refer to: https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories { "security": { "contacts": [ { "email": "person1@company.com" \}, { "email": "person2@company.com" \} ] \} \} - */ contacts?: { [key: string]: Schema$GoogleCloudSecuritycenterV2ContactDetails; } | null; - /** - * Containers associated with the finding. This field provides information for both Kubernetes and non-Kubernetes containers. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Output only. The time at which the finding was created in Security Command Center. - */ createTime?: string | null; - /** - * Output only. The name of the Cloud KMS key used to encrypt this finding, if any. - */ cryptoKeyName?: string | null; - /** - * Data access events associated with the finding. - */ dataAccessEvents?: Schema$GoogleCloudSecuritycenterV2DataAccessEvent[]; - /** - * Database associated with the finding. - */ database?: Schema$GoogleCloudSecuritycenterV2Database; - /** - * Data flow events associated with the finding. - */ dataFlowEvents?: Schema$GoogleCloudSecuritycenterV2DataFlowEvent[]; - /** - * Data retention deletion events associated with the finding. - */ dataRetentionDeletionEvents?: Schema$GoogleCloudSecuritycenterV2DataRetentionDeletionEvent[]; - /** - * Contains more details about the finding. - */ description?: string | null; - /** - * DiscoveredWorkload associated with the finding. - */ discoveredWorkload?: Schema$GoogleCloudSecuritycenterV2DiscoveredWorkload; - /** - * Disk associated with the finding. - */ disk?: Schema$GoogleCloudSecuritycenterV2Disk; - /** - * The time the finding was first detected. If an existing finding is updated, then this is the time the update occurred. For example, if the finding represents an open firewall, this property captures the time the detector believes the firewall became open. The accuracy is determined by the detector. If the finding is later resolved, then this time reflects when the finding was resolved. This must not be set to a value greater than the current timestamp. - */ eventTime?: string | null; - /** - * Represents exfiltrations associated with the finding. - */ exfiltration?: Schema$GoogleCloudSecuritycenterV2Exfiltration; - /** - * External exposure associated with the finding. - */ externalExposure?: Schema$GoogleCloudSecuritycenterV2ExternalExposure; - /** - * Output only. Third party SIEM/SOAR fields within SCC, contains external system information and external system finding fields. - */ externalSystems?: { [key: string]: Schema$GoogleCloudSecuritycenterV2ExternalSystem; } | null; - /** - * The URI that, if available, points to a web page outside of Security Command Center where additional information about the finding can be found. This field is guaranteed to be either empty or a well formed URL. - */ externalUri?: string | null; - /** - * File associated with the finding. - */ files?: Schema$GoogleCloudSecuritycenterV2File[]; - /** - * The class of the finding. - */ findingClass?: string | null; - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. This field cannot be updated. Its value is ignored in all update requests. - */ groupMemberships?: Schema$GoogleCloudSecuritycenterV2GroupMembership[]; - /** - * Represents IAM bindings associated with the finding. - */ iamBindings?: Schema$GoogleCloudSecuritycenterV2IamBinding[]; - /** - * Represents what's commonly known as an *indicator of compromise* (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ indicator?: Schema$GoogleCloudSecuritycenterV2Indicator; - /** - * IP rules associated with the finding. - */ ipRules?: Schema$GoogleCloudSecuritycenterV2IpRules; - /** - * Job associated with the finding. - */ job?: Schema$GoogleCloudSecuritycenterV2Job; - /** - * Signature of the kernel rootkit. - */ kernelRootkit?: Schema$GoogleCloudSecuritycenterV2KernelRootkit; - /** - * Kubernetes resources associated with the finding. - */ kubernetes?: Schema$GoogleCloudSecuritycenterV2Kubernetes; - /** - * The load balancers associated with the finding. - */ loadBalancers?: Schema$GoogleCloudSecuritycenterV2LoadBalancer[]; - /** - * Log entries that are relevant to the finding. - */ logEntries?: Schema$GoogleCloudSecuritycenterV2LogEntry[]; - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ mitreAttack?: Schema$GoogleCloudSecuritycenterV2MitreAttack; - /** - * Unique identifier of the module which generated the finding. Example: folders/598186756061/securityHealthAnalyticsSettings/customModules/56799441161885 - */ moduleName?: string | null; - /** - * Indicates the mute state of a finding (either muted, unmuted or undefined). Unlike other attributes of a finding, a finding provider shouldn't set the value of mute. - */ mute?: string | null; - /** - * Output only. The mute information regarding this finding. - */ muteInfo?: Schema$GoogleCloudSecuritycenterV2MuteInfo; - /** - * Records additional information about the mute operation, for example, the [mute configuration](https://cloud.google.com/security-command-center/docs/how-to-mute-findings) that muted the finding and the user who muted the finding. - */ muteInitiator?: string | null; - /** - * Output only. The most recent time this finding was muted or unmuted. - */ muteUpdateTime?: string | null; - /** - * Identifier. The [relative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name) of the finding. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}` + `folders/{folder_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/findings/{finding_id\}` + `projects/{project_id\}/sources/{source_id\}/locations/{location_id\}/findings/{finding_id\}` - */ name?: string | null; - /** - * Represents the VPC networks that the resource is attached to. - */ networks?: Schema$GoogleCloudSecuritycenterV2Network[]; - /** - * Steps to address the finding. - */ nextSteps?: string | null; - /** - * Notebook associated with the finding. - */ notebook?: Schema$GoogleCloudSecuritycenterV2Notebook; - /** - * Contains information about the org policies associated with the finding. - */ orgPolicies?: Schema$GoogleCloudSecuritycenterV2OrgPolicy[]; - /** - * The relative resource name of the source and location the finding belongs to. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name This field is immutable after creation time. The following list shows some examples: + `organizations/{organization_id\}/sources/{source_id\}` + `folders/{folders_id\}/sources/{source_id\}` + `projects/{projects_id\}/sources/{source_id\}` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location_id\}` + `folders/{folders_id\}/sources/{source_id\}/locations/{location_id\}` + `projects/{projects_id\}/sources/{source_id\}/locations/{location_id\}` - */ parent?: string | null; - /** - * Output only. The human readable display name of the finding source such as "Event Threat Detection" or "Security Health Analytics". - */ parentDisplayName?: string | null; - /** - * PolicyViolationSummary associated with the finding. - */ policyViolationSummary?: Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary; - /** - * Represents operating system processes associated with the Finding. - */ processes?: Schema$GoogleCloudSecuritycenterV2Process[]; - /** - * Immutable. For findings on Google Cloud resources, the full resource name of the Google Cloud resource this finding is for. See: https://cloud.google.com/apis/design/resource_names#full_resource_name When the finding is for a non-Google Cloud resource, the resourceName can be a customer or partner defined string. - */ resourceName?: string | null; - /** - * Secret associated with the finding. - */ secret?: Schema$GoogleCloudSecuritycenterV2Secret; - /** - * Output only. User specified security marks. These marks are entirely managed by the user and come from the SecurityMarks resource that belongs to the finding. - */ securityMarks?: Schema$GoogleCloudSecuritycenterV2SecurityMarks; - /** - * The security posture associated with the finding. - */ securityPosture?: Schema$GoogleCloudSecuritycenterV2SecurityPosture; - /** - * The severity of the finding. This field is managed by the source that writes the finding. - */ severity?: string | null; - /** - * Source specific properties. These properties are managed by the source that writes the finding. The key names in the source_properties map must be between 1 and 255 characters, and must start with a letter and contain alphanumeric characters or underscores only. - */ sourceProperties?: {[key: string]: any} | null; - /** - * Output only. The state of the finding. - */ state?: string | null; - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. This field cannot be updated. Its value is ignored in all update requests. - */ toxicCombination?: Schema$GoogleCloudSecuritycenterV2ToxicCombination; - /** - * VertexAi associated with the finding. - */ vertexAi?: Schema$GoogleCloudSecuritycenterV2VertexAi; - /** - * Represents vulnerability-specific fields like CVE and CVSS scores. CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ vulnerability?: Schema$GoogleCloudSecuritycenterV2Vulnerability; } - /** - * Message that contains the resource name and display name of a folder resource. - */ export interface Schema$GoogleCloudSecuritycenterV2Folder { - /** - * Full resource name of this folder. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ resourceFolder?: string | null; - /** - * The user defined display name for this folder. - */ resourceFolderDisplayName?: string | null; } - /** - * Compliance framework associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Framework { - /** - * Category of the framework associated with the finding. E.g. Security Benchmark, or Assured Workloads - */ category?: string[] | null; - /** - * The controls associated with the framework. - */ controls?: Schema$GoogleCloudSecuritycenterV2Control[]; - /** - * Display name of the framework. For a standard framework, this will look like e.g. PCI DSS 3.2.1, whereas for a custom framework it can be a user defined string like MyFramework - */ displayName?: string | null; - /** - * Name of the framework associated with the finding - */ name?: string | null; - /** - * Type of the framework associated with the finding, to specify whether the framework is built-in (pre-defined and immutable) or a custom framework defined by the customer (equivalent to security posture) - */ type?: string | null; } - /** - * Represents a geographical location for a given access. - */ export interface Schema$GoogleCloudSecuritycenterV2Geolocation { - /** - * A CLDR. - */ regionCode?: string | null; } - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. - */ export interface Schema$GoogleCloudSecuritycenterV2GroupMembership { - /** - * ID of the group. - */ groupId?: string | null; - /** - * Type of group. - */ groupType?: string | null; } - /** - * The http response returned by the web application. - */ export interface Schema$GoogleCloudSecuritycenterV2HttpResponse { - /** - * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". - */ path?: string | null; - /** - * The http response code returned by the web application, for example, 200. - */ statusCode?: string | null; } - /** - * Represents a particular IAM binding, which captures a member's role addition, removal, or state. - */ export interface Schema$GoogleCloudSecuritycenterV2IamBinding { - /** - * The action that was performed on a Binding. - */ action?: string | null; - /** - * A single identity requesting access for a Cloud Platform resource, for example, "foo@google.com". - */ member?: string | null; - /** - * Role that is assigned to "members". For example, "roles/viewer", "roles/editor", or "roles/owner". - */ role?: string | null; } - /** - * Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ export interface Schema$GoogleCloudSecuritycenterV2Indicator { - /** - * List of domains associated to the Finding. - */ domains?: string[] | null; - /** - * The list of IP addresses that are associated with the finding. - */ ipAddresses?: string[] | null; - /** - * The list of matched signatures indicating that the given process is present in the environment. - */ signatures?: Schema$GoogleCloudSecuritycenterV2ProcessSignature[]; - /** - * The list of URIs associated to the Findings. - */ uris?: string[] | null; } - /** - * Type of information detected by the API. - */ export interface Schema$GoogleCloudSecuritycenterV2InfoType { - /** - * Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64\}`. - */ name?: string | null; - /** - * Optional custom sensitivity for this InfoType. This only applies to data profiling. - */ sensitivityScore?: Schema$GoogleCloudSecuritycenterV2SensitivityScore; - /** - * Optional version name for this InfoType. - */ version?: string | null; } - /** - * IP rule information. - */ export interface Schema$GoogleCloudSecuritycenterV2IpRule { - /** - * Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number. - */ portRanges?: Schema$GoogleCloudSecuritycenterV2PortRange[]; - /** - * The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value. - */ protocol?: string | null; } - /** - * IP rules associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IpRules { - /** - * Tuple with allowed rules. - */ allowed?: Schema$GoogleCloudSecuritycenterV2Allowed; - /** - * Tuple with denied rules. - */ denied?: Schema$GoogleCloudSecuritycenterV2Denied; - /** - * If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ destinationIpRanges?: string[] | null; - /** - * The direction that the rule is applicable to, one of ingress or egress. - */ direction?: string | null; - /** - * Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml. - */ exposedServices?: string[] | null; - /** - * If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ sourceIpRanges?: string[] | null; } - /** - * Security Command Center Issue. - */ export interface Schema$GoogleCloudSecuritycenterV2Issue { - /** - * Output only. The time the issue was created. - */ createTime?: string | null; - /** - * The description of the issue in Markdown format. - */ description?: string | null; - /** - * The finding category or rule name that generated the issue. - */ detection?: string | null; - /** - * The domains of the issue. - */ domains?: Schema$GoogleCloudSecuritycenterV2IssueDomain[]; - /** - * The exposure score of the issue. - */ exposureScore?: number | null; - /** - * The type of the issue. - */ issueType?: string | null; - /** - * The time the issue was last observed. - */ lastObservationTime?: string | null; - /** - * The mute information of the issue. - */ mute?: Schema$GoogleCloudSecuritycenterV2IssueMute; - /** - * Identifier. The name of the issue. Format: organizations/{organization\}/locations/{location\}/issues/{issue\} - */ name?: string | null; - /** - * The primary resource associated with the issue. - */ primaryResource?: Schema$GoogleCloudSecuritycenterV2IssueResource; - /** - * The findings related to the issue. - */ relatedFindings?: Schema$GoogleCloudSecuritycenterV2IssueFinding[]; - /** - * Approaches to remediate the issue in Markdown format. - */ remediations?: string[] | null; - /** - * Additional resources associated with the issue. - */ secondaryResources?: Schema$GoogleCloudSecuritycenterV2IssueResource[]; - /** - * The security context of the issue. - */ securityContexts?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContext[]; - /** - * The severity of the issue. - */ severity?: string | null; - /** - * Output only. The state of the issue. - */ state?: string | null; - /** - * Output only. The time the issue was last updated. - */ updateTime?: string | null; } - /** - * The domains of an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueDomain { - /** - * The domain category of the issue. - */ domainCategory?: string | null; } - /** - * Finding related to an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFinding { - /** - * The CVE of the finding. - */ cve?: Schema$GoogleCloudSecuritycenterV2IssueFindingCve; - /** - * The name of the finding. - */ - name?: string | null; - /** - * The security bulletin of the finding. - */ + name?: string | null; securityBulletin?: Schema$GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin; } - /** - * The CVE of the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFindingCve { - /** - * The CVE name. - */ name?: string | null; } - /** - * The security bulletin of the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueFindingSecurityBulletin { - /** - * The security bulletin name. - */ name?: string | null; } - /** - * The mute information of the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueMute { - /** - * The email address of the user who last changed the mute state of the issue. - */ muteInitiator?: string | null; - /** - * The user-provided reason for muting the issue. - */ muteReason?: string | null; - /** - * Output only. The mute state of the issue. - */ muteState?: string | null; - /** - * The time the issue was muted. - */ muteUpdateTime?: string | null; } - /** - * A resource associated with the an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision; - /** - * The AppHub application associated with the resource, if any. Only populated for the primary resource. - */ application?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplication; - /** - * The AWS metadata of the resource associated with the issue. Only populated for AWS resources. - */ awsMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadata; - /** - * The Azure metadata of the resource associated with the issue. Only populated for Azure resources. - */ azureMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadata; - /** - * The cloud provider of the resource associated with the issue. - */ cloudProvider?: string | null; - /** - * The resource-type specific display name of the resource associated with the issue. - */ displayName?: string | null; - /** - * The Google Cloud metadata of the resource associated with the issue. Only populated for Google Cloud resources. - */ googleCloudMetadata?: Schema$GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata; - /** - * The full resource name of the resource associated with the issue. - */ name?: string | null; - /** - * The type of the resource associated with the issue. - */ type?: string | null; } - /** - * Represents an ADC application associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplication { - /** - * Consumer provided attributes for the AppHub application. - */ attributes?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes; - /** - * The resource name of an ADC Application. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applications/{application\} - */ name?: string | null; } - /** - * Represents an ADC template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcApplicationTemplateRevision { - /** - * The resource name of an ADC Application Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * Represents an ADC shared template associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAdcSharedTemplateRevision { - /** - * The resource name of an ADC Shared Template Revision. Format: projects/{project\}/locations/{location\}/spaces/{space\}/applicationTemplates/{application_template\}/revisions/{revision\} - */ name?: string | null; } - /** - * The AppHub application associated with the resource, if any. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * The AWS metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadata { - /** - * The AWS account of the resource associated with the issue. - */ account?: Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount; } - /** - * The AWS account of the resource associated with the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAwsMetadataAwsAccount { - /** - * The AWS account ID of the resource associated with the issue. - */ id?: string | null; - /** - * The AWS account name of the resource associated with the issue. - */ name?: string | null; } - /** - * The Azure metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadata { - /** - * The Azure subscription of the resource associated with the issue. - */ subscription?: Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription; } - /** - * The Azure subscription of the resource associated with the issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceAzureMetadataAzureSubscription { - /** - * The Azure subscription display name of the resource associated with the issue. - */ displayName?: string | null; - /** - * The Azure subscription ID of the resource associated with the issue. - */ id?: string | null; } - /** - * Google Cloud metadata of a resource associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueResourceGoogleCloudMetadata { - /** - * The project ID that the resource associated with the issue belongs to. - */ projectId?: string | null; } - /** - * Security context associated with an issue. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContext { - /** - * The aggregated count of the security context. - */ aggregatedCount?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount; - /** - * The context of the security context. - */ context?: Schema$GoogleCloudSecuritycenterV2IssueSecurityContextContext; } - /** - * Aggregated count of a security context. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContextAggregatedCount { - /** - * Aggregation key. - */ key?: string | null; - /** - * Aggregation value. - */ value?: number | null; } - /** - * Context of a security context. - */ export interface Schema$GoogleCloudSecuritycenterV2IssueSecurityContextContext { - /** - * Context type. - */ type?: string | null; - /** - * Context values. - */ values?: string[] | null; } - /** - * Describes a job - */ export interface Schema$GoogleCloudSecuritycenterV2Job { - /** - * Optional. If the job did not complete successfully, this field describes why. - */ errorCode?: number | null; - /** - * Optional. Gives the location where the job ran, such as `US` or `europe-west1` - */ location?: string | null; - /** - * The fully-qualified name for a job. e.g. `projects//jobs/` - */ name?: string | null; - /** - * Output only. State of the job, such as `RUNNING` or `PENDING`. - */ state?: string | null; } - /** - * Kernel mode rootkit signatures. - */ export interface Schema$GoogleCloudSecuritycenterV2KernelRootkit { - /** - * Rootkit name, when available. - */ name?: string | null; - /** - * True if unexpected modifications of kernel code memory are present. - */ unexpectedCodeModification?: boolean | null; - /** - * True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedFtraceHandler?: boolean | null; - /** - * True if interrupt handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedInterruptHandler?: boolean | null; - /** - * True if kernel code pages that are not in the expected kernel or module code regions are present. - */ unexpectedKernelCodePages?: boolean | null; - /** - * True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedKprobeHandler?: boolean | null; - /** - * True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list. - */ unexpectedProcessesInRunqueue?: boolean | null; - /** - * True if unexpected modifications of kernel read-only data memory are present. - */ unexpectedReadOnlyDataModification?: boolean | null; - /** - * True if system call handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedSystemCallHandler?: boolean | null; } - /** - * Kubernetes-related attributes. - */ export interface Schema$GoogleCloudSecuritycenterV2Kubernetes { - /** - * Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding. - */ accessReviews?: Schema$GoogleCloudSecuritycenterV2AccessReview[]; - /** - * Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ bindings?: Schema$GoogleCloudSecuritycenterV2Binding[]; - /** - * GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available. - */ nodePools?: Schema$GoogleCloudSecuritycenterV2NodePool[]; - /** - * Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information. - */ nodes?: Schema$GoogleCloudSecuritycenterV2Node[]; - /** - * Kubernetes objects related to the finding. - */ objects?: Schema$GoogleCloudSecuritycenterV2Object[]; - /** - * Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod. - */ pods?: Schema$GoogleCloudSecuritycenterV2Pod[]; - /** - * Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ roles?: Schema$GoogleCloudSecuritycenterV2Role[]; } - /** - * Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering). - */ export interface Schema$GoogleCloudSecuritycenterV2Label { - /** - * Name of the label. - */ name?: string | null; - /** - * Value that corresponds to the label's name. - */ value?: string | null; } - /** - * Contains information related to the load balancer associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2LoadBalancer { - /** - * The name of the load balancer associated with the finding. - */ name?: string | null; } - /** - * An individual entry in a log. - */ export interface Schema$GoogleCloudSecuritycenterV2LogEntry { - /** - * An individual entry in a log stored in Cloud Logging. - */ cloudLoggingEntry?: Schema$GoogleCloudSecuritycenterV2CloudLoggingEntry; } - /** - * A signature corresponding to memory page hashes. - */ export interface Schema$GoogleCloudSecuritycenterV2MemoryHashSignature { - /** - * The binary family. - */ binaryFamily?: string | null; - /** - * The list of memory hash detections contributing to the binary family match. - */ detections?: Schema$GoogleCloudSecuritycenterV2Detection[]; } - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ export interface Schema$GoogleCloudSecuritycenterV2MitreAttack { - /** - * Additional MITRE ATT&CK tactics related to this finding, if any. - */ additionalTactics?: string[] | null; - /** - * Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques. - */ additionalTechniques?: string[] | null; - /** - * The MITRE ATT&CK tactic most closely represented by this finding, if any. - */ primaryTactic?: string | null; - /** - * The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`). - */ primaryTechniques?: string[] | null; - /** - * The MITRE ATT&CK version referenced by the above fields. E.g. "8". - */ version?: string | null; } - /** - * A mute config is a Cloud SCC resource that contains the configuration to mute create/update events of findings. - */ export interface Schema$GoogleCloudSecuritycenterV2MuteConfig { - /** - * Output only. The time at which the mute config was created. This field is set by the server and will be ignored if provided on config creation. - */ createTime?: string | null; - /** - * Output only. The resource name of the Cloud KMS `CryptoKey` used to encrypt this configuration data, if CMEK was enabled during Security Command Center activation. - */ cryptoKeyName?: string | null; - /** - * A description of the mute config. - */ description?: string | null; - /** - * Optional. The expiry of the mute config. Only applicable for dynamic configs. If the expiry is set, when the config expires, it is removed from all findings. - */ expiryTime?: string | null; - /** - * Required. An expression that defines the filter to apply across create/update events of findings. While creating a filter string, be mindful of the scope in which the mute configuration is being created. E.g., If a filter contains project = X but is created under the project = Y scope, it might not match any findings. The following field and operator combinations are supported: * severity: `=`, `:` * category: `=`, `:` * resource.name: `=`, `:` * resource.project_name: `=`, `:` * resource.project_display_name: `=`, `:` * resource.folders.resource_folder: `=`, `:` * resource.parent_name: `=`, `:` * resource.parent_display_name: `=`, `:` * resource.type: `=`, `:` * finding_class: `=`, `:` * indicator.ip_addresses: `=`, `:` * indicator.domains: `=`, `:` - */ filter?: string | null; - /** - * Output only. Email address of the user who last edited the mute config. This field is set by the server and will be ignored if provided on config creation or update. - */ mostRecentEditor?: string | null; - /** - * Identifier. This field will be ignored if provided on config creation. The following list shows some examples of the format: + `organizations/{organization\}/muteConfigs/{mute_config\}` + `organizations/{organization\}locations/{location\}//muteConfigs/{mute_config\}` + `folders/{folder\}/muteConfigs/{mute_config\}` + `folders/{folder\}/locations/{location\}/muteConfigs/{mute_config\}` + `projects/{project\}/muteConfigs/{mute_config\}` + `projects/{project\}/locations/{location\}/muteConfigs/{mute_config\}` - */ name?: string | null; - /** - * Required. The type of the mute config, which determines what type of mute state the config affects. Immutable after creation. - */ type?: string | null; - /** - * Output only. The most recent time at which the mute config was updated. This field is set by the server and will be ignored if provided on config creation or update. - */ updateTime?: string | null; } - /** - * Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules. - */ export interface Schema$GoogleCloudSecuritycenterV2MuteInfo { - /** - * The list of dynamic mute rules that currently match the finding. - */ dynamicMuteRecords?: Schema$GoogleCloudSecuritycenterV2DynamicMuteRecord[]; - /** - * If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute. - */ staticMute?: Schema$GoogleCloudSecuritycenterV2StaticMute; } - /** - * Contains information about a VPC network associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Network { - /** - * The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`. - */ name?: string | null; } - /** - * Kubernetes nodes associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Node { - /** - * [Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node. - */ name?: string | null; } - /** - * Provides GKE node pool information. - */ export interface Schema$GoogleCloudSecuritycenterV2NodePool { - /** - * Kubernetes node pool name. - */ name?: string | null; - /** - * Nodes associated with the finding. - */ nodes?: Schema$GoogleCloudSecuritycenterV2Node[]; } - /** - * Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Notebook { - /** - * The user ID of the latest author to modify the notebook. - */ lastAuthor?: string | null; - /** - * The name of the notebook. - */ - name?: string | null; - /** - * The most recent time the notebook was updated. - */ + name?: string | null; notebookUpdateTime?: string | null; - /** - * The source notebook service, for example, "Colab Enterprise". - */ service?: string | null; } - /** - * Cloud SCC's Notification - */ export interface Schema$GoogleCloudSecuritycenterV2NotificationMessage { - /** - * If it's a Finding based notification config, this field will be populated. - */ finding?: Schema$GoogleCloudSecuritycenterV2Finding; - /** - * Name of the notification config that generated current notification. - */ notificationConfigName?: string | null; - /** - * The Cloud resource tied to this notification's Finding. - */ resource?: Schema$GoogleCloudSecuritycenterV2Resource; } - /** - * Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview. - */ export interface Schema$GoogleCloudSecuritycenterV2Object { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Kubernetes object group, such as "policy.k8s.io/v1". - */ group?: string | null; - /** - * Kubernetes object kind, such as "Namespace". - */ kind?: string | null; - /** - * Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/. - */ name?: string | null; - /** - * Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/. - */ ns?: string | null; } - /** - * Contains information about the org policies associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2OrgPolicy { - /** - * Identifier. The resource name of the org policy. Example: "organizations/{organization_id\}/policies/{constraint_name\}" - */ name?: string | null; } - /** - * Package is a generic definition of a package. - */ export interface Schema$GoogleCloudSecuritycenterV2Package { - /** - * The CPE URI where the vulnerability was detected. - */ cpeUri?: string | null; - /** - * The name of the package where the vulnerability was detected. - */ packageName?: string | null; - /** - * Type of package, for example, os, maven, or go. - */ packageType?: string | null; - /** - * The version of the package. - */ packageVersion?: string | null; } - /** - * Vertex AI training pipeline associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Pipeline { - /** - * The user-defined display name of pipeline, e.g. plants-classification - */ displayName?: string | null; - /** - * Resource name of the pipeline, e.g. projects/{project\}/locations/{location\}/trainingPipelines/5253428229225578496 - */ name?: string | null; } - /** - * A Kubernetes Pod. - */ export interface Schema$GoogleCloudSecuritycenterV2Pod { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$GoogleCloudSecuritycenterV2Container[]; - /** - * Pod labels. For Kubernetes containers, these are applied to the container. - */ labels?: Schema$GoogleCloudSecuritycenterV2Label[]; - /** - * Kubernetes Pod name. - */ name?: string | null; - /** - * Kubernetes Pod namespace. - */ ns?: string | null; } - /** - * The policy field that violates the deployed posture and its expected and detected values. - */ export interface Schema$GoogleCloudSecuritycenterV2PolicyDriftDetails { - /** - * The detected value that violates the deployed posture, for example, `false` or `allowed_values={"projects/22831892"\}`. - */ detectedValue?: string | null; - /** - * The value of this field that was configured in a posture, for example, `true` or `allowed_values={"projects/29831892"\}`. - */ expectedValue?: string | null; - /** - * The name of the updated field, for example constraint.implementation.policy_rules[0].enforce - */ field?: string | null; } - /** - * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. - */ export interface Schema$GoogleCloudSecuritycenterV2PolicyViolationSummary { - /** - * Total number of child resources that conform to the policy. - */ conformantResourcesCount?: string | null; - /** - * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". - */ evaluationErrorsCount?: string | null; - /** - * Total count of child resources which were not in scope for evaluation. - */ outOfScopeResourcesCount?: string | null; - /** - * Count of child resources in violation of the policy. - */ policyViolationsCount?: string | null; } - /** - * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. - */ export interface Schema$GoogleCloudSecuritycenterV2PortRange { - /** - * Maximum port value. - */ max?: string | null; - /** - * Minimum port value. - */ min?: string | null; } - /** - * Represents an operating system process. - */ export interface Schema$GoogleCloudSecuritycenterV2Process { - /** - * Process arguments as JSON encoded strings. - */ args?: string[] | null; - /** - * True if `args` is incomplete. - */ argumentsTruncated?: boolean | null; - /** - * File information for the process executable. - */ binary?: Schema$GoogleCloudSecuritycenterV2File; - /** - * Process environment variables. - */ envVariables?: Schema$GoogleCloudSecuritycenterV2EnvironmentVariable[]; - /** - * True if `env_variables` is incomplete. - */ envVariablesTruncated?: boolean | null; - /** - * File information for libraries loaded by the process. - */ libraries?: Schema$GoogleCloudSecuritycenterV2File[]; - /** - * The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`. - */ name?: string | null; - /** - * The parent process ID. - */ parentPid?: string | null; - /** - * The process ID. - */ pid?: string | null; - /** - * When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter. - */ script?: Schema$GoogleCloudSecuritycenterV2File; - /** - * The ID of the user that executed the process. E.g. If this is the root user this will always be 0. - */ userId?: string | null; } - /** - * Indicates what signature matched this process. - */ export interface Schema$GoogleCloudSecuritycenterV2ProcessSignature { - /** - * Signature indicating that a binary family was matched. - */ memoryHashSignature?: Schema$GoogleCloudSecuritycenterV2MemoryHashSignature; - /** - * Describes the type of resource associated with the signature. - */ signatureType?: string | null; - /** - * Signature indicating that a YARA rule was matched. - */ yaraRuleSignature?: Schema$GoogleCloudSecuritycenterV2YaraRuleSignature; } - /** - * Additional Links - */ export interface Schema$GoogleCloudSecuritycenterV2Reference { - /** - * Source of the reference e.g. NVD - */ source?: string | null; - /** - * Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527. - */ uri?: string | null; } - /** - * Information about the requests relevant to the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Requests { - /** - * Allowed RPS (requests per second) over the long term. - */ longTermAllowed?: number | null; - /** - * Denied RPS (requests per second) over the long term. - */ longTermDenied?: number | null; - /** - * For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term. - */ ratio?: number | null; - /** - * Allowed RPS (requests per second) in the short term. - */ shortTermAllowed?: number | null; } - /** - * Information related to the Google Cloud resource. - */ export interface Schema$GoogleCloudSecuritycenterV2Resource { - /** - * The ADC application associated with the finding. - */ adcApplication?: Schema$GoogleCloudSecuritycenterV2AdcApplication; - /** - * The ADC template associated with the finding. - */ adcApplicationTemplate?: Schema$GoogleCloudSecuritycenterV2AdcApplicationTemplateRevision; - /** - * The ADC shared template associated with the finding. - */ adcSharedTemplate?: Schema$GoogleCloudSecuritycenterV2AdcSharedTemplateRevision; - /** - * The App Hub application this resource belongs to. - */ application?: Schema$GoogleCloudSecuritycenterV2ResourceApplication; - /** - * The AWS metadata associated with the finding. - */ awsMetadata?: Schema$GoogleCloudSecuritycenterV2AwsMetadata; - /** - * The Azure metadata associated with the finding. - */ azureMetadata?: Schema$GoogleCloudSecuritycenterV2AzureMetadata; - /** - * Indicates which cloud provider the finding is from. - */ cloudProvider?: string | null; - /** - * The human readable name of the resource. - */ displayName?: string | null; - /** - * The Google Cloud metadata associated with the finding. - */ gcpMetadata?: Schema$GcpMetadata; - /** - * The region or location of the service (if applicable). - */ location?: string | null; - /** - * The full resource name of the resource. See: https://cloud.google.com/apis/design/resource_names#full_resource_name - */ name?: string | null; - /** - * Provides the path to the resource within the resource hierarchy. - */ resourcePath?: Schema$GoogleCloudSecuritycenterV2ResourcePath; - /** - * A string representation of the resource path. For Google Cloud, it has the format of `organizations/{organization_id\}/folders/{folder_id\}/folders/{folder_id\}/projects/{project_id\}` where there can be any number of folders. For AWS, it has the format of `org/{organization_id\}/ou/{organizational_unit_id\}/ou/{organizational_unit_id\}/account/{account_id\}` where there can be any number of organizational units. For Azure, it has the format of `mg/{management_group_id\}/mg/{management_group_id\}/subscription/{subscription_id\}/rg/{resource_group_name\}` where there can be any number of management groups. - */ resourcePathString?: string | null; - /** - * The service or resource provider associated with the resource. - */ service?: string | null; - /** - * The full resource type of the resource. - */ type?: string | null; } - /** - * The App Hub Application associated with the finding's resource. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplication { - /** - * Consumer provided attributes for the application - */ attributes?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes; - /** - * The resource name of an Application. Format: `projects/{host-project-id\}/locations/{location\}/applications/{application-id\}` - */ name?: string | null; } - /** - * Consumer provided attributes for the application - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributes { - /** - * Business team that ensures user needs are met and value is delivered - */ businessOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; - /** - * User-defined criticality information. - */ criticality?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality; - /** - * Developer team that owns development and coding. - */ developerOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; - /** - * User-defined environment information. - */ environment?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment; - /** - * Operator team that ensures runtime and operations. - */ operatorOwners?: Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo[]; } - /** - * Contact information of stakeholders. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesContactInfo { - /** - * Email address of the contacts. - */ email?: string | null; } - /** - * Criticality of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesCriticality { - /** - * Criticality Type. - */ type?: string | null; } - /** - * Environment of the Application, Service, or Workload - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceApplicationAttributesEnvironment { - /** - * Environment Type. - */ type?: string | null; } - /** - * Represents the path of resources leading up to the resource this finding is about. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourcePath { - /** - * The list of nodes that make the up resource path, ordered from lowest level to highest level. - */ nodes?: Schema$GoogleCloudSecuritycenterV2ResourcePathNode[]; } - /** - * A node within the resource path. Each node represents a resource within the resource hierarchy. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourcePathNode { - /** - * The display name of the resource this node represents. - */ displayName?: string | null; - /** - * The ID of the resource this node represents. - */ id?: string | null; - /** - * The type of resource this node represents. - */ nodeType?: string | null; } - /** - * A resource value configuration (RVC) is a mapping configuration of user's resources to resource values. Used in Attack path simulations. - */ export interface Schema$GoogleCloudSecuritycenterV2ResourceValueConfig { - /** - * Cloud provider this configuration applies to - */ cloudProvider?: string | null; - /** - * Output only. Timestamp this resource value configuration was created. - */ createTime?: string | null; - /** - * Description of the resource value configuration. - */ description?: string | null; - /** - * Identifier. Name for the resource value configuration - */ name?: string | null; - /** - * List of resource labels to search for, evaluated with `AND`. For example, "resource_labels_selector": {"key": "value", "env": "prod"\} will match resources with labels "key": "value" `AND` "env": "prod" https://cloud.google.com/resource-manager/docs/creating-managing-labels - */ resourceLabelsSelector?: {[key: string]: string} | null; - /** - * Apply resource_value only to resources that match resource_type. resource_type will be checked with `AND` of other resources. For example, "storage.googleapis.com/Bucket" with resource_value "HIGH" will apply "HIGH" value only to "storage.googleapis.com/Bucket" resources. - */ resourceType?: string | null; - /** - * Resource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request - */ resourceValue?: string | null; - /** - * Project or folder to scope this configuration to. For example, "project/456" would apply this configuration only to resources in "project/456" scope and will be checked with `AND` of other resources. - */ scope?: string | null; - /** - * A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. "bigquery.googleapis.com/Dataset". - */ sensitiveDataProtectionMapping?: Schema$GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping; - /** - * Tag values combined with `AND` to check against. For Google Cloud resources, they are tag value IDs in the form of "tagValues/123". Example: `[ "tagValues/123", "tagValues/456", "tagValues/789" ]` https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing - */ tagValues?: string[] | null; - /** - * Output only. Timestamp this resource value configuration was last updated. - */ updateTime?: string | null; } - /** - * Kubernetes Role or ClusterRole. - */ export interface Schema$GoogleCloudSecuritycenterV2Role { - /** - * Role type. - */ kind?: string | null; - /** - * Role name. - */ name?: string | null; - /** - * Role namespace. - */ ns?: string | null; } - /** - * Details about a secret or credential associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2Secret { - /** - * The environment variable containing the secret. - */ environmentVariable?: Schema$GoogleCloudSecuritycenterV2SecretEnvironmentVariable; - /** - * The file containing the secret. - */ filePath?: Schema$GoogleCloudSecuritycenterV2SecretFilePath; - /** - * The status of the secret. - */ status?: Schema$GoogleCloudSecuritycenterV2SecretStatus; - /** - * The type of secret, for example, GCP_API_KEY. - */ type?: string | null; } - /** - * Environment variable containing the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretEnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content. - */ key?: string | null; } - /** - * File path containing the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretFilePath { - /** - * Path to the file. - */ path?: string | null; } - /** - * The status of the secret. - */ export interface Schema$GoogleCloudSecuritycenterV2SecretStatus { - /** - * Time that the secret was found. - */ - lastUpdatedTime?: string | null; - /** - * The validity of the secret. - */ + lastUpdatedTime?: string | null; validity?: string | null; } - /** - * SecurityBulletin are notifications of vulnerabilities of Google products. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityBulletin { - /** - * ID of the bulletin corresponding to the vulnerability. - */ bulletinId?: string | null; - /** - * Submission time of this Security Bulletin. - */ submissionTime?: string | null; - /** - * This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0 - */ suggestedUpgradeVersion?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityMarks { - /** - * The canonical name of the marks. The following list shows some examples: + `organizations/{organization_id\}/assets/{asset_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` + `folders/{folder_id\}/assets/{asset_id\}/securityMarks` + `folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `folders/{folder_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` + `projects/{project_number\}/assets/{asset_id\}/securityMarks` + `projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `projects/{project_number\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name The following list shows some examples: + `organizations/{organization_id\}/assets/{asset_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks` + `organizations/{organization_id\}/sources/{source_id\}/locations/{location\}/findings/{finding_id\}/securityMarks` - */ name?: string | null; } - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityPolicy { - /** - * The name of the Google Cloud Armor security policy, for example, "my-security-policy". - */ name?: string | null; - /** - * Whether or not the associated rule or policy is in preview mode. - */ preview?: boolean | null; - /** - * The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'. - */ type?: string | null; } - /** - * Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud. - */ export interface Schema$GoogleCloudSecuritycenterV2SecurityPosture { - /** - * The name of the updated policy, for example, `projects/{project_id\}/policies/{constraint_name\}`. - */ changedPolicy?: string | null; - /** - * Name of the posture, for example, `CIS-Posture`. - */ name?: string | null; - /** - * The ID of the updated policy, for example, `compute-policy-1`. - */ policy?: string | null; - /** - * The details about a change in an updated policy that violates the deployed posture. - */ policyDriftDetails?: Schema$GoogleCloudSecuritycenterV2PolicyDriftDetails[]; - /** - * The name of the updated policy set, for example, `cis-policyset`. - */ policySet?: string | null; - /** - * The name of the posture deployment, for example, `organizations/{org_id\}/posturedeployments/{posture_deployment_id\}`. - */ postureDeployment?: string | null; - /** - * The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number\}`. - */ postureDeploymentResource?: string | null; - /** - * The version of the posture, for example, `c7cfa2a8`. - */ revisionId?: string | null; } - /** - * Resource value mapping for Sensitive Data Protection findings If any of these mappings have a resource value that is not unspecified, the resource_value field will be ignored when reading this configuration. - */ export interface Schema$GoogleCloudSecuritycenterV2SensitiveDataProtectionMapping { - /** - * Resource value mapping for high-sensitivity Sensitive Data Protection findings - */ highSensitivityMapping?: string | null; - /** - * Resource value mapping for medium-sensitivity Sensitive Data Protection findings - */ mediumSensitivityMapping?: string | null; } - /** - * Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive. - */ export interface Schema$GoogleCloudSecuritycenterV2SensitivityScore { - /** - * The sensitivity score applied to the resource. - */ score?: string | null; } - /** - * Identity delegation history of an authenticated service account. - */ export interface Schema$GoogleCloudSecuritycenterV2ServiceAccountDelegationInfo { - /** - * The email address of a Google account. - */ principalEmail?: string | null; - /** - * A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name\}/subjects/{subject\}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name\}[{subject\}]` - */ principalSubject?: string | null; } - /** - * Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly. - */ export interface Schema$GoogleCloudSecuritycenterV2StaticMute { - /** - * When the static mute was applied. - */ applyTime?: string | null; - /** - * The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value. - */ state?: string | null; } - /** - * Represents a Kubernetes subject. - */ export interface Schema$GoogleCloudSecuritycenterV2Subject { - /** - * Authentication type for the subject. - */ kind?: string | null; - /** - * Name for the subject. - */ name?: string | null; - /** - * Namespace for the subject. - */ ns?: string | null; } - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ export interface Schema$GoogleCloudSecuritycenterV2TicketInfo { - /** - * The assignee of the ticket in the ticket system. - */ assignee?: string | null; - /** - * The description of the ticket in the ticket system. - */ description?: string | null; - /** - * The identifier of the ticket in the ticket system. - */ id?: string | null; - /** - * The latest status of the ticket, as reported by the ticket system. - */ status?: string | null; - /** - * The time when the ticket was last updated, as reported by the ticket system. - */ updateTime?: string | null; - /** - * The link to the ticket in the ticket system. - */ uri?: string | null; } - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. - */ export interface Schema$GoogleCloudSecuritycenterV2ToxicCombination { - /** - * The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack. - */ attackExposureScore?: number | null; - /** - * List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`. - */ relatedFindings?: string[] | null; } - /** - * Vertex AI-related information associated with the finding. - */ export interface Schema$GoogleCloudSecuritycenterV2VertexAi { - /** - * Datasets associated with the finding. - */ datasets?: Schema$GoogleCloudSecuritycenterV2Dataset[]; - /** - * Pipelines associated with the finding. - */ pipelines?: Schema$GoogleCloudSecuritycenterV2Pipeline[]; } - /** - * Refers to common vulnerability fields e.g. cve, cvss, cwe etc. - */ export interface Schema$GoogleCloudSecuritycenterV2Vulnerability { - /** - * CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ cve?: Schema$GoogleCloudSecuritycenterV2Cve; - /** - * Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability. - */ cwes?: Schema$GoogleCloudSecuritycenterV2Cwe[]; - /** - * The fixed package is relevant to the finding. - */ fixedPackage?: Schema$GoogleCloudSecuritycenterV2Package; - /** - * The offending package is relevant to the finding. - */ offendingPackage?: Schema$GoogleCloudSecuritycenterV2Package; - /** - * Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is. - */ providerRiskScore?: string | null; - /** - * Represents whether the vulnerability is reachable (detected via static analysis) - */ reachable?: boolean | null; - /** - * The security bulletin is relevant to this finding. - */ securityBulletin?: Schema$GoogleCloudSecuritycenterV2SecurityBulletin; } - /** - * A signature corresponding to a YARA rule. - */ export interface Schema$GoogleCloudSecuritycenterV2YaraRuleSignature { - /** - * The name of the YARA rule. - */ yaraRule?: string | null; } - /** - * Contains details about groups of which this finding is a member. A group is a collection of findings that are related in some way. - */ export interface Schema$GroupMembership { - /** - * ID of the group. - */ groupId?: string | null; - /** - * Type of group. - */ groupType?: string | null; } - /** - * The http response returned by the web application. - */ export interface Schema$HttpResponse { - /** - * The http path for which response code was returned by web application, for example, "https://test-app.a.run.app/test". - */ path?: string | null; - /** - * The http response code returned by the web application, for example, 200. - */ statusCode?: string | null; } - /** - * Represents a particular IAM binding, which captures a member's role addition, removal, or state. - */ export interface Schema$IamBinding { - /** - * The action that was performed on a Binding. - */ action?: string | null; - /** - * A single identity requesting access for a Cloud Platform resource, for example, "foo@google.com". - */ member?: string | null; - /** - * Role that is assigned to "members". For example, "roles/viewer", "roles/editor", or "roles/owner". - */ role?: string | null; } - /** - * Represents what's commonly known as an _indicator of compromise_ (IoC) in computer forensics. This is an artifact observed on a network or in an operating system that, with high confidence, indicates a computer intrusion. For more information, see [Indicator of compromise](https://en.wikipedia.org/wiki/Indicator_of_compromise). - */ export interface Schema$Indicator { - /** - * List of domains associated to the Finding. - */ domains?: string[] | null; - /** - * The list of IP addresses that are associated with the finding. - */ ipAddresses?: string[] | null; - /** - * The list of matched signatures indicating that the given process is present in the environment. - */ signatures?: Schema$ProcessSignature[]; - /** - * The list of URIs associated to the Findings. - */ uris?: string[] | null; } - /** - * Type of information detected by the API. - */ export interface Schema$InfoType { - /** - * Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/sensitive-data-protection/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern `[A-Za-z0-9$_-]{1,64\}`. - */ name?: string | null; - /** - * Optional custom sensitivity for this InfoType. This only applies to data profiling. - */ sensitivityScore?: Schema$SensitivityScore; - /** - * Optional version name for this InfoType. - */ version?: string | null; } - /** - * IP rule information. - */ export interface Schema$IpRule { - /** - * Optional. An optional list of ports to which this rule applies. This field is only applicable for the UDP or (S)TCP protocols. Each entry must be either an integer or a range including a min and max port number. - */ portRanges?: Schema$PortRange[]; - /** - * The IP protocol this rule applies to. This value can either be one of the following well known protocol strings (TCP, UDP, ICMP, ESP, AH, IPIP, SCTP) or a string representation of the integer value. - */ protocol?: string | null; } - /** - * IP rules associated with the finding. - */ export interface Schema$IpRules { - /** - * Tuple with allowed rules. - */ allowed?: Schema$Allowed; - /** - * Tuple with denied rules. - */ denied?: Schema$Denied; - /** - * If destination IP ranges are specified, the firewall rule applies only to traffic that has a destination IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ destinationIpRanges?: string[] | null; - /** - * The direction that the rule is applicable to, one of ingress or egress. - */ direction?: string | null; - /** - * Name of the network protocol service, such as FTP, that is exposed by the open port. Follows the naming convention available at: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml. - */ exposedServices?: string[] | null; - /** - * If source IP ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. Only supports IPv4. - */ sourceIpRanges?: string[] | null; } - /** - * Describes a job - */ export interface Schema$Job { - /** - * Optional. If the job did not complete successfully, this field describes why. - */ errorCode?: number | null; - /** - * Optional. Gives the location where the job ran, such as `US` or `europe-west1` - */ location?: string | null; - /** - * The fully-qualified name for a job. e.g. `projects//jobs/` - */ name?: string | null; - /** - * Output only. State of the job, such as `RUNNING` or `PENDING`. - */ state?: string | null; } - /** - * Kernel mode rootkit signatures. - */ export interface Schema$KernelRootkit { - /** - * Rootkit name, when available. - */ name?: string | null; - /** - * True if unexpected modifications of kernel code memory are present. - */ unexpectedCodeModification?: boolean | null; - /** - * True if `ftrace` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedFtraceHandler?: boolean | null; - /** - * True if interrupt handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedInterruptHandler?: boolean | null; - /** - * True if kernel code pages that are not in the expected kernel or module code regions are present. - */ unexpectedKernelCodePages?: boolean | null; - /** - * True if `kprobe` points are present with callbacks pointing to regions that are not in the expected kernel or module code range. - */ unexpectedKprobeHandler?: boolean | null; - /** - * True if unexpected processes in the scheduler run queue are present. Such processes are in the run queue, but not in the process task list. - */ unexpectedProcessesInRunqueue?: boolean | null; - /** - * True if unexpected modifications of kernel read-only data memory are present. - */ unexpectedReadOnlyDataModification?: boolean | null; - /** - * True if system call handlers that are are not in the expected kernel or module code regions are present. - */ unexpectedSystemCallHandler?: boolean | null; } - /** - * Kubernetes-related attributes. - */ export interface Schema$Kubernetes { - /** - * Provides information on any Kubernetes access reviews (privilege checks) relevant to the finding. - */ accessReviews?: Schema$AccessReview[]; - /** - * Provides Kubernetes role binding information for findings that involve [RoleBindings or ClusterRoleBindings](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ bindings?: Schema$GoogleCloudSecuritycenterV1Binding[]; - /** - * GKE [node pools](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pools) associated with the finding. This field contains node pool information for each node, when it is available. - */ nodePools?: Schema$NodePool[]; - /** - * Provides Kubernetes [node](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#nodes) information. - */ nodes?: Schema$Node[]; - /** - * Kubernetes objects related to the finding. - */ objects?: Schema$Object[]; - /** - * Kubernetes [Pods](https://cloud.google.com/kubernetes-engine/docs/concepts/pod) associated with the finding. This field contains Pod records for each container that is owned by a Pod. - */ pods?: Schema$Pod[]; - /** - * Provides Kubernetes role information for findings that involve [Roles or ClusterRoles](https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control). - */ roles?: Schema$Role[]; } - /** - * Represents a generic name-value label. A label has separate name and value fields to support filtering with the `contains()` function. For more information, see [Filtering on array-type fields](https://cloud.google.com/security-command-center/docs/how-to-api-list-findings#array-contains-filtering). - */ export interface Schema$Label { - /** - * Name of the label. - */ name?: string | null; - /** - * Value that corresponds to the label's name. - */ value?: string | null; } - /** - * Contains information related to the load balancer associated with the finding. - */ export interface Schema$LoadBalancer { - /** - * The name of the load balancer associated with the finding. - */ name?: string | null; } - /** - * An individual entry in a log. - */ export interface Schema$LogEntry { - /** - * An individual entry in a log stored in Cloud Logging. - */ cloudLoggingEntry?: Schema$CloudLoggingEntry; } - /** - * A signature corresponding to memory page hashes. - */ export interface Schema$MemoryHashSignature { - /** - * The binary family. - */ binaryFamily?: string | null; - /** - * The list of memory hash detections contributing to the binary family match. - */ detections?: Schema$Detection[]; } - /** - * MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org - */ export interface Schema$MitreAttack { - /** - * Additional MITRE ATT&CK tactics related to this finding, if any. - */ additionalTactics?: string[] | null; - /** - * Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques. - */ additionalTechniques?: string[] | null; - /** - * The MITRE ATT&CK tactic most closely represented by this finding, if any. - */ primaryTactic?: string | null; - /** - * The MITRE ATT&CK technique most closely represented by this finding, if any. primary_techniques is a repeated field because there are multiple levels of MITRE ATT&CK techniques. If the technique most closely represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`), both the sub-technique and its parent technique(s) will be listed (e.g. `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`). - */ - primaryTechniques?: string[] | null; - /** - * The MITRE ATT&CK version referenced by the above fields. E.g. "8". - */ + primaryTechniques?: string[] | null; version?: string | null; } - /** - * Mute information about the finding, including whether the finding has a static mute or any matching dynamic mute rules. - */ export interface Schema$MuteInfo { - /** - * The list of dynamic mute rules that currently match the finding. - */ dynamicMuteRecords?: Schema$DynamicMuteRecord[]; - /** - * If set, the static mute applied to this finding. Static mutes override dynamic mutes. If unset, there is no static mute. - */ staticMute?: Schema$StaticMute; } - /** - * Contains information about a VPC network associated with the finding. - */ export interface Schema$Network { - /** - * The name of the VPC network resource, for example, `//compute.googleapis.com/projects/my-project/global/networks/my-network`. - */ name?: string | null; } - /** - * Kubernetes nodes associated with the finding. - */ export interface Schema$Node { - /** - * [Full resource name](https://google.aip.dev/122#full-resource-names) of the Compute Engine VM running the cluster node. - */ name?: string | null; } - /** - * Provides GKE node pool information. - */ export interface Schema$NodePool { - /** - * Kubernetes node pool name. - */ name?: string | null; - /** - * Nodes associated with the finding. - */ nodes?: Schema$Node[]; } - /** - * Represents a Jupyter notebook IPYNB file, such as a [Colab Enterprise notebook](https://cloud.google.com/colab/docs/introduction) file, that is associated with a finding. - */ export interface Schema$Notebook { - /** - * The user ID of the latest author to modify the notebook. - */ lastAuthor?: string | null; - /** - * The name of the notebook. - */ name?: string | null; - /** - * The most recent time the notebook was updated. - */ notebookUpdateTime?: string | null; - /** - * The source notebook service, for example, "Colab Enterprise". - */ service?: string | null; } - /** - * Kubernetes object related to the finding, uniquely identified by GKNN. Used if the object Kind is not one of Pod, Node, NodePool, Binding, or AccessReview. - */ export interface Schema$Object { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$Container[]; - /** - * Kubernetes object group, such as "policy.k8s.io/v1". - */ group?: string | null; - /** - * Kubernetes object kind, such as "Namespace". - */ kind?: string | null; - /** - * Kubernetes object name. For details see https://kubernetes.io/docs/concepts/overview/working-with-objects/names/. - */ name?: string | null; - /** - * Kubernetes object namespace. Must be a valid DNS label. Named "ns" to avoid collision with C++ namespace keyword. For details see https://kubernetes.io/docs/tasks/administer-cluster/namespaces/. - */ ns?: string | null; } - /** - * Contains information about the org policies associated with the finding. - */ export interface Schema$OrgPolicy { - /** - * The resource name of the org policy. Example: "organizations/{organization_id\}/policies/{constraint_name\}" - */ name?: string | null; } - /** - * Package is a generic definition of a package. - */ export interface Schema$Package { - /** - * The CPE URI where the vulnerability was detected. - */ cpeUri?: string | null; - /** - * The name of the package where the vulnerability was detected. - */ packageName?: string | null; - /** - * Type of package, for example, os, maven, or go. - */ packageType?: string | null; - /** - * The version of the package. - */ packageVersion?: string | null; } - /** - * Vertex AI training pipeline associated with the finding. - */ export interface Schema$Pipeline { - /** - * The user defined display name of pipeline, e.g. plants-classification - */ displayName?: string | null; - /** - * Resource name of the pipeline, e.g. projects/{project\}/locations/{location\}/trainingPipelines/5253428229225578496 - */ name?: string | null; } - /** - * A Kubernetes Pod. - */ export interface Schema$Pod { - /** - * Pod containers associated with this finding, if any. - */ containers?: Schema$Container[]; - /** - * Pod labels. For Kubernetes containers, these are applied to the container. - */ labels?: Schema$Label[]; - /** - * Kubernetes Pod name. - */ name?: string | null; - /** - * Kubernetes Pod namespace. - */ ns?: string | null; } - /** - * The policy field that violates the deployed posture and its expected and detected values. - */ export interface Schema$PolicyDriftDetails { - /** - * The detected value that violates the deployed posture, for example, `false` or `allowed_values={"projects/22831892"\}`. - */ detectedValue?: string | null; - /** - * The value of this field that was configured in a posture, for example, `true` or `allowed_values={"projects/29831892"\}`. - */ expectedValue?: string | null; - /** - * The name of the updated field, for example constraint.implementation.policy_rules[0].enforce - */ field?: string | null; } - /** - * Metadata summarizing policy violations of child resources of the affected resource. `finding_category` and `resource` determine the exact semantics of the counts. For example, when category=DATA_SECURITY_POSTURE_OBJECT_PUBLIC_ACCESS_VIOLATION and resource='storage.googleapis.com/buckets/my-bucket-name' then this counts the number of Cloud Storage objects in my-bucket-name which violate a Public Access control. - */ export interface Schema$PolicyViolationSummary { - /** - * Total number of child resources that conform to the policy. - */ conformantResourcesCount?: string | null; - /** - * Number of child resources for which errors during evaluation occurred. The evaluation result for these child resources is effectively "unknown". - */ evaluationErrorsCount?: string | null; - /** - * Total count of child resources which were not in scope for evaluation. - */ outOfScopeResourcesCount?: string | null; - /** - * Count of child resources in violation of the policy. - */ policyViolationsCount?: string | null; } - /** - * A port range which is inclusive of the min and max values. Values are between 0 and 2^16-1. The max can be equal / must be not smaller than the min value. If min and max are equal this indicates that it is a single port. - */ export interface Schema$PortRange { - /** - * Maximum port value. - */ max?: string | null; - /** - * Minimum port value. - */ min?: string | null; } - /** - * Represents an operating system process. - */ export interface Schema$Process { - /** - * Process arguments as JSON encoded strings. - */ args?: string[] | null; - /** - * True if `args` is incomplete. - */ argumentsTruncated?: boolean | null; - /** - * File information for the process executable. - */ binary?: Schema$File; - /** - * Process environment variables. - */ envVariables?: Schema$EnvironmentVariable[]; - /** - * True if `env_variables` is incomplete. - */ envVariablesTruncated?: boolean | null; - /** - * File information for libraries loaded by the process. - */ libraries?: Schema$File[]; - /** - * The process name, as displayed in utilities like `top` and `ps`. This name can be accessed through `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`. - */ name?: string | null; - /** - * The parent process ID. - */ parentPid?: string | null; - /** - * The process ID. - */ pid?: string | null; - /** - * When the process represents the invocation of a script, `binary` provides information about the interpreter, while `script` provides information about the script file provided to the interpreter. - */ script?: Schema$File; - /** - * The ID of the user that executed the process. E.g. If this is the root user this will always be 0. - */ userId?: string | null; } - /** - * Indicates what signature matched this process. - */ export interface Schema$ProcessSignature { - /** - * Signature indicating that a binary family was matched. - */ memoryHashSignature?: Schema$MemoryHashSignature; - /** - * Describes the type of resource associated with the signature. - */ signatureType?: string | null; - /** - * Signature indicating that a YARA rule was matched. - */ yaraRuleSignature?: Schema$YaraRuleSignature; } - /** - * Resource capturing the settings for the Rapid Vulnerability Detection service. - */ export interface Schema$RapidVulnerabilityDetectionSettings { - /** - * The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's. - */ modules?: {[key: string]: Schema$Config} | null; - /** - * The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings - */ name?: string | null; - /** - * The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED. - */ serviceEnablementState?: string | null; - /** - * Output only. The time the settings were last updated. - */ updateTime?: string | null; } - /** - * Additional Links - */ export interface Schema$Reference { - /** - * Source of the reference e.g. NVD - */ source?: string | null; - /** - * Uri for the mentioned source e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527. - */ uri?: string | null; } - /** - * Information about the requests relevant to the finding. - */ export interface Schema$Requests { - /** - * Allowed RPS (requests per second) over the long term. - */ longTermAllowed?: number | null; - /** - * Denied RPS (requests per second) over the long term. - */ longTermDenied?: number | null; - /** - * For 'Increasing deny ratio', the ratio is the denied traffic divided by the allowed traffic. For 'Allowed traffic spike', the ratio is the allowed traffic in the short term divided by allowed traffic in the long term. - */ ratio?: number | null; - /** - * Allowed RPS (requests per second) in the short term. - */ shortTermAllowed?: number | null; } - /** - * Represents the path of resources leading up to the resource this finding is about. - */ export interface Schema$ResourcePath { - /** - * The list of nodes that make the up resource path, ordered from lowest level to highest level. - */ nodes?: Schema$ResourcePathNode[]; } - /** - * A node within the resource path. Each node represents a resource within the resource hierarchy. - */ export interface Schema$ResourcePathNode { - /** - * The display name of the resource this node represents. - */ displayName?: string | null; - /** - * The ID of the resource this node represents. - */ id?: string | null; - /** - * The type of resource this node represents. - */ nodeType?: string | null; } - /** - * Kubernetes Role or ClusterRole. - */ export interface Schema$Role { - /** - * Role type. - */ kind?: string | null; - /** - * Role name. - */ name?: string | null; - /** - * Role namespace. - */ ns?: string | null; } - /** - * Details about a secret or credential associated with the finding. - */ export interface Schema$Secret { - /** - * The environment variable containing the secret. - */ environmentVariable?: Schema$SecretEnvironmentVariable; - /** - * The file containing the secret. - */ filePath?: Schema$SecretFilePath; - /** - * The status of the secret. - */ status?: Schema$SecretStatus; - /** - * The type of secret, for example, GCP_API_KEY. - */ type?: string | null; } - /** - * Environment variable containing the secret. - */ export interface Schema$SecretEnvironmentVariable { - /** - * Environment variable name as a JSON encoded string. Note that value is not included since the value contains the secret data, which is sensitive core content. - */ key?: string | null; } - /** - * File path containing the secret. - */ export interface Schema$SecretFilePath { - /** - * Path to the file. - */ path?: string | null; } - /** - * The status of the secret. - */ export interface Schema$SecretStatus { - /** - * Time that the secret was found. - */ lastUpdatedTime?: string | null; - /** - * The validity of the secret. - */ validity?: string | null; } - /** - * SecurityBulletin are notifications of vulnerabilities of Google products. - */ export interface Schema$SecurityBulletin { - /** - * ID of the bulletin corresponding to the vulnerability. - */ bulletinId?: string | null; - /** - * Submission time of this Security Bulletin. - */ submissionTime?: string | null; - /** - * This represents a version that the cluster receiving this notification should be upgraded to, based on its current version. For example, 1.15.0 - */ suggestedUpgradeVersion?: string | null; } - /** - * Resource capturing the settings for Security Center. - */ export interface Schema$SecurityCenterSettings { - /** - * The KMS key name used for CMEK encryption. Format: projects/{project\}/locations/{location\}/keyRings/{key_ring\}/cryptoKeys/{key_name\} - */ cryptoKeyName?: string | null; - /** - * The resource name of the project to send logs to. This project must be part of the organization this resource resides in. The format is `projects/{project_id\}`. An empty value disables logging. This value is only referenced by services that support log sink. Please refer to the documentation for an updated list of compatible services. This may only be specified for organization level onboarding. - */ logSinkProject?: string | null; - /** - * The resource name of the SecurityCenterSettings. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings - */ name?: string | null; - /** - * Output only. Timestamp of when the customer organization was onboarded to SCC. - */ onboardingTime?: string | null; - /** - * Output only. The organization level service account to be used for security center components. - */ orgServiceAccount?: string | null; } - /** - * Resource capturing the settings for the Security Health Analytics service. - */ export interface Schema$SecurityHealthAnalyticsSettings { - /** - * The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration. - */ modules?: {[key: string]: Schema$Config} | null; - /** - * Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings - */ name?: string | null; - /** - * Output only. The service account used by Security Health Analytics detectors. - */ serviceAccount?: string | null; - /** - * The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED. - */ serviceEnablementState?: string | null; - /** - * Output only. The time the settings were last updated. - */ updateTime?: string | null; } - /** - * User specified security marks that are attached to the parent Security Command Center resource. Security marks are scoped within a Security Command Center organization -- they can be modified and viewed by all users who have proper permissions on the organization. - */ export interface Schema$SecurityMarks { - /** - * The canonical name of the marks. Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "folders/{folder_id\}/assets/{asset_id\}/securityMarks" "projects/{project_number\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "folders/{folder_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" "projects/{project_number\}/sources/{source_id\}/findings/{finding_id\}/securityMarks" - */ canonicalName?: string | null; - /** - * Mutable user specified security marks belonging to the parent resource. Constraints are as follows: * Keys and values are treated as case insensitive * Keys must be between 1 - 256 characters (inclusive) * Keys must be letters, numbers, underscores, or dashes * Values have leading and trailing whitespace trimmed, remaining characters must be between 1 - 4096 characters (inclusive) - */ marks?: {[key: string]: string} | null; - /** - * The relative resource name of the SecurityMarks. See: https://cloud.google.com/apis/design/resource_names#relative_resource_name Examples: "organizations/{organization_id\}/assets/{asset_id\}/securityMarks" "organizations/{organization_id\}/sources/{source_id\}/findings/{finding_id\}/securityMarks". - */ name?: string | null; } - /** - * Information about the [Google Cloud Armor security policy](https://cloud.google.com/armor/docs/security-policy-overview) relevant to the finding. - */ export interface Schema$SecurityPolicy { - /** - * The name of the Google Cloud Armor security policy, for example, "my-security-policy". - */ name?: string | null; - /** - * Whether or not the associated rule or policy is in preview mode. - */ preview?: boolean | null; - /** - * The type of Google Cloud Armor security policy for example, 'backend security policy', 'edge security policy', 'network edge security policy', or 'always-on DDoS protection'. - */ type?: string | null; } - /** - * Represents a posture that is deployed on Google Cloud by the Security Command Center Posture Management service. A posture contains one or more policy sets. A policy set is a group of policies that enforce a set of security rules on Google Cloud. - */ export interface Schema$SecurityPosture { - /** - * The name of the updated policy, for example, `projects/{project_id\}/policies/{constraint_name\}`. - */ changedPolicy?: string | null; - /** - * Name of the posture, for example, `CIS-Posture`. - */ - name?: string | null; - /** - * The ID of the updated policy, for example, `compute-policy-1`. - */ + name?: string | null; policy?: string | null; - /** - * The details about a change in an updated policy that violates the deployed posture. - */ policyDriftDetails?: Schema$PolicyDriftDetails[]; - /** - * The name of the updated policyset, for example, `cis-policyset`. - */ policySet?: string | null; - /** - * The name of the posture deployment, for example, `organizations/{org_id\}/posturedeployments/{posture_deployment_id\}`. - */ postureDeployment?: string | null; - /** - * The project, folder, or organization on which the posture is deployed, for example, `projects/{project_number\}`. - */ postureDeploymentResource?: string | null; - /** - * The version of the posture, for example, `c7cfa2a8`. - */ revisionId?: string | null; } - /** - * Score is calculated from of all elements in the data profile. A higher level means the data is more sensitive. - */ export interface Schema$SensitivityScore { - /** - * The sensitivity score applied to the resource. - */ score?: string | null; } - /** - * Identity delegation history of an authenticated service account. - */ export interface Schema$ServiceAccountDelegationInfo { - /** - * The email address of a Google account. - */ principalEmail?: string | null; - /** - * A string representing the principal_subject associated with the identity. As compared to `principal_email`, supports principals that aren't associated with email addresses, such as third party principals. For most identities, the format will be `principal://iam.googleapis.com/{identity pool name\}/subjects/{subject\}` except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy format `serviceAccount:{identity pool name\}[{subject\}]` - */ principalSubject?: string | null; } - /** - * Information about the static mute state. A static mute state overrides any dynamic mute rules that apply to this finding. The static mute state can be set by a static mute rule or by muting the finding directly. - */ export interface Schema$StaticMute { - /** - * When the static mute was applied. - */ applyTime?: string | null; - /** - * The static mute state. If the value is `MUTED` or `UNMUTED`, then the finding's overall mute state will have the same value. - */ state?: string | null; } - /** - * Represents a Kubernetes subject. - */ export interface Schema$Subject { - /** - * Authentication type for the subject. - */ kind?: string | null; - /** - * Name for the subject. - */ name?: string | null; - /** - * Namespace for the subject. - */ ns?: string | null; } - /** - * Resource capturing the state of an organization's subscription. - */ export interface Schema$Subscription { - /** - * The details of the most recent active subscription. If there has never been a subscription this will be empty. - */ details?: Schema$Details; - /** - * The resource name of the subscription. Format: organizations/{organization\}/subscription - */ name?: string | null; - /** - * The tier of SCC features this organization currently has access to. - */ tier?: string | null; } - /** - * Information about the ticket, if any, that is being used to track the resolution of the issue that is identified by this finding. - */ export interface Schema$TicketInfo { - /** - * The assignee of the ticket in the ticket system. - */ assignee?: string | null; - /** - * The description of the ticket in the ticket system. - */ description?: string | null; - /** - * The identifier of the ticket in the ticket system. - */ id?: string | null; - /** - * The latest status of the ticket, as reported by the ticket system. - */ status?: string | null; - /** - * The time when the ticket was last updated, as reported by the ticket system. - */ updateTime?: string | null; - /** - * The link to the ticket in the ticket system. - */ uri?: string | null; } - /** - * Contains details about a group of security issues that, when the issues occur together, represent a greater risk than when the issues occur independently. A group of such issues is referred to as a toxic combination. - */ export interface Schema$ToxicCombination { - /** - * The [Attack exposure score](https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_exposure_scores) of this toxic combination. The score is a measure of how much this toxic combination exposes one or more high-value resources to potential attack. - */ attackExposureScore?: number | null; - /** - * List of resource names of findings associated with this toxic combination. For example, `organizations/123/sources/456/findings/789`. - */ relatedFindings?: string[] | null; } - /** - * Vertex AI-related information associated with the finding. - */ export interface Schema$VertexAi { - /** - * Datasets associated with the finding. - */ datasets?: Schema$Dataset[]; - /** - * Pipelines associated with the finding. - */ pipelines?: Schema$Pipeline[]; } - /** - * Resource capturing the settings for the Virtual Machine Threat Detection service. - */ export interface Schema$VirtualMachineThreatDetectionSettings { - /** - * The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration. - */ modules?: {[key: string]: Schema$Config} | null; - /** - * Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings - */ name?: string | null; - /** - * Output only. The service account used by Virtual Machine Threat Detection detectors. - */ serviceAccount?: string | null; - /** - * The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED. - */ serviceEnablementState?: string | null; - /** - * Output only. The time the settings were last updated. - */ updateTime?: string | null; } - /** - * Refers to common vulnerability fields e.g. cve, cvss, cwe etc. - */ export interface Schema$Vulnerability { - /** - * CVE stands for Common Vulnerabilities and Exposures (https://cve.mitre.org/about/) - */ cve?: Schema$Cve; - /** - * Represents one or more Common Weakness Enumeration (CWE) information on this vulnerability. - */ cwes?: Schema$Cwe[]; - /** - * The fixed package is relevant to the finding. - */ fixedPackage?: Schema$Package; - /** - * The offending package is relevant to the finding. - */ offendingPackage?: Schema$Package; - /** - * Provider provided risk_score based on multiple factors. The higher the risk score, the more risky the vulnerability is. - */ providerRiskScore?: string | null; - /** - * Represents whether the vulnerability is reachable (detected via static analysis) - */ reachable?: boolean | null; - /** - * The security bulletin is relevant to this finding. - */ securityBulletin?: Schema$SecurityBulletin; } - /** - * Vulnerability count by severity. - */ export interface Schema$VulnerabilityCountBySeverity { - /** - * Key is the Severity enum. - */ severityToFindingCount?: {[key: string]: string} | null; } - /** - * Result containing the properties and count of a VulnerabilitySnapshot request. - */ export interface Schema$VulnerabilitySnapshot { - /** - * The cloud provider for the vulnerability snapshot. - */ cloudProvider?: string | null; - /** - * The vulnerability count by severity. - */ findingCount?: Schema$VulnerabilityCountBySeverity; - /** - * Identifier. The vulnerability snapshot name. Format: //locations//vulnerabilitySnapshots/ - */ name?: string | null; - /** - * The time that the snapshot was taken. - */ snapshotTime?: string | null; } - /** - * Resource capturing the settings for the Web Security Scanner service. - */ export interface Schema$WebSecurityScannerSettings { - /** - * The configurations including the state of enablement for the service's different modules. The absence of a module in the map implies its configuration is inherited from its parent's configuration. - */ modules?: {[key: string]: Schema$Config} | null; - /** - * Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings - */ name?: string | null; - /** - * The state of enablement for the service at its level of the resource hierarchy. A DISABLED state will override all module enablement_states to DISABLED. - */ serviceEnablementState?: string | null; - /** - * Output only. The time the settings were last updated. - */ updateTime?: string | null; } - /** - * A signature corresponding to a YARA rule. - */ export interface Schema$YaraRuleSignature { - /** - * The name of the YARA rule. - */ yaraRule?: string | null; } @@ -6745,7 +2038,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -6775,7 +2067,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.getContainerThreatDetectionSettings({ - * // Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'folders/my-folder/containerThreatDetectionSettings', * }); * console.log(res.data); @@ -6895,7 +2186,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -6925,7 +2215,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.getEventThreatDetectionSettings({ - * // Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'folders/my-folder/eventThreatDetectionSettings', * }); * console.log(res.data); @@ -7039,7 +2328,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -7070,7 +2358,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.getRapidVulnerabilityDetectionSettings({ - * // Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'folders/my-folder/rapidVulnerabilityDetectionSettings', * }); * console.log(res.data); @@ -7189,7 +2476,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the SecurityCenterSettings resource. * @example * ```js * // Before running the sample: @@ -7219,7 +2505,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.getSecurityCenterSettings({ - * // Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings * name: 'folders/my-folder/securityCenterSettings', * }); * console.log(res.data); @@ -7332,7 +2617,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose. * @example * ```js * // Before running the sample: @@ -7362,7 +2646,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.getSecurityHealthAnalyticsSettings({ - * // Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'folders/my-folder/securityHealthAnalyticsSettings', * }); * console.log(res.data); @@ -7478,7 +2761,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -7509,7 +2791,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.getVirtualMachineThreatDetectionSettings({ - * // Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'folders/my-folder/virtualMachineThreatDetectionSettings', * }); * console.log(res.data); @@ -7629,7 +2910,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose. * @example * ```js * // Before running the sample: @@ -7659,7 +2939,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.getWebSecurityScannerSettings({ - * // Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'folders/my-folder/webSecurityScannerSettings', * }); * console.log(res.data); @@ -7771,7 +3050,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the ContainerThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -7802,9 +3080,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.updateContainerThreatDetectionSettings({ - * // Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'folders/my-folder/containerThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -7936,7 +3213,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the EventThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -7966,9 +3242,8 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.updateEventThreatDetectionSettings({ - * // Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'folders/my-folder/eventThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -8094,7 +3369,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the RapidVulnerabilityDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -8125,9 +3399,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.updateRapidVulnerabilityDetectionSettings({ - * // The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'folders/my-folder/rapidVulnerabilityDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -8257,7 +3530,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the SecurityHealthAnalyticsSettings resource. * @example * ```js * // Before running the sample: @@ -8288,9 +3560,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.updateSecurityHealthAnalyticsSettings({ - * // Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'folders/my-folder/securityHealthAnalyticsSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -8418,7 +3689,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the VirtualMachineThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -8449,9 +3719,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.updateVirtualMachineThreatDetectionSettings({ - * // Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'folders/my-folder/virtualMachineThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -8583,7 +3852,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the WebSecurityScannerSettings resource. * @example * ```js * // Before running the sample: @@ -8613,9 +3881,8 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.folders.updateWebSecurityScannerSettings({ - * // Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'folders/my-folder/webSecurityScannerSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -8740,53 +4007,53 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Getcontainerthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Folders$Geteventthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Folders$Getrapidvulnerabilitydetectionsettings extends StandardParameters { /** - * Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; } export interface Params$Resource$Folders$Getsecuritycentersettings extends StandardParameters { /** - * Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings + * */ name?: string; } export interface Params$Resource$Folders$Getsecurityhealthanalyticssettings extends StandardParameters { /** - * Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; } export interface Params$Resource$Folders$Getvirtualmachinethreatdetectionsettings extends StandardParameters { /** - * Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Folders$Getwebsecurityscannersettings extends StandardParameters { /** - * Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; } export interface Params$Resource$Folders$Updatecontainerthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -8797,11 +4064,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Folders$Updateeventthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -8812,11 +4079,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Folders$Updaterapidvulnerabilitydetectionsettings extends StandardParameters { /** - * The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -8827,11 +4094,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Folders$Updatesecurityhealthanalyticssettings extends StandardParameters { /** - * Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -8842,11 +4109,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Folders$Updatevirtualmachinethreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -8857,11 +4124,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Folders$Updatewebsecurityscannersettings extends StandardParameters { /** - * Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -8878,7 +4145,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -8909,9 +4175,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.containerThreatDetectionSettings.calculate({ - * // Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'folders/my-folder/containerThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -9036,11 +4301,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Containerthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -9052,7 +4317,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -9083,9 +4347,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.eventThreatDetectionSettings.calculate({ - * // Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'folders/my-folder/eventThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -9205,11 +4468,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Eventthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -9221,7 +4484,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -9252,7 +4514,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.rapidVulnerabilityDetectionSettings.calculate({ - * // Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'folders/my-folder/rapidVulnerabilityDetectionSettings', * }); * console.log(res.data); @@ -9376,7 +4637,7 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Rapidvulnerabilitydetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; } @@ -9388,7 +4649,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -9419,9 +4679,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.folders.securityHealthAnalyticsSettings.calculate({ - * // Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'folders/my-folder/securityHealthAnalyticsSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -9542,11 +4801,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Securityhealthanalyticssettings$Calculate extends StandardParameters { /** - * Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -9558,7 +4817,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -9590,9 +4848,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.folders.virtualMachineThreatDetectionSettings.calculate( * { - * // Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'folders/my-folder/virtualMachineThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -9718,11 +4975,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Virtualmachinethreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -9734,7 +4991,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -9765,9 +5021,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = await securitycenter.folders.webSecurityScannerSettings.calculate( * { - * // Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'folders/my-folder/webSecurityScannerSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -9886,11 +5141,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Folders$Websecurityscannersettings$Calculate extends StandardParameters { /** - * Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -9928,7 +5183,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -9959,7 +5213,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.getContainerThreatDetectionSettings({ - * // Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'organizations/my-organization/containerThreatDetectionSettings', * }); * console.log(res.data); @@ -10079,7 +5332,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -10110,7 +5362,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.getEventThreatDetectionSettings({ - * // Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'organizations/my-organization/eventThreatDetectionSettings', * }); * console.log(res.data); @@ -10225,7 +5476,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -10256,7 +5506,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.getRapidVulnerabilityDetectionSettings({ - * // Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'organizations/my-organization/rapidVulnerabilityDetectionSettings', * }); * console.log(res.data); @@ -10375,7 +5624,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the SecurityCenterSettings resource. * @example * ```js * // Before running the sample: @@ -10405,7 +5653,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.organizations.getSecurityCenterSettings({ - * // Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings * name: 'organizations/my-organization/securityCenterSettings', * }); * console.log(res.data); @@ -10518,7 +5765,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose. * @example * ```js * // Before running the sample: @@ -10549,7 +5795,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.getSecurityHealthAnalyticsSettings({ - * // Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'organizations/my-organization/securityHealthAnalyticsSettings', * }); * console.log(res.data); @@ -10665,7 +5910,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the Subscription resource. * @example * ```js * // Before running the sample: @@ -10695,7 +5939,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.organizations.getSubscription({ - * // Required. The name of the subscription to retrieve. Format: organizations/{organization\}/subscription * name: 'organizations/my-organization/subscription', * }); * console.log(res.data); @@ -10802,7 +6045,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -10834,7 +6076,6 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.getVirtualMachineThreatDetectionSettings( * { - * // Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'organizations/my-organization/virtualMachineThreatDetectionSettings', * }, * ); @@ -10955,7 +6196,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose. * @example * ```js * // Before running the sample: @@ -10985,7 +6225,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.organizations.getWebSecurityScannerSettings({ - * // Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'organizations/my-organization/webSecurityScannerSettings', * }); * console.log(res.data); @@ -11098,7 +6337,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the ContainerThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -11129,9 +6367,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.updateContainerThreatDetectionSettings({ - * // Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'organizations/my-organization/containerThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -11263,7 +6500,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the EventThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -11294,9 +6530,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.updateEventThreatDetectionSettings({ - * // Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'organizations/my-organization/eventThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -11422,7 +6657,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the RapidVulnerabilityDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -11454,9 +6688,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.updateRapidVulnerabilityDetectionSettings( * { - * // The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'organizations/my-organization/rapidVulnerabilityDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -11587,7 +6820,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the SecurityHealthAnalyticsSettings resource. * @example * ```js * // Before running the sample: @@ -11618,9 +6850,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.updateSecurityHealthAnalyticsSettings({ - * // Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'organizations/my-organization/securityHealthAnalyticsSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -11748,7 +6979,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the VirtualMachineThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -11780,9 +7010,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.updateVirtualMachineThreatDetectionSettings( * { - * // Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'organizations/my-organization/virtualMachineThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -11915,7 +7144,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the WebSecurityScannerSettings resource. * @example * ```js * // Before running the sample: @@ -11946,9 +7174,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.updateWebSecurityScannerSettings({ - * // Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'organizations/my-organization/webSecurityScannerSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -12074,59 +7301,59 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Getcontainerthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Organizations$Geteventthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Organizations$Getrapidvulnerabilitydetectionsettings extends StandardParameters { /** - * Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; } export interface Params$Resource$Organizations$Getsecuritycentersettings extends StandardParameters { /** - * Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings + * */ name?: string; } export interface Params$Resource$Organizations$Getsecurityhealthanalyticssettings extends StandardParameters { /** - * Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; } export interface Params$Resource$Organizations$Getsubscription extends StandardParameters { /** - * Required. The name of the subscription to retrieve. Format: organizations/{organization\}/subscription + * */ name?: string; } export interface Params$Resource$Organizations$Getvirtualmachinethreatdetectionsettings extends StandardParameters { /** - * Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Organizations$Getwebsecurityscannersettings extends StandardParameters { /** - * Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; } export interface Params$Resource$Organizations$Updatecontainerthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -12137,11 +7364,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Organizations$Updateeventthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -12152,11 +7379,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Organizations$Updaterapidvulnerabilitydetectionsettings extends StandardParameters { /** - * The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -12167,11 +7394,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Organizations$Updatesecurityhealthanalyticssettings extends StandardParameters { /** - * Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -12182,11 +7409,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Organizations$Updatevirtualmachinethreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -12197,11 +7424,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Organizations$Updatewebsecurityscannersettings extends StandardParameters { /** - * Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -12218,7 +7445,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -12250,9 +7476,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.containerThreatDetectionSettings.calculate( * { - * // Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'organizations/my-organization/containerThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -12378,11 +7603,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Containerthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -12394,7 +7619,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -12425,9 +7649,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.eventThreatDetectionSettings.calculate({ - * // Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'organizations/my-organization/eventThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -12547,11 +7770,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Eventthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -12563,7 +7786,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -12595,7 +7817,6 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.rapidVulnerabilityDetectionSettings.calculate( * { - * // Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'organizations/my-organization/rapidVulnerabilityDetectionSettings', * }, * ); @@ -12720,7 +7941,7 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Rapidvulnerabilitydetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; } @@ -12732,7 +7953,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -12764,9 +7984,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.securityHealthAnalyticsSettings.calculate( * { - * // Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'organizations/my-organization/securityHealthAnalyticsSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -12888,11 +8107,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Securityhealthanalyticssettings$Calculate extends StandardParameters { /** - * Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -12904,7 +8123,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -12936,9 +8154,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.organizations.virtualMachineThreatDetectionSettings.calculate( * { - * // Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'organizations/my-organization/virtualMachineThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -13064,11 +8281,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Virtualmachinethreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -13080,7 +8297,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -13111,9 +8327,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.organizations.webSecurityScannerSettings.calculate({ - * // Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'organizations/my-organization/webSecurityScannerSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -13231,11 +8446,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Organizations$Websecurityscannersettings$Calculate extends StandardParameters { /** - * Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -13269,7 +8484,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -13300,7 +8514,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = await securitycenter.projects.getContainerThreatDetectionSettings( * { - * // Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'projects/my-project/containerThreatDetectionSettings', * }, * ); @@ -13421,7 +8634,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the EventThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetEventThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateEventThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -13451,7 +8663,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.projects.getEventThreatDetectionSettings({ - * // Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'projects/my-project/eventThreatDetectionSettings', * }); * console.log(res.data); @@ -13565,7 +8776,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the RapidVulnerabilityDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetRapidVulnerabilityDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateRapidVulnerabilityDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -13596,7 +8806,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.getRapidVulnerabilityDetectionSettings({ - * // Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'projects/my-project/rapidVulnerabilityDetectionSettings', * }); * console.log(res.data); @@ -13715,7 +8924,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the SecurityCenterSettings resource. * @example * ```js * // Before running the sample: @@ -13745,7 +8953,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.projects.getSecurityCenterSettings({ - * // Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings * name: 'projects/my-project/securityCenterSettings', * }); * console.log(res.data); @@ -13858,7 +9065,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the SecurityHealthAnalyticsSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetSecurityHealthAnalyticsSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateSecurityHealthAnalyticsSettings for this purpose. * @example * ```js * // Before running the sample: @@ -13888,7 +9094,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.projects.getSecurityHealthAnalyticsSettings({ - * // Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'projects/my-project/securityHealthAnalyticsSettings', * }); * console.log(res.data); @@ -14004,7 +9209,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the VirtualMachineThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetVirtualMachineThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateVirtualMachineThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -14035,7 +9239,6 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.getVirtualMachineThreatDetectionSettings({ - * // Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'projects/my-project/virtualMachineThreatDetectionSettings', * }); * console.log(res.data); @@ -14155,7 +9358,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the WebSecurityScannerSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetWebSecurityScannerSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateWebSecurityScannerSettings for this purpose. * @example * ```js * // Before running the sample: @@ -14185,7 +9387,6 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.projects.getWebSecurityScannerSettings({ - * // Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'projects/my-project/webSecurityScannerSettings', * }); * console.log(res.data); @@ -14297,7 +9498,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the ContainerThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -14328,9 +9528,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.updateContainerThreatDetectionSettings({ - * // Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'projects/my-project/containerThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -14462,7 +9661,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the EventThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -14492,9 +9690,8 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.projects.updateEventThreatDetectionSettings({ - * // Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'projects/my-project/eventThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -14620,7 +9817,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the RapidVulnerabilityDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -14651,9 +9847,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.updateRapidVulnerabilityDetectionSettings({ - * // The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'projects/my-project/rapidVulnerabilityDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -14783,7 +9978,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the SecurityHealthAnalyticsSettings resource. * @example * ```js * // Before running the sample: @@ -14814,9 +10008,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.updateSecurityHealthAnalyticsSettings({ - * // Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'projects/my-project/securityHealthAnalyticsSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -14944,7 +10137,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the VirtualMachineThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -14975,9 +10167,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.updateVirtualMachineThreatDetectionSettings({ - * // Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'projects/my-project/virtualMachineThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -15109,7 +10300,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the WebSecurityScannerSettings resource. * @example * ```js * // Before running the sample: @@ -15139,9 +10329,8 @@ export namespace securitycenter_v1beta2 { * * // Do the magic * const res = await securitycenter.projects.updateWebSecurityScannerSettings({ - * // Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'projects/my-project/webSecurityScannerSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -15267,53 +10456,53 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Getcontainerthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Projects$Geteventthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the EventThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Projects$Getrapidvulnerabilitydetectionsettings extends StandardParameters { /** - * Required. The name of the RapidVulnerabilityDetectionSettings to retrieve. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; } export interface Params$Resource$Projects$Getsecuritycentersettings extends StandardParameters { /** - * Required. The name of the SecurityCenterSettings to retrieve. Format: organizations/{organization\}/securityCenterSettings Format: folders/{folder\}/securityCenterSettings Format: projects/{project\}/securityCenterSettings + * */ name?: string; } export interface Params$Resource$Projects$Getsecurityhealthanalyticssettings extends StandardParameters { /** - * Required. The name of the SecurityHealthAnalyticsSettings to retrieve. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; } export interface Params$Resource$Projects$Getvirtualmachinethreatdetectionsettings extends StandardParameters { /** - * Required. The name of the VirtualMachineThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Projects$Getwebsecurityscannersettings extends StandardParameters { /** - * Required. The name of the WebSecurityScannerSettings to retrieve. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; } export interface Params$Resource$Projects$Updatecontainerthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -15324,11 +10513,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Projects$Updateeventthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the EventThreatDetectionSettings. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -15339,11 +10528,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Projects$Updaterapidvulnerabilitydetectionsettings extends StandardParameters { /** - * The resource name of the RapidVulnerabilityDetectionSettings. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -15354,11 +10543,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Projects$Updatesecurityhealthanalyticssettings extends StandardParameters { /** - * Identifier. The resource name of the SecurityHealthAnalyticsSettings. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -15369,11 +10558,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Projects$Updatevirtualmachinethreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the VirtualMachineThreatDetectionSettings. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -15384,11 +10573,11 @@ export namespace securitycenter_v1beta2 { } export interface Params$Resource$Projects$Updatewebsecurityscannersettings extends StandardParameters { /** - * Identifier. The resource name of the WebSecurityScannerSettings. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -15405,7 +10594,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -15436,9 +10624,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.containerThreatDetectionSettings.calculate({ - * // Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'projects/my-project/containerThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -15563,11 +10750,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Containerthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -15579,7 +10766,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective EventThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -15610,9 +10796,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.eventThreatDetectionSettings.calculate({ - * // Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings * name: 'projects/my-project/eventThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -15732,11 +10917,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Eventthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the EventThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/eventThreatDetectionSettings * folders/{folder\}/eventThreatDetectionSettings * projects/{project\}/eventThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -15762,7 +10947,6 @@ export namespace securitycenter_v1beta2 { } /** - * Get the ContainerThreatDetectionSettings resource. In the returned settings response, a missing field only indicates that it was not explicitly set, so no assumption should be made about these fields. In other words, GetContainerThreatDetectionSettings does not calculate the effective service settings for the resource, which accounts for inherited settings and defaults. Instead, use CalculateContainerThreatDetectionSettings for this purpose. * @example * ```js * // Before running the sample: @@ -15794,7 +10978,6 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.projects.locations.clusters.getContainerThreatDetectionSettings( * { - * // Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'projects/my-project/locations/my-location/clusters/my-cluster/containerThreatDetectionSettings', * }, * ); @@ -15915,7 +11098,6 @@ export namespace securitycenter_v1beta2 { } /** - * Update the ContainerThreatDetectionSettings resource. * @example * ```js * // Before running the sample: @@ -15947,9 +11129,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.projects.locations.clusters.updateContainerThreatDetectionSettings( * { - * // Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'projects/my-project/locations/my-location/clusters/my-cluster/containerThreatDetectionSettings', - * // The list of fields to be updated. + * * updateMask: 'placeholder-value', * * // Request body metadata @@ -16084,17 +11265,17 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Locations$Clusters$Getcontainerthreatdetectionsettings extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to retrieve. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; } export interface Params$Resource$Projects$Locations$Clusters$Updatecontainerthreatdetectionsettings extends StandardParameters { /** - * Identifier. The resource name of the ContainerThreatDetectionSettings. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * The list of fields to be updated. + * */ updateMask?: string; @@ -16111,7 +11292,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective ContainerThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -16143,9 +11323,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.projects.locations.clusters.containerThreatDetectionSettings.calculate( * { - * // Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings * name: 'projects/my-project/locations/my-location/clusters/my-cluster/containerThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -16271,11 +11450,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Locations$Clusters$Containerthreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the ContainerThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/containerThreatDetectionSettings * folders/{folder\}/containerThreatDetectionSettings * projects/{project\}/containerThreatDetectionSettings * projects/{project\}/locations/{location\}/clusters/{cluster\}/containerThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -16287,7 +11466,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective RapidVulnerabilityDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -16319,7 +11497,6 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.projects.rapidVulnerabilityDetectionSettings.calculate( * { - * // Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings * name: 'projects/my-project/rapidVulnerabilityDetectionSettings', * }, * ); @@ -16444,7 +11621,7 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Rapidvulnerabilitydetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the RapidVulnerabilityDetectionSettings to calculate. Formats: * organizations/{organization\}/rapidVulnerabilityDetectionSettings * folders/{folder\}/rapidVulnerabilityDetectionSettings * projects/{project\}/rapidVulnerabilityDetectionSettings + * */ name?: string; } @@ -16456,7 +11633,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective SecurityHealthAnalyticsSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -16487,9 +11663,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.securityHealthAnalyticsSettings.calculate({ - * // Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings * name: 'projects/my-project/securityHealthAnalyticsSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -16610,11 +11785,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Securityhealthanalyticssettings$Calculate extends StandardParameters { /** - * Required. The name of the SecurityHealthAnalyticsSettings to calculate. Formats: * organizations/{organization\}/securityHealthAnalyticsSettings * folders/{folder\}/securityHealthAnalyticsSettings * projects/{project\}/securityHealthAnalyticsSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -16626,7 +11801,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective VirtualMachineThreatDetectionSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -16658,9 +11832,8 @@ export namespace securitycenter_v1beta2 { * const res = * await securitycenter.projects.virtualMachineThreatDetectionSettings.calculate( * { - * // Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings * name: 'projects/my-project/virtualMachineThreatDetectionSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }, * ); @@ -16786,11 +11959,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Virtualmachinethreatdetectionsettings$Calculate extends StandardParameters { /** - * Required. The name of the VirtualMachineThreatDetectionSettings to calculate. Formats: * organizations/{organization\}/virtualMachineThreatDetectionSettings * folders/{folder\}/virtualMachineThreatDetectionSettings * projects/{project\}/virtualMachineThreatDetectionSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } @@ -16802,7 +11975,6 @@ export namespace securitycenter_v1beta2 { } /** - * Calculates the effective WebSecurityScannerSettings based on its level in the resource hierarchy and its settings. Settings provided closer to the target resource take precedence over those further away (e.g. folder will override organization level settings). The default SCC setting for the detector service defaults can be overridden at organization, folder and project levels. No assumptions should be made about the SCC defaults as it is considered an internal implementation detail. * @example * ```js * // Before running the sample: @@ -16833,9 +12005,8 @@ export namespace securitycenter_v1beta2 { * // Do the magic * const res = * await securitycenter.projects.webSecurityScannerSettings.calculate({ - * // Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings * name: 'projects/my-project/webSecurityScannerSettings', - * // Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * * showEligibleModulesOnly: 'placeholder-value', * }); * console.log(res.data); @@ -16953,11 +12124,11 @@ export namespace securitycenter_v1beta2 { export interface Params$Resource$Projects$Websecurityscannersettings$Calculate extends StandardParameters { /** - * Required. The name of the WebSecurityScannerSettings to calculate. Formats: * organizations/{organization\}/webSecurityScannerSettings * folders/{folder\}/webSecurityScannerSettings * projects/{project\}/webSecurityScannerSettings + * */ name?: string; /** - * Optional. When set, will only retrieve the modules that are in scope. By default, all modules will be shown. + * */ showEligibleModulesOnly?: boolean; } From 23eb5fb15ce875a053bc06c8149163c723091837 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:13 +0000 Subject: [PATCH 25/29] feat(servicecontrol): update the API #### servicecontrol:v1 The following keys were added: - schemas.Auth.properties.credentialId.description - schemas.Auth.properties.credentialId.type #### servicecontrol:v2 The following keys were added: - schemas.Auth.properties.credentialId.description - schemas.Auth.properties.credentialId.type --- discovery/servicecontrol-v1.json | 6 +++++- discovery/servicecontrol-v2.json | 6 +++++- src/apis/servicecontrol/v1.ts | 4 ++++ src/apis/servicecontrol/v2.ts | 4 ++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/discovery/servicecontrol-v1.json b/discovery/servicecontrol-v1.json index b8a35fe473..80357ccf67 100644 --- a/discovery/servicecontrol-v1.json +++ b/discovery/servicecontrol-v1.json @@ -197,7 +197,7 @@ } } }, - "revision": "20260428", + "revision": "20260512", "rootUrl": "https://servicecontrol.googleapis.com/", "schemas": { "AllocateInfo": { @@ -422,6 +422,10 @@ "description": "Structured claims presented with the credential. JWTs include `{key: value}` pairs for standard and private claims. The following is a subset of the standard required and optional claims that would typically be presented for a Google-based JWT: {'iss': 'accounts.google.com', 'sub': '113289723416554971153', 'aud': ['123456789012', 'pubsub.googleapis.com'], 'azp': '123456789012.apps.googleusercontent.com', 'email': 'jsmith@example.com', 'iat': 1353601026, 'exp': 1353604926} SAML assertions are similarly specified, but with an identity provider dependent structure.", "type": "object" }, + "credentialId": { + "description": "Identifies the client credential id used for authentication. credential_id is in the format of AUTH_METHOD:IDENTIFIER, e.g. \"serviceaccount:XXXXX, apikey:XXXXX\" where the format of the IDENTIFIER can vary for different AUTH_METHODs.", + "type": "string" + }, "oauth": { "$ref": "Oauth", "description": "Attributes of the OAuth token associated with the request." diff --git a/discovery/servicecontrol-v2.json b/discovery/servicecontrol-v2.json index c6cfc7b690..21e5d3d1d7 100644 --- a/discovery/servicecontrol-v2.json +++ b/discovery/servicecontrol-v2.json @@ -169,7 +169,7 @@ } } }, - "revision": "20260428", + "revision": "20260512", "rootUrl": "https://servicecontrol.googleapis.com/", "schemas": { "Api": { @@ -363,6 +363,10 @@ "description": "Structured claims presented with the credential. JWTs include `{key: value}` pairs for standard and private claims. The following is a subset of the standard required and optional claims that would typically be presented for a Google-based JWT: {'iss': 'accounts.google.com', 'sub': '113289723416554971153', 'aud': ['123456789012', 'pubsub.googleapis.com'], 'azp': '123456789012.apps.googleusercontent.com', 'email': 'jsmith@example.com', 'iat': 1353601026, 'exp': 1353604926} SAML assertions are similarly specified, but with an identity provider dependent structure.", "type": "object" }, + "credentialId": { + "description": "Identifies the client credential id used for authentication. credential_id is in the format of AUTH_METHOD:IDENTIFIER, e.g. \"serviceaccount:XXXXX, apikey:XXXXX\" where the format of the IDENTIFIER can vary for different AUTH_METHODs.", + "type": "string" + }, "oauth": { "$ref": "Oauth", "description": "Attributes of the OAuth token associated with the request." diff --git a/src/apis/servicecontrol/v1.ts b/src/apis/servicecontrol/v1.ts index 8dc7f92d04..46cdf0fd95 100644 --- a/src/apis/servicecontrol/v1.ts +++ b/src/apis/servicecontrol/v1.ts @@ -283,6 +283,10 @@ export namespace servicecontrol_v1 { * Structured claims presented with the credential. JWTs include `{key: value\}` pairs for standard and private claims. The following is a subset of the standard required and optional claims that would typically be presented for a Google-based JWT: {'iss': 'accounts.google.com', 'sub': '113289723416554971153', 'aud': ['123456789012', 'pubsub.googleapis.com'], 'azp': '123456789012.apps.googleusercontent.com', 'email': 'jsmith@example.com', 'iat': 1353601026, 'exp': 1353604926\} SAML assertions are similarly specified, but with an identity provider dependent structure. */ claims?: {[key: string]: any} | null; + /** + * Identifies the client credential id used for authentication. credential_id is in the format of AUTH_METHOD:IDENTIFIER, e.g. "serviceaccount:XXXXX, apikey:XXXXX" where the format of the IDENTIFIER can vary for different AUTH_METHODs. + */ + credentialId?: string | null; /** * Attributes of the OAuth token associated with the request. */ diff --git a/src/apis/servicecontrol/v2.ts b/src/apis/servicecontrol/v2.ts index fea6fa6db7..4f39ee9f1d 100644 --- a/src/apis/servicecontrol/v2.ts +++ b/src/apis/servicecontrol/v2.ts @@ -267,6 +267,10 @@ export namespace servicecontrol_v2 { * Structured claims presented with the credential. JWTs include `{key: value\}` pairs for standard and private claims. The following is a subset of the standard required and optional claims that would typically be presented for a Google-based JWT: {'iss': 'accounts.google.com', 'sub': '113289723416554971153', 'aud': ['123456789012', 'pubsub.googleapis.com'], 'azp': '123456789012.apps.googleusercontent.com', 'email': 'jsmith@example.com', 'iat': 1353601026, 'exp': 1353604926\} SAML assertions are similarly specified, but with an identity provider dependent structure. */ claims?: {[key: string]: any} | null; + /** + * Identifies the client credential id used for authentication. credential_id is in the format of AUTH_METHOD:IDENTIFIER, e.g. "serviceaccount:XXXXX, apikey:XXXXX" where the format of the IDENTIFIER can vary for different AUTH_METHODs. + */ + credentialId?: string | null; /** * Attributes of the OAuth token associated with the request. */ From f0ea67c59b633d8e05d777ac9ea1059683a3a20c Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:14 +0000 Subject: [PATCH 26/29] feat(storage): update the API #### storage:v1 The following keys were added: - schemas.Bucket.properties.lifecycle.properties.rule.items.properties.condition.properties.sizeAboveBytes.description - schemas.Bucket.properties.lifecycle.properties.rule.items.properties.condition.properties.sizeAboveBytes.format - schemas.Bucket.properties.lifecycle.properties.rule.items.properties.condition.properties.sizeAboveBytes.type - schemas.Bucket.properties.lifecycle.properties.rule.items.properties.condition.properties.sizeBelowBytes.description - schemas.Bucket.properties.lifecycle.properties.rule.items.properties.condition.properties.sizeBelowBytes.format - schemas.Bucket.properties.lifecycle.properties.rule.items.properties.condition.properties.sizeBelowBytes.type --- discovery/storage-v1.json | 14 ++++++++++++-- src/apis/storage/v1.ts | 2 ++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/discovery/storage-v1.json b/discovery/storage-v1.json index 94826e2c9f..e24a43806d 100644 --- a/discovery/storage-v1.json +++ b/discovery/storage-v1.json @@ -253,7 +253,7 @@ "location": "northamerica-south1" } ], - "etag": "\"3136383236333536383830353031333435373432\"", + "etag": "\"3135343638383433383330343638393536313030\"", "icons": { "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" @@ -4605,7 +4605,7 @@ } } }, - "revision": "20260408", + "revision": "20260524", "rootUrl": "https://storage.googleapis.com/", "schemas": { "AdvanceRelocateBucketOperationRequest": { @@ -5118,6 +5118,16 @@ "description": "Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.", "format": "int32", "type": "integer" + }, + "sizeAboveBytes": { + "description": "Objects having a size greater than this value in bytes will be matched.", + "format": "int64", + "type": "string" + }, + "sizeBelowBytes": { + "description": "Objects having a size less than this value in bytes will be matched.", + "format": "int64", + "type": "string" } }, "type": "object" diff --git a/src/apis/storage/v1.ts b/src/apis/storage/v1.ts index 9f564956a1..35d1d012a6 100644 --- a/src/apis/storage/v1.ts +++ b/src/apis/storage/v1.ts @@ -354,6 +354,8 @@ export namespace storage_v1 { matchesSuffix?: string[]; noncurrentTimeBefore?: string; numNewerVersions?: number; + sizeAboveBytes?: string; + sizeBelowBytes?: string; }; }>; } | null; From 997a2e705c09b0684bdeab388af7a8650caf1fa2 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:14 +0000 Subject: [PATCH 27/29] feat(threatintelligence): update the API #### threatintelligence:v1beta The following keys were added: - schemas.Configuration.properties.etag.description - schemas.Configuration.properties.etag.type The following keys were changed: - endpoints --- discovery/threatintelligence-v1beta.json | 21 +++++---------------- src/apis/threatintelligence/v1beta.ts | 6 ++++++ 2 files changed, 11 insertions(+), 16 deletions(-) diff --git a/discovery/threatintelligence-v1beta.json b/discovery/threatintelligence-v1beta.json index 6f485b85a3..f71267fd40 100644 --- a/discovery/threatintelligence-v1beta.json +++ b/discovery/threatintelligence-v1beta.json @@ -20,21 +20,6 @@ "description": "Regional Endpoint", "endpointUrl": "https://threatintelligence.us-central1.rep.googleapis.com/", "location": "us-central1" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://threatintelligence.us-east5.rep.googleapis.com/", - "location": "us-east5" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://threatintelligence.us-west2.rep.googleapis.com/", - "location": "us-west2" - }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://threatintelligence.us.rep.googleapis.com/", - "location": "us" } ], "fullyEncodeReservedExpansion": true, @@ -832,7 +817,7 @@ } } }, - "revision": "20260513", + "revision": "20260527", "rootUrl": "https://threatintelligence.googleapis.com/", "schemas": { "Alert": { @@ -1122,6 +1107,10 @@ "readOnly": true, "type": "string" }, + "etag": { + "description": "If included when updating a configuration, this should be set to the current etag of the configuration. If the etags do not match, the update will be rejected and an ABORTED error will be returned.", + "type": "string" + }, "name": { "description": "Identifier. Server generated name for the configuration. format is projects/{project}/configurations/{configuration}", "type": "string" diff --git a/src/apis/threatintelligence/v1beta.ts b/src/apis/threatintelligence/v1beta.ts index f082d57514..6237e80ede 100644 --- a/src/apis/threatintelligence/v1beta.ts +++ b/src/apis/threatintelligence/v1beta.ts @@ -325,6 +325,10 @@ export namespace threatintelligence_v1beta { * Output only. Human readable name for the configuration. */ displayName?: string | null; + /** + * If included when updating a configuration, this should be set to the current etag of the configuration. If the etags do not match, the update will be rejected and an ABORTED error will be returned. + */ + etag?: string | null; /** * Identifier. Server generated name for the configuration. format is projects/{project\}/configurations/{configuration\} */ @@ -3526,6 +3530,7 @@ export namespace threatintelligence_v1beta { * // "description": "my_description", * // "detail": {}, * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "provider": "my_provider", * // "state": "my_state", @@ -3821,6 +3826,7 @@ export namespace threatintelligence_v1beta { * // "description": "my_description", * // "detail": {}, * // "displayName": "my_displayName", + * // "etag": "my_etag", * // "name": "my_name", * // "provider": "my_provider", * // "state": "my_state", From 71bd3abd977a7af877b34b98a5c8e02b49f58dc3 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:15 +0000 Subject: [PATCH 28/29] feat(toolresults): update the API #### toolresults:v1beta3 The following keys were added: - schemas.LicensingProtectionTermination.description - schemas.LicensingProtectionTermination.id - schemas.LicensingProtectionTermination.type The following keys were changed: - schemas.TestIssue.properties.type.enum - schemas.TestIssue.properties.type.enumDescriptions --- discovery/toolresults-v1beta3.json | 14 +++++++++++--- src/apis/toolresults/v1beta3.ts | 4 ++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/discovery/toolresults-v1beta3.json b/discovery/toolresults-v1beta3.json index 1579eb5c90..063cee2f55 100644 --- a/discovery/toolresults-v1beta3.json +++ b/discovery/toolresults-v1beta3.json @@ -1464,7 +1464,7 @@ } } }, - "revision": "20260325", + "revision": "20260528", "rootUrl": "https://toolresults.googleapis.com/", "schemas": { "ANR": { @@ -2336,6 +2336,12 @@ "properties": {}, "type": "object" }, + "LicensingProtectionTermination": { + "description": "Licensing protection termination (Pairip) was detected.", + "id": "LicensingProtectionTermination", + "properties": {}, + "type": "object" + }, "ListEnvironmentsResponse": { "description": "Response message for EnvironmentService.ListEnvironments.", "id": "ListEnvironmentsResponse", @@ -3640,7 +3646,8 @@ "deviceOutOfMemory", "logcatCollectionError", "detectedAppSplashScreen", - "assetIssue" + "assetIssue", + "licensingProtectionTermination" ], "enumDescriptions": [ "Default unspecified type. Do not use. For versioning only.", @@ -3675,7 +3682,8 @@ "Device running out of memory was detected", "Problems detected while collecting logcat", "Robo detected a splash screen provided by app (vs. Android OS splash screen).", - "There was an issue with the assets in this test." + "There was an issue with the assets in this test.", + "Licensing protection termination (Pairip) was detected." ], "type": "string" }, diff --git a/src/apis/toolresults/v1beta3.ts b/src/apis/toolresults/v1beta3.ts index 28a92956ec..3d1fd72e0a 100644 --- a/src/apis/toolresults/v1beta3.ts +++ b/src/apis/toolresults/v1beta3.ts @@ -731,6 +731,10 @@ export namespace toolresults_v1beta3 { * Failed to find the launcher activity of an app. */ export interface Schema$LauncherActivityNotFound {} + /** + * Licensing protection termination (Pairip) was detected. + */ + export interface Schema$LicensingProtectionTermination {} /** * Response message for EnvironmentService.ListEnvironments. */ From 29b18ae98939a38f96df6bb4513fafd2ea41600f Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Tue, 2 Jun 2026 01:56:15 +0000 Subject: [PATCH 29/29] feat: regenerate index files --- discovery/clouddeploy-v1.json | 69 ++++++++++++++++++- discovery/cloudtrace-v2.json | 7 +- discovery/connectors-v2.json | 8 ++- discovery/datalineage-v1.json | 4 +- discovery/dfareporting-v5.json | 24 +------ discovery/gkehub-v1alpha.json | 35 +++++++--- discovery/gkehub-v1beta.json | 35 +++++++--- discovery/index.json | 15 ---- discovery/merchantapi-accounts_v1.json | 8 ++- discovery/merchantapi-accounts_v1beta.json | 8 ++- discovery/merchantapi-conversions_v1.json | 8 ++- discovery/merchantapi-conversions_v1beta.json | 8 ++- discovery/merchantapi-datasources_v1.json | 8 ++- discovery/merchantapi-datasources_v1beta.json | 8 ++- discovery/merchantapi-inventories_v1.json | 8 ++- discovery/merchantapi-inventories_v1beta.json | 8 ++- discovery/merchantapi-issueresolution_v1.json | 8 ++- .../merchantapi-issueresolution_v1beta.json | 8 ++- discovery/merchantapi-lfp_v1.json | 8 ++- discovery/merchantapi-lfp_v1beta.json | 8 ++- discovery/merchantapi-notifications_v1.json | 8 ++- .../merchantapi-notifications_v1beta.json | 8 ++- discovery/merchantapi-ordertracking_v1.json | 8 ++- .../merchantapi-ordertracking_v1beta.json | 8 ++- discovery/merchantapi-products_v1.json | 8 ++- discovery/merchantapi-products_v1beta.json | 8 ++- discovery/merchantapi-promotions_v1.json | 8 ++- discovery/merchantapi-promotions_v1beta.json | 8 ++- discovery/merchantapi-quota_v1.json | 8 ++- discovery/merchantapi-quota_v1beta.json | 8 ++- discovery/merchantapi-reports_v1.json | 8 ++- discovery/merchantapi-reports_v1beta.json | 8 ++- discovery/merchantapi-reviews_v1beta.json | 8 ++- discovery/recaptchaenterprise-v1.json | 8 ++- discovery/tagmanager-v2.json | 8 ++- discovery/vault-v1.json | 38 ++++++---- src/index.ts | 1 - 37 files changed, 295 insertions(+), 157 deletions(-) diff --git a/discovery/clouddeploy-v1.json b/discovery/clouddeploy-v1.json index 8428330b38..8cae748653 100644 --- a/discovery/clouddeploy-v1.json +++ b/discovery/clouddeploy-v1.json @@ -15,6 +15,73 @@ "description": "", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/deploy/", + "endpoints": [ + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.asia-south1.rep.googleapis.com/", + "location": "asia-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.asia-south2.rep.googleapis.com/", + "location": "asia-south2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-central1.rep.googleapis.com/", + "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-central2.rep.googleapis.com/", + "location": "us-central2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-east1.rep.googleapis.com/", + "location": "us-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-east7.rep.googleapis.com/", + "location": "us-east7" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-south1.rep.googleapis.com/", + "location": "us-south1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-west2.rep.googleapis.com/", + "location": "us-west2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-west3.rep.googleapis.com/", + "location": "us-west3" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://clouddeploy.us-west4.rep.googleapis.com/", + "location": "us-west4" + } + ], "fullyEncodeReservedExpansion": true, "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", @@ -2359,7 +2426,7 @@ } } }, - "revision": "20260512", + "revision": "20260525", "rootUrl": "https://clouddeploy.googleapis.com/", "schemas": { "AbandonReleaseRequest": { diff --git a/discovery/cloudtrace-v2.json b/discovery/cloudtrace-v2.json index fe4efc5124..d202e59b41 100644 --- a/discovery/cloudtrace-v2.json +++ b/discovery/cloudtrace-v2.json @@ -189,11 +189,6 @@ "endpointUrl": "https://cloudtrace.us-central1.rep.googleapis.com/", "location": "us-central1" }, - { - "description": "Regional Endpoint", - "endpointUrl": "https://cloudtrace.us-central2.rep.googleapis.com/", - "location": "us-central2" - }, { "description": "Regional Endpoint", "endpointUrl": "https://cloudtrace.us-east1.rep.googleapis.com/", @@ -418,7 +413,7 @@ } } }, - "revision": "20260508", + "revision": "20260520", "rootUrl": "https://cloudtrace.googleapis.com/", "schemas": { "Annotation": { diff --git a/discovery/connectors-v2.json b/discovery/connectors-v2.json index 405a76c546..18440d4998 100644 --- a/discovery/connectors-v2.json +++ b/discovery/connectors-v2.json @@ -999,6 +999,12 @@ "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$", "required": true, "type": "string" + }, + "toolNames": { + "description": "List of tool names for selective tool fetching.", + "location": "query", + "repeated": true, + "type": "string" } }, "path": "v2/{+parent}/tools", @@ -1018,7 +1024,7 @@ } } }, - "revision": "20260427", + "revision": "20260527", "rootUrl": "https://connectors.googleapis.com/", "schemas": { "AccessCredentials": { diff --git a/discovery/datalineage-v1.json b/discovery/datalineage-v1.json index 5b0fcdd052..ef14427d40 100644 --- a/discovery/datalineage-v1.json +++ b/discovery/datalineage-v1.json @@ -1283,7 +1283,7 @@ } } }, - "revision": "20260515", + "revision": "20260522", "rootUrl": "https://datalineage.googleapis.com/", "schemas": { "GoogleCloudDatacatalogLineageConfigmanagementV1Config": { @@ -1955,7 +1955,7 @@ "description": "Optional. Limits for the search." }, "locations": { - "description": "Required. The locations to search in.", + "description": "Required. The locations to search in. This list should contain the location from the `parent` field.", "items": { "type": "string" }, diff --git a/discovery/dfareporting-v5.json b/discovery/dfareporting-v5.json index 1f9dcde39d..a557af20eb 100644 --- a/discovery/dfareporting-v5.json +++ b/discovery/dfareporting-v5.json @@ -10091,7 +10091,7 @@ } } }, - "revision": "20260511", + "revision": "20260527", "rootUrl": "https://dfareporting.googleapis.com/", "schemas": { "Account": { @@ -16494,27 +16494,18 @@ "CONVERSION_CATEGORY_SIGNUP", "CONVERSION_CATEGORY_PAGE_VIEW", "CONVERSION_CATEGORY_DOWNLOAD", - "CONVERSION_CATEGORY_BOOM_EVENT", "CONVERSION_CATEGORY_ADD_TO_CART", "CONVERSION_CATEGORY_BEGIN_CHECKOUT", "CONVERSION_CATEGORY_SUBSCRIBE_PAID", - "CONVERSION_CATEGORY_SUBSCRIBE_FREE", - "CONVERSION_CATEGORY_PHONE_CALL_LEAD", - "CONVERSION_CATEGORY_IMPORTED_LEAD", "CONVERSION_CATEGORY_SUBMIT_LEAD_FORM", "CONVERSION_CATEGORY_BOOK_APPOINTMENT", "CONVERSION_CATEGORY_REQUEST_QUOTE", "CONVERSION_CATEGORY_GET_DIRECTIONS", "CONVERSION_CATEGORY_OUTBOUND_CLICK", "CONVERSION_CATEGORY_CONTACT", - "CONVERSION_CATEGORY_VIEW_KEY_PAGE", - "CONVERSION_CATEGORY_ENGAGEMENT", - "CONVERSION_CATEGORY_STORE_VISIT", - "CONVERSION_CATEGORY_STORE_SALE", "CONVERSION_CATEGORY_QUALIFIED_LEAD", "CONVERSION_CATEGORY_CONVERTED_LEAD", - "CONVERSION_CATEGORY_IN_APP_AD_REVENUE", - "CONVERSION_CATEGORY_MESSAGE_LEAD" + "CONVERSION_CATEGORY_IN_APP_AD_REVENUE" ], "enumDescriptions": [ "Unspecified category (called \"Other\" externally).", @@ -16522,27 +16513,18 @@ "Signup user action.", "User visiting a page.", "Software download action (as for an app). A conversion type that is created as a download type may not have its category changed.", - "Boom event (for user list creation). This is an internal-only category.", ". The addition of items to a shopping cart or bag on an advertiser site.", "When someone enters the checkout flow on an advertiser site.", "The start of a paid subscription for a product or service.", - "The start of a free subscription for a product or service.", - "A call to indicate interesting in an advertiser's offering. Note: this is different from support calls.", - "A lead conversion imported from an external source into Google Ads.", "A submission of a form on an advertiser site indicating business interest.", "A booking of an appointment with an advertiser's business.", "A quote or price estimate request.", "A search for an advertiser's business location.", "A click to an advertiser's partner site, e.g. a referral.", "A call, SMS, email, chat or other type of contact to an advertiser.", - "Key page views (ex: product page, article).", - "A website engagement event", - "A visit to a physical store location.", - "A sale occurring in a physical store.", "A lead conversion imported from an external source into Google Ads, that has been further qualified by the advertiser.", "A lead conversion imported from an external source into Google Ads, that has further completed a desired stage as defined by the lead gen advertiser.", - "Conversion event that provides the revenue value of impressions that were shown in-app to users.", - "Message exchanges which indicate an interest in an advertiser's offering." + "Conversion event that provides the revenue value of impressions that were shown in-app to users." ], "type": "string" }, diff --git a/discovery/gkehub-v1alpha.json b/discovery/gkehub-v1alpha.json index 6439b4cb04..bc1927eeef 100644 --- a/discovery/gkehub-v1alpha.json +++ b/discovery/gkehub-v1alpha.json @@ -2598,7 +2598,7 @@ } } }, - "revision": "20260511", + "revision": "20260525", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -7224,13 +7224,23 @@ "STATE_REASON_TYPE_UNSPECIFIED", "PAUSED_BY_USER", "PAUSED_BY_SYSTEM_CONFIG", - "PAUSED_WAITING_FOR_NEXT_STAGE" + "PAUSED_WAITING_FOR_NEXT_STAGE", + "CANCELLED_BY_USER", + "CANCELLED_PAUSED_TOO_LONG", + "CANCELLED_SUPERSEDED", + "CANCELLED_INCOMPATIBLE_ROLLOUT_SEQUENCE", + "CANCELLED_SUPERSEDED_BY_USER_ROLLOUT" ], "enumDescriptions": [ "Unspecified state reason.", "Paused by the user.", - "Paused by the RSv2 Orchestrator due to system config(ex. GKE freeze).", - "Paused waiting for the next stage to start." + "Paused by system config (ex. GKE freeze).", + "Paused waiting for the next stage to start.", + "Cancelled by the user.", + "Cancelled by the system because it was paused too long.", + "Cancelled by the system because the version is too old.", + "Cancelled by the system because the rollout sequence is incompatible, for example it has different number of stages, fleet projects or label selectors than the rollout.", + "Cancelled because of a new user-triggered rollout." ], "readOnly": true, "type": "string" @@ -7421,13 +7431,22 @@ "FORCED_SOAKING", "PAUSED" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + true, + false + ], "enumDescriptions": [ "Default value.", - "The stage is pending.", - "The stage is running.", - "The stage is soaking.", + "The stage is waiting for previous stages to complete.", + "The stage targets are being upgraded.", + "The stage is waiting for a predetermined time before next stage.", "The stage is completed.", - "The stage is force soaking.", + "Deprecated: use SOAKING instead.", "The stage is paused." ], "readOnly": true, diff --git a/discovery/gkehub-v1beta.json b/discovery/gkehub-v1beta.json index 8a9af47457..b5acfec9ce 100644 --- a/discovery/gkehub-v1beta.json +++ b/discovery/gkehub-v1beta.json @@ -2454,7 +2454,7 @@ } } }, - "revision": "20260511", + "revision": "20260525", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -6833,13 +6833,23 @@ "STATE_REASON_TYPE_UNSPECIFIED", "PAUSED_BY_USER", "PAUSED_BY_SYSTEM_CONFIG", - "PAUSED_WAITING_FOR_NEXT_STAGE" + "PAUSED_WAITING_FOR_NEXT_STAGE", + "CANCELLED_BY_USER", + "CANCELLED_PAUSED_TOO_LONG", + "CANCELLED_SUPERSEDED", + "CANCELLED_INCOMPATIBLE_ROLLOUT_SEQUENCE", + "CANCELLED_SUPERSEDED_BY_USER_ROLLOUT" ], "enumDescriptions": [ "Unspecified state reason.", "Paused by the user.", - "Paused by the RSv2 Orchestrator due to system config(ex. GKE freeze).", - "Paused waiting for the next stage to start." + "Paused by system config (ex. GKE freeze).", + "Paused waiting for the next stage to start.", + "Cancelled by the user.", + "Cancelled by the system because it was paused too long.", + "Cancelled by the system because the version is too old.", + "Cancelled by the system because the rollout sequence is incompatible, for example it has different number of stages, fleet projects or label selectors than the rollout.", + "Cancelled because of a new user-triggered rollout." ], "readOnly": true, "type": "string" @@ -7030,13 +7040,22 @@ "FORCED_SOAKING", "PAUSED" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + true, + false + ], "enumDescriptions": [ "Default value.", - "The stage is pending.", - "The stage is running.", - "The stage is soaking.", + "The stage is waiting for previous stages to complete.", + "The stage targets are being upgraded.", + "The stage is waiting for a predetermined time before next stage.", "The stage is completed.", - "The stage is force soaking.", + "Deprecated: use SOAKING instead.", "The stage is paused." ], "readOnly": true, diff --git a/discovery/index.json b/discovery/index.json index 61e8b6349d..f45522ec84 100644 --- a/discovery/index.json +++ b/discovery/index.json @@ -361,21 +361,6 @@ "title": "AlloyDB API", "version": "v1" }, - { - "description": "The Analytics API provides access to Analytics configuration and report data.", - "discoveryRestUrl": "https://analytics.googleapis.com/$discovery/rest?version=v3", - "documentationLink": "http://code.google.com/apis/analytics/docs/mgmt/home.html", - "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" - }, - "id": "analytics:v3", - "kind": "discovery#directoryItem", - "name": "analytics", - "preferred": true, - "title": "Google Analytics API", - "version": "v3" - }, { "description": "Manage properties in Google Analytics. Warning: Creating multiple Customer Applications, Accounts, or Projects to simulate or act as a single Customer Application, Account, or Project (respectively) or to circumvent Service-specific usage limits or quotas is a direct violation of Google Cloud Platform Terms of Service as well as Google APIs Terms of Service. These actions can result in immediate termination of your GCP project(s) without any warning.", "discoveryRestUrl": "https://analyticsadmin.googleapis.com/$discovery/rest?version=v1alpha", diff --git a/discovery/merchantapi-accounts_v1.json b/discovery/merchantapi-accounts_v1.json index d64d51c0f2..3fec86e13a 100644 --- a/discovery/merchantapi-accounts_v1.json +++ b/discovery/merchantapi-accounts_v1.json @@ -2438,7 +2438,7 @@ } } }, - "revision": "20260512", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -4889,11 +4889,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-accounts_v1beta.json b/discovery/merchantapi-accounts_v1beta.json index fb68ca2e6f..711ac8b156 100644 --- a/discovery/merchantapi-accounts_v1beta.json +++ b/discovery/merchantapi-accounts_v1beta.json @@ -2388,7 +2388,7 @@ } } }, - "revision": "20260512", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "About": { @@ -4766,11 +4766,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-conversions_v1.json b/discovery/merchantapi-conversions_v1.json index a0b9fd843d..f791ed6246 100644 --- a/discovery/merchantapi-conversions_v1.json +++ b/discovery/merchantapi-conversions_v1.json @@ -295,7 +295,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AttributionSettings": { @@ -628,11 +628,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-conversions_v1beta.json b/discovery/merchantapi-conversions_v1beta.json index 88796e73c5..366b00fa05 100644 --- a/discovery/merchantapi-conversions_v1beta.json +++ b/discovery/merchantapi-conversions_v1beta.json @@ -295,7 +295,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AttributionSettings": { @@ -628,11 +628,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-datasources_v1.json b/discovery/merchantapi-datasources_v1.json index e41d8a1baf..fde4449250 100644 --- a/discovery/merchantapi-datasources_v1.json +++ b/discovery/merchantapi-datasources_v1.json @@ -321,7 +321,7 @@ } } }, - "revision": "20260303", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -942,11 +942,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-datasources_v1beta.json b/discovery/merchantapi-datasources_v1beta.json index c7cc7a7c44..d5bd126782 100644 --- a/discovery/merchantapi-datasources_v1beta.json +++ b/discovery/merchantapi-datasources_v1beta.json @@ -321,7 +321,7 @@ } } }, - "revision": "20260303", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DataSource": { @@ -954,11 +954,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-inventories_v1.json b/discovery/merchantapi-inventories_v1.json index 9e76f5e672..170bf5d060 100644 --- a/discovery/merchantapi-inventories_v1.json +++ b/discovery/merchantapi-inventories_v1.json @@ -300,7 +300,7 @@ } } }, - "revision": "20260408", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Empty": { @@ -686,11 +686,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-inventories_v1beta.json b/discovery/merchantapi-inventories_v1beta.json index 6b1c1fc5d6..a3011ff3eb 100644 --- a/discovery/merchantapi-inventories_v1beta.json +++ b/discovery/merchantapi-inventories_v1beta.json @@ -300,7 +300,7 @@ } } }, - "revision": "20260411", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CustomAttribute": { @@ -610,11 +610,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-issueresolution_v1.json b/discovery/merchantapi-issueresolution_v1.json index 63f80c20ea..51fadeb658 100644 --- a/discovery/merchantapi-issueresolution_v1.json +++ b/discovery/merchantapi-issueresolution_v1.json @@ -268,7 +268,7 @@ } } }, - "revision": "20260429", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Action": { @@ -986,11 +986,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-issueresolution_v1beta.json b/discovery/merchantapi-issueresolution_v1beta.json index aa4989cb50..0b684e4a99 100644 --- a/discovery/merchantapi-issueresolution_v1beta.json +++ b/discovery/merchantapi-issueresolution_v1beta.json @@ -268,7 +268,7 @@ } } }, - "revision": "20260429", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Action": { @@ -986,11 +986,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-lfp_v1.json b/discovery/merchantapi-lfp_v1.json index 683d0b0ce3..6132bf8519 100644 --- a/discovery/merchantapi-lfp_v1.json +++ b/discovery/merchantapi-lfp_v1.json @@ -327,7 +327,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CountrySettings": { @@ -886,11 +886,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-lfp_v1beta.json b/discovery/merchantapi-lfp_v1beta.json index a54a0b5341..e24d39f395 100644 --- a/discovery/merchantapi-lfp_v1beta.json +++ b/discovery/merchantapi-lfp_v1beta.json @@ -327,7 +327,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CountrySettings": { @@ -886,11 +886,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-notifications_v1.json b/discovery/merchantapi-notifications_v1.json index b261037d23..58f8ac7095 100644 --- a/discovery/merchantapi-notifications_v1.json +++ b/discovery/merchantapi-notifications_v1.json @@ -262,7 +262,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Empty": { @@ -467,11 +467,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-notifications_v1beta.json b/discovery/merchantapi-notifications_v1beta.json index 3ba6c77bb1..39efbf6896 100644 --- a/discovery/merchantapi-notifications_v1beta.json +++ b/discovery/merchantapi-notifications_v1beta.json @@ -262,7 +262,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Empty": { @@ -467,11 +467,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-ordertracking_v1.json b/discovery/merchantapi-ordertracking_v1.json index dc92d733b1..8a68edc475 100644 --- a/discovery/merchantapi-ordertracking_v1.json +++ b/discovery/merchantapi-ordertracking_v1.json @@ -147,7 +147,7 @@ } } }, - "revision": "20260221", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DateTime": { @@ -457,11 +457,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-ordertracking_v1beta.json b/discovery/merchantapi-ordertracking_v1beta.json index dfaa2109c5..0d87cdea67 100644 --- a/discovery/merchantapi-ordertracking_v1beta.json +++ b/discovery/merchantapi-ordertracking_v1beta.json @@ -147,7 +147,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "DateTime": { @@ -462,11 +462,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-products_v1.json b/discovery/merchantapi-products_v1.json index f1541f43d5..75103bf5a1 100644 --- a/discovery/merchantapi-products_v1.json +++ b/discovery/merchantapi-products_v1.json @@ -281,7 +281,7 @@ } } }, - "revision": "20260520", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AutomatedDiscounts": { @@ -2657,11 +2657,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-products_v1beta.json b/discovery/merchantapi-products_v1beta.json index dd367a027c..60023be880 100644 --- a/discovery/merchantapi-products_v1beta.json +++ b/discovery/merchantapi-products_v1beta.json @@ -281,7 +281,7 @@ } } }, - "revision": "20260512", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -1602,11 +1602,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-promotions_v1.json b/discovery/merchantapi-promotions_v1.json index ed7aaec0ca..d741b59ff7 100644 --- a/discovery/merchantapi-promotions_v1.json +++ b/discovery/merchantapi-promotions_v1.json @@ -203,7 +203,7 @@ } } }, - "revision": "20260228", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -1015,11 +1015,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-promotions_v1beta.json b/discovery/merchantapi-promotions_v1beta.json index 603ab9852c..0fb1635739 100644 --- a/discovery/merchantapi-promotions_v1beta.json +++ b/discovery/merchantapi-promotions_v1beta.json @@ -203,7 +203,7 @@ } } }, - "revision": "20260228", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "Attributes": { @@ -1015,11 +1015,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-quota_v1.json b/discovery/merchantapi-quota_v1.json index 3cc420e09b..1460f602b6 100644 --- a/discovery/merchantapi-quota_v1.json +++ b/discovery/merchantapi-quota_v1.json @@ -220,7 +220,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "AccountLimit": { @@ -469,11 +469,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-quota_v1beta.json b/discovery/merchantapi-quota_v1beta.json index 18fdd46f36..aa25b21cf3 100644 --- a/discovery/merchantapi-quota_v1beta.json +++ b/discovery/merchantapi-quota_v1beta.json @@ -150,7 +150,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "ListQuotaGroupsResponse": { @@ -340,11 +340,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-reports_v1.json b/discovery/merchantapi-reports_v1.json index 90955e067a..0f3ff9f2cb 100644 --- a/discovery/merchantapi-reports_v1.json +++ b/discovery/merchantapi-reports_v1.json @@ -142,7 +142,7 @@ } } }, - "revision": "20260411", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "BestSellersBrandView": { @@ -1295,11 +1295,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-reports_v1beta.json b/discovery/merchantapi-reports_v1beta.json index 78b4670d19..3fb0125282 100644 --- a/discovery/merchantapi-reports_v1beta.json +++ b/discovery/merchantapi-reports_v1beta.json @@ -142,7 +142,7 @@ } } }, - "revision": "20260411", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "BestSellersBrandView": { @@ -1295,11 +1295,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/merchantapi-reviews_v1beta.json b/discovery/merchantapi-reviews_v1beta.json index 8d65ce9603..f377a4c96f 100644 --- a/discovery/merchantapi-reviews_v1beta.json +++ b/discovery/merchantapi-reviews_v1beta.json @@ -356,7 +356,7 @@ } } }, - "revision": "20260223", + "revision": "20260527", "rootUrl": "https://merchantapi.googleapis.com/", "schemas": { "CustomAttribute": { @@ -1371,11 +1371,13 @@ "description": "The resource that changed, in this case it will always be `Product`.", "enum": [ "RESOURCE_UNSPECIFIED", - "PRODUCT" + "PRODUCT", + "ACCOUNT_SERVICE" ], "enumDescriptions": [ "Unspecified resource", - "Resource type : product" + "Resource type : product", + "Account service" ], "type": "string" } diff --git a/discovery/recaptchaenterprise-v1.json b/discovery/recaptchaenterprise-v1.json index 725b494bf6..27039da805 100644 --- a/discovery/recaptchaenterprise-v1.json +++ b/discovery/recaptchaenterprise-v1.json @@ -786,7 +786,7 @@ } } }, - "revision": "20260505", + "revision": "20260517", "rootUrl": "https://recaptchaenterprise.googleapis.com/", "schemas": { "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessment": { @@ -833,13 +833,15 @@ "RISK_REASON_UNSPECIFIED", "CLIENT_HISTORICAL_BOT_ACTIVITY", "ACCOUNT_IN_LARGE_RELATED_GROUP", - "CLIENT_ACCESSED_MANY_ACCOUNTS" + "CLIENT_ACCESSED_MANY_ACCOUNTS", + "DISPOSABLE_EMAIL_DOMAIN" ], "enumDescriptions": [ "Default unspecified type.", "The client has been observed sending bot-like traffic to this site in the past. This reason incorporates historical reputation and indicates that the client is known to use bots, even if the current request is being made by a human.", "The account is part of a large group of related accounts, indicating that it may be part of a fraudulent network. Related accounts are identified based on having similar traffic patterns and request characteristics.", - "The client has been observed accessing many accounts on this site." + "The client has been observed accessing many accounts on this site.", + "This email domain is a suspected provider of disposable email addresses." ], "readOnly": true, "type": "string" diff --git a/discovery/tagmanager-v2.json b/discovery/tagmanager-v2.json index 7d77edd8cd..678a7adef7 100644 --- a/discovery/tagmanager-v2.json +++ b/discovery/tagmanager-v2.json @@ -3986,7 +3986,7 @@ } } }, - "revision": "20260511", + "revision": "20260527", "rootUrl": "https://tagmanager.googleapis.com/", "schemas": { "Account": { @@ -6593,12 +6593,14 @@ "enum": [ "decimalSeparatorTypeUnspecified", "period", - "comma" + "comma", + "automatic" ], "enumDescriptions": [ "", "The option to convert a variable value to a number with a period as the decimal separator.", - "The option to convert a variable value to a number with a comma as the decimal separator." + "The option to convert a variable value to a number with a comma as the decimal separator.", + "The option to convert a variable value to a number with automatic decimal separator detection." ], "type": "string" }, diff --git a/discovery/vault-v1.json b/discovery/vault-v1.json index 6a227ca855..0d5f149c94 100644 --- a/discovery/vault-v1.json +++ b/discovery/vault-v1.json @@ -1208,7 +1208,7 @@ } } }, - "revision": "20251126", + "revision": "20260528", "rootUrl": "https://vault.googleapis.com/", "schemas": { "AccountCount": { @@ -1352,14 +1352,16 @@ "MBOX", "PST", "ICS", - "XML" + "XML", + "JSON" ], "enumDescriptions": [ "No export format specified.", "Export as MBOX. Only available for Gmail, Groups, Hangouts and Voice.", "Export as PST. Only available for Gmail, Groups, Hangouts, Voice and Calendar.", "Export as ICS. Only available for Calendar.", - "Export as XML. Only available for Gemini." + "Export as XML. Only available for Gemini.", + "Export as JSON. Only available for Gemini in Workpace." ], "type": "string" } @@ -1827,14 +1829,16 @@ "MBOX", "PST", "ICS", - "XML" + "XML", + "JSON" ], "enumDescriptions": [ "No export format specified.", "Export as MBOX. Only available for Gmail, Groups, Hangouts and Voice.", "Export as PST. Only available for Gmail, Groups, Hangouts, Voice and Calendar.", "Export as ICS. Only available for Calendar.", - "Export as XML. Only available for Gemini." + "Export as XML. Only available for Gemini.", + "Export as JSON. Only available for Gemini in Workpace." ], "type": "string" } @@ -1896,14 +1900,16 @@ "MBOX", "PST", "ICS", - "XML" + "XML", + "JSON" ], "enumDescriptions": [ "No export format specified.", "Export as MBOX. Only available for Gmail, Groups, Hangouts and Voice.", "Export as PST. Only available for Gmail, Groups, Hangouts, Voice and Calendar.", "Export as ICS. Only available for Calendar.", - "Export as XML. Only available for Gemini." + "Export as XML. Only available for Gemini.", + "Export as JSON. Only available for Gemini in Workpace." ], "type": "string" } @@ -1921,14 +1927,16 @@ "MBOX", "PST", "ICS", - "XML" + "XML", + "JSON" ], "enumDescriptions": [ "No export format specified.", "Export as MBOX. Only available for Gmail, Groups, Hangouts and Voice.", "Export as PST. Only available for Gmail, Groups, Hangouts, Voice and Calendar.", "Export as ICS. Only available for Calendar.", - "Export as XML. Only available for Gemini." + "Export as XML. Only available for Gemini.", + "Export as JSON. Only available for Gemini in Workpace." ], "type": "string" } @@ -2324,14 +2332,16 @@ "MBOX", "PST", "ICS", - "XML" + "XML", + "JSON" ], "enumDescriptions": [ "No export format specified.", "Export as MBOX. Only available for Gmail, Groups, Hangouts and Voice.", "Export as PST. Only available for Gmail, Groups, Hangouts, Voice and Calendar.", "Export as ICS. Only available for Calendar.", - "Export as XML. Only available for Gemini." + "Export as XML. Only available for Gemini.", + "Export as JSON. Only available for Gemini in Workpace." ], "type": "string" }, @@ -2886,14 +2896,16 @@ "MBOX", "PST", "ICS", - "XML" + "XML", + "JSON" ], "enumDescriptions": [ "No export format specified.", "Export as MBOX. Only available for Gmail, Groups, Hangouts and Voice.", "Export as PST. Only available for Gmail, Groups, Hangouts, Voice and Calendar.", "Export as ICS. Only available for Calendar.", - "Export as XML. Only available for Gemini." + "Export as XML. Only available for Gemini.", + "Export as JSON. Only available for Gemini in Workpace." ], "type": "string" } diff --git a/src/index.ts b/src/index.ts index d87dcd0d81..9f594301ad 100644 --- a/src/index.ts +++ b/src/index.ts @@ -50,7 +50,6 @@ export {alertcenter_v1beta1} from './apis/alertcenter/v1beta1'; export {alloydb_v1} from './apis/alloydb/v1'; export {alloydb_v1alpha} from './apis/alloydb/v1alpha'; export {alloydb_v1beta} from './apis/alloydb/v1beta'; -export {analytics_v3} from './apis/analytics/v3'; export {analyticsadmin_v1alpha} from './apis/analyticsadmin/v1alpha'; export {analyticsadmin_v1beta} from './apis/analyticsadmin/v1beta'; export {analyticsdata_v1alpha} from './apis/analyticsdata/v1alpha';